#include #if defined(__GNUC__) || defined(__clang__) #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wmissing-field-initializers" #endif #ifdef _MSC_VER #pragma optimize("", off) #elif defined(__clang__) #pragma clang optimize off #elif defined(__GNUC__) #pragma GCC optimize ("O0") #endif #define LANGUAGE_VERSION 13 #define STATE_COUNT 5460 #define LARGE_STATE_COUNT 1329 #define SYMBOL_COUNT 392 #define ALIAS_COUNT 4 #define TOKEN_COUNT 165 #define EXTERNAL_TOKEN_COUNT 1 #define FIELD_COUNT 34 #define MAX_ALIAS_SEQUENCE_LENGTH 9 #define PRODUCTION_ID_COUNT 154 enum { sym_identifier = 1, aux_sym_preproc_include_token1 = 2, anon_sym_LF = 3, aux_sym_preproc_def_token1 = 4, anon_sym_LPAREN = 5, anon_sym_DOT_DOT_DOT = 6, anon_sym_COMMA = 7, anon_sym_RPAREN = 8, aux_sym_preproc_if_token1 = 9, aux_sym_preproc_if_token2 = 10, aux_sym_preproc_ifdef_token1 = 11, aux_sym_preproc_ifdef_token2 = 12, aux_sym_preproc_else_token1 = 13, aux_sym_preproc_elif_token1 = 14, sym_preproc_directive = 15, sym_preproc_arg = 16, anon_sym_LPAREN2 = 17, anon_sym_defined = 18, anon_sym_BANG = 19, anon_sym_TILDE = 20, anon_sym_DASH = 21, anon_sym_PLUS = 22, anon_sym_STAR = 23, anon_sym_SLASH = 24, anon_sym_PERCENT = 25, anon_sym_PIPE_PIPE = 26, anon_sym_AMP_AMP = 27, anon_sym_PIPE = 28, anon_sym_CARET = 29, anon_sym_AMP = 30, anon_sym_EQ_EQ = 31, anon_sym_BANG_EQ = 32, anon_sym_GT = 33, anon_sym_GT_EQ = 34, anon_sym_LT_EQ = 35, anon_sym_LT = 36, anon_sym_LT_LT = 37, anon_sym_GT_GT = 38, anon_sym_SEMI = 39, anon_sym_typedef = 40, anon_sym_extern = 41, anon_sym___attribute__ = 42, anon_sym_COLON_COLON = 43, anon_sym_LBRACK_LBRACK = 44, anon_sym_RBRACK_RBRACK = 45, anon_sym___declspec = 46, anon_sym___based = 47, anon_sym___cdecl = 48, anon_sym___clrcall = 49, anon_sym___stdcall = 50, anon_sym___fastcall = 51, anon_sym___thiscall = 52, anon_sym___vectorcall = 53, sym_ms_restrict_modifier = 54, sym_ms_unsigned_ptr_modifier = 55, sym_ms_signed_ptr_modifier = 56, anon_sym__unaligned = 57, anon_sym___unaligned = 58, anon_sym_LBRACE = 59, anon_sym_RBRACE = 60, anon_sym_LBRACK = 61, anon_sym_RBRACK = 62, anon_sym_EQ = 63, anon_sym_static = 64, anon_sym_register = 65, anon_sym_inline = 66, anon_sym_thread_local = 67, anon_sym_const = 68, anon_sym_volatile = 69, anon_sym_restrict = 70, anon_sym__Atomic = 71, anon_sym_mutable = 72, anon_sym_constexpr = 73, anon_sym_signed = 74, anon_sym_unsigned = 75, anon_sym_long = 76, anon_sym_short = 77, sym_primitive_type = 78, anon_sym_enum = 79, anon_sym_class = 80, anon_sym_struct = 81, anon_sym_union = 82, anon_sym_COLON = 83, anon_sym_if = 84, anon_sym_else = 85, anon_sym_switch = 86, anon_sym_case = 87, anon_sym_default = 88, anon_sym_while = 89, anon_sym_do = 90, anon_sym_for = 91, anon_sym_return = 92, anon_sym_break = 93, anon_sym_continue = 94, anon_sym_goto = 95, anon_sym_QMARK = 96, anon_sym_STAR_EQ = 97, anon_sym_SLASH_EQ = 98, anon_sym_PERCENT_EQ = 99, anon_sym_PLUS_EQ = 100, anon_sym_DASH_EQ = 101, anon_sym_LT_LT_EQ = 102, anon_sym_GT_GT_EQ = 103, anon_sym_AMP_EQ = 104, anon_sym_CARET_EQ = 105, anon_sym_PIPE_EQ = 106, anon_sym_DASH_DASH = 107, anon_sym_PLUS_PLUS = 108, anon_sym_sizeof = 109, anon_sym_DOT = 110, anon_sym_DASH_GT = 111, sym_number_literal = 112, anon_sym_L_SQUOTE = 113, anon_sym_u_SQUOTE = 114, anon_sym_U_SQUOTE = 115, anon_sym_u8_SQUOTE = 116, anon_sym_SQUOTE = 117, aux_sym_char_literal_token1 = 118, anon_sym_L_DQUOTE = 119, anon_sym_u_DQUOTE = 120, anon_sym_U_DQUOTE = 121, anon_sym_u8_DQUOTE = 122, anon_sym_DQUOTE = 123, aux_sym_string_literal_token1 = 124, sym_escape_sequence = 125, sym_system_lib_string = 126, sym_true = 127, sym_false = 128, sym_null = 129, sym_comment = 130, anon_sym_decltype = 131, anon_sym_final = 132, anon_sym_override = 133, anon_sym_virtual = 134, anon_sym_explicit = 135, anon_sym_public = 136, anon_sym_private = 137, anon_sym_protected = 138, sym_auto = 139, anon_sym_typename = 140, anon_sym_template = 141, anon_sym_GT2 = 142, anon_sym_operator = 143, anon_sym_delete = 144, anon_sym_friend = 145, anon_sym_noexcept = 146, anon_sym_throw = 147, anon_sym_namespace = 148, anon_sym_using = 149, anon_sym_static_assert = 150, anon_sym_co_return = 151, anon_sym_co_yield = 152, anon_sym_try = 153, anon_sym_catch = 154, anon_sym_co_await = 155, anon_sym_new = 156, anon_sym_DASH_GT_STAR = 157, anon_sym_LPAREN_RPAREN = 158, anon_sym_LBRACK_RBRACK = 159, anon_sym_DQUOTE_DQUOTE = 160, sym_this = 161, sym_nullptr = 162, sym_literal_suffix = 163, sym_raw_string_literal = 164, sym_translation_unit = 165, sym_preproc_include = 166, sym_preproc_def = 167, sym_preproc_function_def = 168, sym_preproc_params = 169, sym_preproc_call = 170, sym_preproc_if = 171, sym_preproc_ifdef = 172, sym_preproc_else = 173, sym_preproc_elif = 174, sym_preproc_if_in_field_declaration_list = 175, sym_preproc_ifdef_in_field_declaration_list = 176, sym_preproc_else_in_field_declaration_list = 177, sym_preproc_elif_in_field_declaration_list = 178, sym__preproc_expression = 179, sym_preproc_parenthesized_expression = 180, sym_preproc_defined = 181, sym_preproc_unary_expression = 182, sym_preproc_call_expression = 183, sym_preproc_argument_list = 184, sym_preproc_binary_expression = 185, sym_function_definition = 186, sym_declaration = 187, sym_type_definition = 188, sym__declaration_modifiers = 189, sym__declaration_specifiers = 190, sym_linkage_specification = 191, sym_attribute_specifier = 192, sym_attribute = 193, sym_attribute_declaration = 194, sym_ms_declspec_modifier = 195, sym_ms_based_modifier = 196, sym_ms_call_modifier = 197, sym_ms_unaligned_ptr_modifier = 198, sym_ms_pointer_modifier = 199, sym_declaration_list = 200, sym__declarator = 201, sym__field_declarator = 202, sym__type_declarator = 203, sym__abstract_declarator = 204, sym_parenthesized_declarator = 205, sym_parenthesized_field_declarator = 206, sym_parenthesized_type_declarator = 207, sym_abstract_parenthesized_declarator = 208, sym_attributed_declarator = 209, sym_attributed_field_declarator = 210, sym_attributed_type_declarator = 211, sym_pointer_declarator = 212, sym_pointer_field_declarator = 213, sym_pointer_type_declarator = 214, sym_abstract_pointer_declarator = 215, sym_function_declarator = 216, sym_function_field_declarator = 217, sym_function_type_declarator = 218, sym_abstract_function_declarator = 219, sym_array_declarator = 220, sym_array_field_declarator = 221, sym_array_type_declarator = 222, sym_abstract_array_declarator = 223, sym_init_declarator = 224, sym_compound_statement = 225, sym_storage_class_specifier = 226, sym_type_qualifier = 227, sym__type_specifier = 228, sym_sized_type_specifier = 229, sym_enum_specifier = 230, sym_enumerator_list = 231, sym_struct_specifier = 232, sym_union_specifier = 233, sym_field_declaration_list = 234, sym__field_declaration_list_item = 235, sym_field_declaration = 236, sym_bitfield_clause = 237, sym_enumerator = 238, sym_parameter_list = 239, sym_parameter_declaration = 240, sym_attributed_statement = 241, sym_attributed_non_case_statement = 242, sym_labeled_statement = 243, sym_expression_statement = 244, sym_if_statement = 245, sym_switch_statement = 246, sym_case_statement = 247, sym_while_statement = 248, sym_do_statement = 249, sym_for_statement = 250, sym_return_statement = 251, sym_break_statement = 252, sym_continue_statement = 253, sym_goto_statement = 254, sym__expression = 255, sym_comma_expression = 256, sym_conditional_expression = 257, sym_assignment_expression = 258, sym_pointer_expression = 259, sym_unary_expression = 260, sym_binary_expression = 261, sym_update_expression = 262, sym_cast_expression = 263, sym_type_descriptor = 264, sym_sizeof_expression = 265, sym_subscript_expression = 266, sym_call_expression = 267, sym_argument_list = 268, sym_field_expression = 269, sym_compound_literal_expression = 270, sym_parenthesized_expression = 271, sym_initializer_list = 272, sym_initializer_pair = 273, sym_subscript_designator = 274, sym_field_designator = 275, sym_char_literal = 276, sym_concatenated_string = 277, sym_string_literal = 278, sym__empty_declaration = 279, sym_decltype = 280, sym_class_specifier = 281, sym__class_name = 282, sym_virtual_specifier = 283, sym_virtual_function_specifier = 284, sym_explicit_function_specifier = 285, sym_base_class_clause = 286, sym__enum_base_clause = 287, sym_dependent_type = 288, sym_template_declaration = 289, sym_template_instantiation = 290, sym_template_parameter_list = 291, sym_type_parameter_declaration = 292, sym_variadic_type_parameter_declaration = 293, sym_optional_type_parameter_declaration = 294, sym_template_template_parameter_declaration = 295, sym_optional_parameter_declaration = 296, sym_variadic_parameter_declaration = 297, sym_variadic_declarator = 298, sym_variadic_reference_declarator = 299, sym_operator_cast = 300, sym_field_initializer_list = 301, sym_field_initializer = 302, sym_inline_method_definition = 303, sym__constructor_specifiers = 304, sym_operator_cast_definition = 305, sym_operator_cast_declaration = 306, sym_constructor_or_destructor_definition = 307, sym_constructor_or_destructor_declaration = 308, sym_default_method_clause = 309, sym_delete_method_clause = 310, sym_friend_declaration = 311, sym_access_specifier = 312, sym_reference_declarator = 313, sym_reference_field_declarator = 314, sym_abstract_reference_declarator = 315, sym_structured_binding_declarator = 316, sym_ref_qualifier = 317, sym_trailing_return_type = 318, sym_noexcept = 319, sym_throw_specifier = 320, sym_template_type = 321, sym_template_method = 322, sym_template_function = 323, sym_template_argument_list = 324, sym_namespace_definition = 325, sym_namespace_alias_definition = 326, sym_namespace_definition_name = 327, sym_using_declaration = 328, sym_alias_declaration = 329, sym_static_assert_declaration = 330, sym_condition_clause = 331, sym_condition_declaration = 332, sym_for_range_loop = 333, sym_co_return_statement = 334, sym_co_yield_statement = 335, sym_throw_statement = 336, sym_try_statement = 337, sym_catch_clause = 338, sym_co_await_expression = 339, sym_new_expression = 340, sym_new_declarator = 341, sym_delete_expression = 342, sym_lambda_expression = 343, sym_lambda_capture_specifier = 344, sym_lambda_default_capture = 345, sym_parameter_pack_expansion = 346, sym_type_parameter_pack_expansion = 347, sym_destructor_name = 348, sym_dependent_identifier = 349, sym_dependent_field_identifier = 350, sym_dependent_type_identifier = 351, sym__scope_resolution = 352, sym_qualified_field_identifier = 353, sym_qualified_identifier = 354, sym_qualified_type_identifier = 355, sym_qualified_operator_cast_identifier = 356, sym_operator_name = 357, sym_user_defined_literal = 358, aux_sym_translation_unit_repeat1 = 359, aux_sym_preproc_params_repeat1 = 360, aux_sym_preproc_if_in_field_declaration_list_repeat1 = 361, aux_sym_preproc_argument_list_repeat1 = 362, aux_sym_declaration_repeat1 = 363, aux_sym_type_definition_repeat1 = 364, aux_sym_type_definition_repeat2 = 365, aux_sym__declaration_specifiers_repeat1 = 366, aux_sym_attribute_declaration_repeat1 = 367, aux_sym_attributed_declarator_repeat1 = 368, aux_sym_pointer_declarator_repeat1 = 369, aux_sym_function_declarator_repeat1 = 370, aux_sym_function_declarator_repeat2 = 371, aux_sym_abstract_function_declarator_repeat1 = 372, aux_sym_sized_type_specifier_repeat1 = 373, aux_sym_enumerator_list_repeat1 = 374, aux_sym_field_declaration_repeat1 = 375, aux_sym_parameter_list_repeat1 = 376, aux_sym_case_statement_repeat1 = 377, aux_sym_argument_list_repeat1 = 378, aux_sym_initializer_list_repeat1 = 379, aux_sym_initializer_pair_repeat1 = 380, aux_sym_concatenated_string_repeat1 = 381, aux_sym_string_literal_repeat1 = 382, aux_sym_base_class_clause_repeat1 = 383, aux_sym_template_parameter_list_repeat1 = 384, aux_sym_field_initializer_list_repeat1 = 385, aux_sym_operator_cast_definition_repeat1 = 386, aux_sym_structured_binding_declarator_repeat1 = 387, aux_sym_throw_specifier_repeat1 = 388, aux_sym_template_argument_list_repeat1 = 389, aux_sym_try_statement_repeat1 = 390, aux_sym_lambda_capture_specifier_repeat1 = 391, alias_sym_field_identifier = 392, alias_sym_namespace_identifier = 393, alias_sym_statement_identifier = 394, alias_sym_type_identifier = 395, }; static const char * const ts_symbol_names[] = { [ts_builtin_sym_end] = "end", [sym_identifier] = "identifier", [aux_sym_preproc_include_token1] = "#include", [anon_sym_LF] = "\n", [aux_sym_preproc_def_token1] = "#define", [anon_sym_LPAREN] = "(", [anon_sym_DOT_DOT_DOT] = "...", [anon_sym_COMMA] = ",", [anon_sym_RPAREN] = ")", [aux_sym_preproc_if_token1] = "#if", [aux_sym_preproc_if_token2] = "#endif", [aux_sym_preproc_ifdef_token1] = "#ifdef", [aux_sym_preproc_ifdef_token2] = "#ifndef", [aux_sym_preproc_else_token1] = "#else", [aux_sym_preproc_elif_token1] = "#elif", [sym_preproc_directive] = "preproc_directive", [sym_preproc_arg] = "preproc_arg", [anon_sym_LPAREN2] = "(", [anon_sym_defined] = "defined", [anon_sym_BANG] = "!", [anon_sym_TILDE] = "~", [anon_sym_DASH] = "-", [anon_sym_PLUS] = "+", [anon_sym_STAR] = "*", [anon_sym_SLASH] = "/", [anon_sym_PERCENT] = "%", [anon_sym_PIPE_PIPE] = "||", [anon_sym_AMP_AMP] = "&&", [anon_sym_PIPE] = "|", [anon_sym_CARET] = "^", [anon_sym_AMP] = "&", [anon_sym_EQ_EQ] = "==", [anon_sym_BANG_EQ] = "!=", [anon_sym_GT] = ">", [anon_sym_GT_EQ] = ">=", [anon_sym_LT_EQ] = "<=", [anon_sym_LT] = "<", [anon_sym_LT_LT] = "<<", [anon_sym_GT_GT] = ">>", [anon_sym_SEMI] = ";", [anon_sym_typedef] = "typedef", [anon_sym_extern] = "extern", [anon_sym___attribute__] = "__attribute__", [anon_sym_COLON_COLON] = "::", [anon_sym_LBRACK_LBRACK] = "[[", [anon_sym_RBRACK_RBRACK] = "]]", [anon_sym___declspec] = "__declspec", [anon_sym___based] = "__based", [anon_sym___cdecl] = "__cdecl", [anon_sym___clrcall] = "__clrcall", [anon_sym___stdcall] = "__stdcall", [anon_sym___fastcall] = "__fastcall", [anon_sym___thiscall] = "__thiscall", [anon_sym___vectorcall] = "__vectorcall", [sym_ms_restrict_modifier] = "ms_restrict_modifier", [sym_ms_unsigned_ptr_modifier] = "ms_unsigned_ptr_modifier", [sym_ms_signed_ptr_modifier] = "ms_signed_ptr_modifier", [anon_sym__unaligned] = "_unaligned", [anon_sym___unaligned] = "__unaligned", [anon_sym_LBRACE] = "{", [anon_sym_RBRACE] = "}", [anon_sym_LBRACK] = "[", [anon_sym_RBRACK] = "]", [anon_sym_EQ] = "=", [anon_sym_static] = "static", [anon_sym_register] = "register", [anon_sym_inline] = "inline", [anon_sym_thread_local] = "thread_local", [anon_sym_const] = "const", [anon_sym_volatile] = "volatile", [anon_sym_restrict] = "restrict", [anon_sym__Atomic] = "_Atomic", [anon_sym_mutable] = "mutable", [anon_sym_constexpr] = "constexpr", [anon_sym_signed] = "signed", [anon_sym_unsigned] = "unsigned", [anon_sym_long] = "long", [anon_sym_short] = "short", [sym_primitive_type] = "primitive_type", [anon_sym_enum] = "enum", [anon_sym_class] = "class", [anon_sym_struct] = "struct", [anon_sym_union] = "union", [anon_sym_COLON] = ":", [anon_sym_if] = "if", [anon_sym_else] = "else", [anon_sym_switch] = "switch", [anon_sym_case] = "case", [anon_sym_default] = "default", [anon_sym_while] = "while", [anon_sym_do] = "do", [anon_sym_for] = "for", [anon_sym_return] = "return", [anon_sym_break] = "break", [anon_sym_continue] = "continue", [anon_sym_goto] = "goto", [anon_sym_QMARK] = "\?", [anon_sym_STAR_EQ] = "*=", [anon_sym_SLASH_EQ] = "/=", [anon_sym_PERCENT_EQ] = "%=", [anon_sym_PLUS_EQ] = "+=", [anon_sym_DASH_EQ] = "-=", [anon_sym_LT_LT_EQ] = "<<=", [anon_sym_GT_GT_EQ] = ">>=", [anon_sym_AMP_EQ] = "&=", [anon_sym_CARET_EQ] = "^=", [anon_sym_PIPE_EQ] = "|=", [anon_sym_DASH_DASH] = "--", [anon_sym_PLUS_PLUS] = "++", [anon_sym_sizeof] = "sizeof", [anon_sym_DOT] = ".", [anon_sym_DASH_GT] = "->", [sym_number_literal] = "number_literal", [anon_sym_L_SQUOTE] = "L'", [anon_sym_u_SQUOTE] = "u'", [anon_sym_U_SQUOTE] = "U'", [anon_sym_u8_SQUOTE] = "u8'", [anon_sym_SQUOTE] = "'", [aux_sym_char_literal_token1] = "char_literal_token1", [anon_sym_L_DQUOTE] = "L\"", [anon_sym_u_DQUOTE] = "u\"", [anon_sym_U_DQUOTE] = "U\"", [anon_sym_u8_DQUOTE] = "u8\"", [anon_sym_DQUOTE] = "\"", [aux_sym_string_literal_token1] = "string_literal_token1", [sym_escape_sequence] = "escape_sequence", [sym_system_lib_string] = "system_lib_string", [sym_true] = "true", [sym_false] = "false", [sym_null] = "null", [sym_comment] = "comment", [anon_sym_decltype] = "decltype", [anon_sym_final] = "final", [anon_sym_override] = "override", [anon_sym_virtual] = "virtual", [anon_sym_explicit] = "explicit", [anon_sym_public] = "public", [anon_sym_private] = "private", [anon_sym_protected] = "protected", [sym_auto] = "auto", [anon_sym_typename] = "typename", [anon_sym_template] = "template", [anon_sym_GT2] = ">", [anon_sym_operator] = "operator", [anon_sym_delete] = "delete", [anon_sym_friend] = "friend", [anon_sym_noexcept] = "noexcept", [anon_sym_throw] = "throw", [anon_sym_namespace] = "namespace", [anon_sym_using] = "using", [anon_sym_static_assert] = "static_assert", [anon_sym_co_return] = "co_return", [anon_sym_co_yield] = "co_yield", [anon_sym_try] = "try", [anon_sym_catch] = "catch", [anon_sym_co_await] = "co_await", [anon_sym_new] = "new", [anon_sym_DASH_GT_STAR] = "->*", [anon_sym_LPAREN_RPAREN] = "()", [anon_sym_LBRACK_RBRACK] = "[]", [anon_sym_DQUOTE_DQUOTE] = "\"\"", [sym_this] = "this", [sym_nullptr] = "nullptr", [sym_literal_suffix] = "literal_suffix", [sym_raw_string_literal] = "raw_string_literal", [sym_translation_unit] = "translation_unit", [sym_preproc_include] = "preproc_include", [sym_preproc_def] = "preproc_def", [sym_preproc_function_def] = "preproc_function_def", [sym_preproc_params] = "preproc_params", [sym_preproc_call] = "preproc_call", [sym_preproc_if] = "preproc_if", [sym_preproc_ifdef] = "preproc_ifdef", [sym_preproc_else] = "preproc_else", [sym_preproc_elif] = "preproc_elif", [sym_preproc_if_in_field_declaration_list] = "preproc_if", [sym_preproc_ifdef_in_field_declaration_list] = "preproc_ifdef", [sym_preproc_else_in_field_declaration_list] = "preproc_else", [sym_preproc_elif_in_field_declaration_list] = "preproc_elif", [sym__preproc_expression] = "_preproc_expression", [sym_preproc_parenthesized_expression] = "parenthesized_expression", [sym_preproc_defined] = "preproc_defined", [sym_preproc_unary_expression] = "unary_expression", [sym_preproc_call_expression] = "call_expression", [sym_preproc_argument_list] = "argument_list", [sym_preproc_binary_expression] = "binary_expression", [sym_function_definition] = "function_definition", [sym_declaration] = "declaration", [sym_type_definition] = "type_definition", [sym__declaration_modifiers] = "_declaration_modifiers", [sym__declaration_specifiers] = "_declaration_specifiers", [sym_linkage_specification] = "linkage_specification", [sym_attribute_specifier] = "attribute_specifier", [sym_attribute] = "attribute", [sym_attribute_declaration] = "attribute_declaration", [sym_ms_declspec_modifier] = "ms_declspec_modifier", [sym_ms_based_modifier] = "ms_based_modifier", [sym_ms_call_modifier] = "ms_call_modifier", [sym_ms_unaligned_ptr_modifier] = "ms_unaligned_ptr_modifier", [sym_ms_pointer_modifier] = "ms_pointer_modifier", [sym_declaration_list] = "declaration_list", [sym__declarator] = "_declarator", [sym__field_declarator] = "_field_declarator", [sym__type_declarator] = "_type_declarator", [sym__abstract_declarator] = "_abstract_declarator", [sym_parenthesized_declarator] = "parenthesized_declarator", [sym_parenthesized_field_declarator] = "parenthesized_declarator", [sym_parenthesized_type_declarator] = "parenthesized_declarator", [sym_abstract_parenthesized_declarator] = "abstract_parenthesized_declarator", [sym_attributed_declarator] = "attributed_declarator", [sym_attributed_field_declarator] = "attributed_declarator", [sym_attributed_type_declarator] = "attributed_declarator", [sym_pointer_declarator] = "pointer_declarator", [sym_pointer_field_declarator] = "pointer_declarator", [sym_pointer_type_declarator] = "pointer_declarator", [sym_abstract_pointer_declarator] = "abstract_pointer_declarator", [sym_function_declarator] = "function_declarator", [sym_function_field_declarator] = "function_declarator", [sym_function_type_declarator] = "function_declarator", [sym_abstract_function_declarator] = "abstract_function_declarator", [sym_array_declarator] = "array_declarator", [sym_array_field_declarator] = "array_declarator", [sym_array_type_declarator] = "array_declarator", [sym_abstract_array_declarator] = "abstract_array_declarator", [sym_init_declarator] = "init_declarator", [sym_compound_statement] = "compound_statement", [sym_storage_class_specifier] = "storage_class_specifier", [sym_type_qualifier] = "type_qualifier", [sym__type_specifier] = "_type_specifier", [sym_sized_type_specifier] = "sized_type_specifier", [sym_enum_specifier] = "enum_specifier", [sym_enumerator_list] = "enumerator_list", [sym_struct_specifier] = "struct_specifier", [sym_union_specifier] = "union_specifier", [sym_field_declaration_list] = "field_declaration_list", [sym__field_declaration_list_item] = "_field_declaration_list_item", [sym_field_declaration] = "field_declaration", [sym_bitfield_clause] = "bitfield_clause", [sym_enumerator] = "enumerator", [sym_parameter_list] = "parameter_list", [sym_parameter_declaration] = "parameter_declaration", [sym_attributed_statement] = "attributed_statement", [sym_attributed_non_case_statement] = "attributed_statement", [sym_labeled_statement] = "labeled_statement", [sym_expression_statement] = "expression_statement", [sym_if_statement] = "if_statement", [sym_switch_statement] = "switch_statement", [sym_case_statement] = "case_statement", [sym_while_statement] = "while_statement", [sym_do_statement] = "do_statement", [sym_for_statement] = "for_statement", [sym_return_statement] = "return_statement", [sym_break_statement] = "break_statement", [sym_continue_statement] = "continue_statement", [sym_goto_statement] = "goto_statement", [sym__expression] = "_expression", [sym_comma_expression] = "comma_expression", [sym_conditional_expression] = "conditional_expression", [sym_assignment_expression] = "assignment_expression", [sym_pointer_expression] = "pointer_expression", [sym_unary_expression] = "unary_expression", [sym_binary_expression] = "binary_expression", [sym_update_expression] = "update_expression", [sym_cast_expression] = "cast_expression", [sym_type_descriptor] = "type_descriptor", [sym_sizeof_expression] = "sizeof_expression", [sym_subscript_expression] = "subscript_expression", [sym_call_expression] = "call_expression", [sym_argument_list] = "argument_list", [sym_field_expression] = "field_expression", [sym_compound_literal_expression] = "compound_literal_expression", [sym_parenthesized_expression] = "parenthesized_expression", [sym_initializer_list] = "initializer_list", [sym_initializer_pair] = "initializer_pair", [sym_subscript_designator] = "subscript_designator", [sym_field_designator] = "field_designator", [sym_char_literal] = "char_literal", [sym_concatenated_string] = "concatenated_string", [sym_string_literal] = "string_literal", [sym__empty_declaration] = "_empty_declaration", [sym_decltype] = "decltype", [sym_class_specifier] = "class_specifier", [sym__class_name] = "_class_name", [sym_virtual_specifier] = "virtual_specifier", [sym_virtual_function_specifier] = "virtual_function_specifier", [sym_explicit_function_specifier] = "explicit_function_specifier", [sym_base_class_clause] = "base_class_clause", [sym__enum_base_clause] = "_enum_base_clause", [sym_dependent_type] = "dependent_type", [sym_template_declaration] = "template_declaration", [sym_template_instantiation] = "template_instantiation", [sym_template_parameter_list] = "template_parameter_list", [sym_type_parameter_declaration] = "type_parameter_declaration", [sym_variadic_type_parameter_declaration] = "variadic_type_parameter_declaration", [sym_optional_type_parameter_declaration] = "optional_type_parameter_declaration", [sym_template_template_parameter_declaration] = "template_template_parameter_declaration", [sym_optional_parameter_declaration] = "optional_parameter_declaration", [sym_variadic_parameter_declaration] = "variadic_parameter_declaration", [sym_variadic_declarator] = "variadic_declarator", [sym_variadic_reference_declarator] = "reference_declarator", [sym_operator_cast] = "operator_cast", [sym_field_initializer_list] = "field_initializer_list", [sym_field_initializer] = "field_initializer", [sym_inline_method_definition] = "function_definition", [sym__constructor_specifiers] = "_constructor_specifiers", [sym_operator_cast_definition] = "function_definition", [sym_operator_cast_declaration] = "declaration", [sym_constructor_or_destructor_definition] = "function_definition", [sym_constructor_or_destructor_declaration] = "declaration", [sym_default_method_clause] = "default_method_clause", [sym_delete_method_clause] = "delete_method_clause", [sym_friend_declaration] = "friend_declaration", [sym_access_specifier] = "access_specifier", [sym_reference_declarator] = "reference_declarator", [sym_reference_field_declarator] = "reference_declarator", [sym_abstract_reference_declarator] = "abstract_reference_declarator", [sym_structured_binding_declarator] = "structured_binding_declarator", [sym_ref_qualifier] = "ref_qualifier", [sym_trailing_return_type] = "trailing_return_type", [sym_noexcept] = "noexcept", [sym_throw_specifier] = "throw_specifier", [sym_template_type] = "template_type", [sym_template_method] = "template_method", [sym_template_function] = "template_function", [sym_template_argument_list] = "template_argument_list", [sym_namespace_definition] = "namespace_definition", [sym_namespace_alias_definition] = "namespace_alias_definition", [sym_namespace_definition_name] = "namespace_definition_name", [sym_using_declaration] = "using_declaration", [sym_alias_declaration] = "alias_declaration", [sym_static_assert_declaration] = "static_assert_declaration", [sym_condition_clause] = "condition_clause", [sym_condition_declaration] = "declaration", [sym_for_range_loop] = "for_range_loop", [sym_co_return_statement] = "co_return_statement", [sym_co_yield_statement] = "co_yield_statement", [sym_throw_statement] = "throw_statement", [sym_try_statement] = "try_statement", [sym_catch_clause] = "catch_clause", [sym_co_await_expression] = "co_await_expression", [sym_new_expression] = "new_expression", [sym_new_declarator] = "new_declarator", [sym_delete_expression] = "delete_expression", [sym_lambda_expression] = "lambda_expression", [sym_lambda_capture_specifier] = "lambda_capture_specifier", [sym_lambda_default_capture] = "lambda_default_capture", [sym_parameter_pack_expansion] = "parameter_pack_expansion", [sym_type_parameter_pack_expansion] = "parameter_pack_expansion", [sym_destructor_name] = "destructor_name", [sym_dependent_identifier] = "dependent_name", [sym_dependent_field_identifier] = "dependent_name", [sym_dependent_type_identifier] = "dependent_name", [sym__scope_resolution] = "_scope_resolution", [sym_qualified_field_identifier] = "qualified_identifier", [sym_qualified_identifier] = "qualified_identifier", [sym_qualified_type_identifier] = "qualified_identifier", [sym_qualified_operator_cast_identifier] = "qualified_identifier", [sym_operator_name] = "operator_name", [sym_user_defined_literal] = "user_defined_literal", [aux_sym_translation_unit_repeat1] = "translation_unit_repeat1", [aux_sym_preproc_params_repeat1] = "preproc_params_repeat1", [aux_sym_preproc_if_in_field_declaration_list_repeat1] = "preproc_if_in_field_declaration_list_repeat1", [aux_sym_preproc_argument_list_repeat1] = "preproc_argument_list_repeat1", [aux_sym_declaration_repeat1] = "declaration_repeat1", [aux_sym_type_definition_repeat1] = "type_definition_repeat1", [aux_sym_type_definition_repeat2] = "type_definition_repeat2", [aux_sym__declaration_specifiers_repeat1] = "_declaration_specifiers_repeat1", [aux_sym_attribute_declaration_repeat1] = "attribute_declaration_repeat1", [aux_sym_attributed_declarator_repeat1] = "attributed_declarator_repeat1", [aux_sym_pointer_declarator_repeat1] = "pointer_declarator_repeat1", [aux_sym_function_declarator_repeat1] = "function_declarator_repeat1", [aux_sym_function_declarator_repeat2] = "function_declarator_repeat2", [aux_sym_abstract_function_declarator_repeat1] = "abstract_function_declarator_repeat1", [aux_sym_sized_type_specifier_repeat1] = "sized_type_specifier_repeat1", [aux_sym_enumerator_list_repeat1] = "enumerator_list_repeat1", [aux_sym_field_declaration_repeat1] = "field_declaration_repeat1", [aux_sym_parameter_list_repeat1] = "parameter_list_repeat1", [aux_sym_case_statement_repeat1] = "case_statement_repeat1", [aux_sym_argument_list_repeat1] = "argument_list_repeat1", [aux_sym_initializer_list_repeat1] = "initializer_list_repeat1", [aux_sym_initializer_pair_repeat1] = "initializer_pair_repeat1", [aux_sym_concatenated_string_repeat1] = "concatenated_string_repeat1", [aux_sym_string_literal_repeat1] = "string_literal_repeat1", [aux_sym_base_class_clause_repeat1] = "base_class_clause_repeat1", [aux_sym_template_parameter_list_repeat1] = "template_parameter_list_repeat1", [aux_sym_field_initializer_list_repeat1] = "field_initializer_list_repeat1", [aux_sym_operator_cast_definition_repeat1] = "operator_cast_definition_repeat1", [aux_sym_structured_binding_declarator_repeat1] = "structured_binding_declarator_repeat1", [aux_sym_throw_specifier_repeat1] = "throw_specifier_repeat1", [aux_sym_template_argument_list_repeat1] = "template_argument_list_repeat1", [aux_sym_try_statement_repeat1] = "try_statement_repeat1", [aux_sym_lambda_capture_specifier_repeat1] = "lambda_capture_specifier_repeat1", [alias_sym_field_identifier] = "field_identifier", [alias_sym_namespace_identifier] = "namespace_identifier", [alias_sym_statement_identifier] = "statement_identifier", [alias_sym_type_identifier] = "type_identifier", }; static const TSSymbol ts_symbol_map[] = { [ts_builtin_sym_end] = ts_builtin_sym_end, [sym_identifier] = sym_identifier, [aux_sym_preproc_include_token1] = aux_sym_preproc_include_token1, [anon_sym_LF] = anon_sym_LF, [aux_sym_preproc_def_token1] = aux_sym_preproc_def_token1, [anon_sym_LPAREN] = anon_sym_LPAREN, [anon_sym_DOT_DOT_DOT] = anon_sym_DOT_DOT_DOT, [anon_sym_COMMA] = anon_sym_COMMA, [anon_sym_RPAREN] = anon_sym_RPAREN, [aux_sym_preproc_if_token1] = aux_sym_preproc_if_token1, [aux_sym_preproc_if_token2] = aux_sym_preproc_if_token2, [aux_sym_preproc_ifdef_token1] = aux_sym_preproc_ifdef_token1, [aux_sym_preproc_ifdef_token2] = aux_sym_preproc_ifdef_token2, [aux_sym_preproc_else_token1] = aux_sym_preproc_else_token1, [aux_sym_preproc_elif_token1] = aux_sym_preproc_elif_token1, [sym_preproc_directive] = sym_preproc_directive, [sym_preproc_arg] = sym_preproc_arg, [anon_sym_LPAREN2] = anon_sym_LPAREN, [anon_sym_defined] = anon_sym_defined, [anon_sym_BANG] = anon_sym_BANG, [anon_sym_TILDE] = anon_sym_TILDE, [anon_sym_DASH] = anon_sym_DASH, [anon_sym_PLUS] = anon_sym_PLUS, [anon_sym_STAR] = anon_sym_STAR, [anon_sym_SLASH] = anon_sym_SLASH, [anon_sym_PERCENT] = anon_sym_PERCENT, [anon_sym_PIPE_PIPE] = anon_sym_PIPE_PIPE, [anon_sym_AMP_AMP] = anon_sym_AMP_AMP, [anon_sym_PIPE] = anon_sym_PIPE, [anon_sym_CARET] = anon_sym_CARET, [anon_sym_AMP] = anon_sym_AMP, [anon_sym_EQ_EQ] = anon_sym_EQ_EQ, [anon_sym_BANG_EQ] = anon_sym_BANG_EQ, [anon_sym_GT] = anon_sym_GT, [anon_sym_GT_EQ] = anon_sym_GT_EQ, [anon_sym_LT_EQ] = anon_sym_LT_EQ, [anon_sym_LT] = anon_sym_LT, [anon_sym_LT_LT] = anon_sym_LT_LT, [anon_sym_GT_GT] = anon_sym_GT_GT, [anon_sym_SEMI] = anon_sym_SEMI, [anon_sym_typedef] = anon_sym_typedef, [anon_sym_extern] = anon_sym_extern, [anon_sym___attribute__] = anon_sym___attribute__, [anon_sym_COLON_COLON] = anon_sym_COLON_COLON, [anon_sym_LBRACK_LBRACK] = anon_sym_LBRACK_LBRACK, [anon_sym_RBRACK_RBRACK] = anon_sym_RBRACK_RBRACK, [anon_sym___declspec] = anon_sym___declspec, [anon_sym___based] = anon_sym___based, [anon_sym___cdecl] = anon_sym___cdecl, [anon_sym___clrcall] = anon_sym___clrcall, [anon_sym___stdcall] = anon_sym___stdcall, [anon_sym___fastcall] = anon_sym___fastcall, [anon_sym___thiscall] = anon_sym___thiscall, [anon_sym___vectorcall] = anon_sym___vectorcall, [sym_ms_restrict_modifier] = sym_ms_restrict_modifier, [sym_ms_unsigned_ptr_modifier] = sym_ms_unsigned_ptr_modifier, [sym_ms_signed_ptr_modifier] = sym_ms_signed_ptr_modifier, [anon_sym__unaligned] = anon_sym__unaligned, [anon_sym___unaligned] = anon_sym___unaligned, [anon_sym_LBRACE] = anon_sym_LBRACE, [anon_sym_RBRACE] = anon_sym_RBRACE, [anon_sym_LBRACK] = anon_sym_LBRACK, [anon_sym_RBRACK] = anon_sym_RBRACK, [anon_sym_EQ] = anon_sym_EQ, [anon_sym_static] = anon_sym_static, [anon_sym_register] = anon_sym_register, [anon_sym_inline] = anon_sym_inline, [anon_sym_thread_local] = anon_sym_thread_local, [anon_sym_const] = anon_sym_const, [anon_sym_volatile] = anon_sym_volatile, [anon_sym_restrict] = anon_sym_restrict, [anon_sym__Atomic] = anon_sym__Atomic, [anon_sym_mutable] = anon_sym_mutable, [anon_sym_constexpr] = anon_sym_constexpr, [anon_sym_signed] = anon_sym_signed, [anon_sym_unsigned] = anon_sym_unsigned, [anon_sym_long] = anon_sym_long, [anon_sym_short] = anon_sym_short, [sym_primitive_type] = sym_primitive_type, [anon_sym_enum] = anon_sym_enum, [anon_sym_class] = anon_sym_class, [anon_sym_struct] = anon_sym_struct, [anon_sym_union] = anon_sym_union, [anon_sym_COLON] = anon_sym_COLON, [anon_sym_if] = anon_sym_if, [anon_sym_else] = anon_sym_else, [anon_sym_switch] = anon_sym_switch, [anon_sym_case] = anon_sym_case, [anon_sym_default] = anon_sym_default, [anon_sym_while] = anon_sym_while, [anon_sym_do] = anon_sym_do, [anon_sym_for] = anon_sym_for, [anon_sym_return] = anon_sym_return, [anon_sym_break] = anon_sym_break, [anon_sym_continue] = anon_sym_continue, [anon_sym_goto] = anon_sym_goto, [anon_sym_QMARK] = anon_sym_QMARK, [anon_sym_STAR_EQ] = anon_sym_STAR_EQ, [anon_sym_SLASH_EQ] = anon_sym_SLASH_EQ, [anon_sym_PERCENT_EQ] = anon_sym_PERCENT_EQ, [anon_sym_PLUS_EQ] = anon_sym_PLUS_EQ, [anon_sym_DASH_EQ] = anon_sym_DASH_EQ, [anon_sym_LT_LT_EQ] = anon_sym_LT_LT_EQ, [anon_sym_GT_GT_EQ] = anon_sym_GT_GT_EQ, [anon_sym_AMP_EQ] = anon_sym_AMP_EQ, [anon_sym_CARET_EQ] = anon_sym_CARET_EQ, [anon_sym_PIPE_EQ] = anon_sym_PIPE_EQ, [anon_sym_DASH_DASH] = anon_sym_DASH_DASH, [anon_sym_PLUS_PLUS] = anon_sym_PLUS_PLUS, [anon_sym_sizeof] = anon_sym_sizeof, [anon_sym_DOT] = anon_sym_DOT, [anon_sym_DASH_GT] = anon_sym_DASH_GT, [sym_number_literal] = sym_number_literal, [anon_sym_L_SQUOTE] = anon_sym_L_SQUOTE, [anon_sym_u_SQUOTE] = anon_sym_u_SQUOTE, [anon_sym_U_SQUOTE] = anon_sym_U_SQUOTE, [anon_sym_u8_SQUOTE] = anon_sym_u8_SQUOTE, [anon_sym_SQUOTE] = anon_sym_SQUOTE, [aux_sym_char_literal_token1] = aux_sym_char_literal_token1, [anon_sym_L_DQUOTE] = anon_sym_L_DQUOTE, [anon_sym_u_DQUOTE] = anon_sym_u_DQUOTE, [anon_sym_U_DQUOTE] = anon_sym_U_DQUOTE, [anon_sym_u8_DQUOTE] = anon_sym_u8_DQUOTE, [anon_sym_DQUOTE] = anon_sym_DQUOTE, [aux_sym_string_literal_token1] = aux_sym_string_literal_token1, [sym_escape_sequence] = sym_escape_sequence, [sym_system_lib_string] = sym_system_lib_string, [sym_true] = sym_true, [sym_false] = sym_false, [sym_null] = sym_null, [sym_comment] = sym_comment, [anon_sym_decltype] = anon_sym_decltype, [anon_sym_final] = anon_sym_final, [anon_sym_override] = anon_sym_override, [anon_sym_virtual] = anon_sym_virtual, [anon_sym_explicit] = anon_sym_explicit, [anon_sym_public] = anon_sym_public, [anon_sym_private] = anon_sym_private, [anon_sym_protected] = anon_sym_protected, [sym_auto] = sym_auto, [anon_sym_typename] = anon_sym_typename, [anon_sym_template] = anon_sym_template, [anon_sym_GT2] = anon_sym_GT, [anon_sym_operator] = anon_sym_operator, [anon_sym_delete] = anon_sym_delete, [anon_sym_friend] = anon_sym_friend, [anon_sym_noexcept] = anon_sym_noexcept, [anon_sym_throw] = anon_sym_throw, [anon_sym_namespace] = anon_sym_namespace, [anon_sym_using] = anon_sym_using, [anon_sym_static_assert] = anon_sym_static_assert, [anon_sym_co_return] = anon_sym_co_return, [anon_sym_co_yield] = anon_sym_co_yield, [anon_sym_try] = anon_sym_try, [anon_sym_catch] = anon_sym_catch, [anon_sym_co_await] = anon_sym_co_await, [anon_sym_new] = anon_sym_new, [anon_sym_DASH_GT_STAR] = anon_sym_DASH_GT_STAR, [anon_sym_LPAREN_RPAREN] = anon_sym_LPAREN_RPAREN, [anon_sym_LBRACK_RBRACK] = anon_sym_LBRACK_RBRACK, [anon_sym_DQUOTE_DQUOTE] = anon_sym_DQUOTE_DQUOTE, [sym_this] = sym_this, [sym_nullptr] = sym_nullptr, [sym_literal_suffix] = sym_literal_suffix, [sym_raw_string_literal] = sym_raw_string_literal, [sym_translation_unit] = sym_translation_unit, [sym_preproc_include] = sym_preproc_include, [sym_preproc_def] = sym_preproc_def, [sym_preproc_function_def] = sym_preproc_function_def, [sym_preproc_params] = sym_preproc_params, [sym_preproc_call] = sym_preproc_call, [sym_preproc_if] = sym_preproc_if, [sym_preproc_ifdef] = sym_preproc_ifdef, [sym_preproc_else] = sym_preproc_else, [sym_preproc_elif] = sym_preproc_elif, [sym_preproc_if_in_field_declaration_list] = sym_preproc_if, [sym_preproc_ifdef_in_field_declaration_list] = sym_preproc_ifdef, [sym_preproc_else_in_field_declaration_list] = sym_preproc_else, [sym_preproc_elif_in_field_declaration_list] = sym_preproc_elif, [sym__preproc_expression] = sym__preproc_expression, [sym_preproc_parenthesized_expression] = sym_parenthesized_expression, [sym_preproc_defined] = sym_preproc_defined, [sym_preproc_unary_expression] = sym_unary_expression, [sym_preproc_call_expression] = sym_call_expression, [sym_preproc_argument_list] = sym_argument_list, [sym_preproc_binary_expression] = sym_binary_expression, [sym_function_definition] = sym_function_definition, [sym_declaration] = sym_declaration, [sym_type_definition] = sym_type_definition, [sym__declaration_modifiers] = sym__declaration_modifiers, [sym__declaration_specifiers] = sym__declaration_specifiers, [sym_linkage_specification] = sym_linkage_specification, [sym_attribute_specifier] = sym_attribute_specifier, [sym_attribute] = sym_attribute, [sym_attribute_declaration] = sym_attribute_declaration, [sym_ms_declspec_modifier] = sym_ms_declspec_modifier, [sym_ms_based_modifier] = sym_ms_based_modifier, [sym_ms_call_modifier] = sym_ms_call_modifier, [sym_ms_unaligned_ptr_modifier] = sym_ms_unaligned_ptr_modifier, [sym_ms_pointer_modifier] = sym_ms_pointer_modifier, [sym_declaration_list] = sym_declaration_list, [sym__declarator] = sym__declarator, [sym__field_declarator] = sym__field_declarator, [sym__type_declarator] = sym__type_declarator, [sym__abstract_declarator] = sym__abstract_declarator, [sym_parenthesized_declarator] = sym_parenthesized_declarator, [sym_parenthesized_field_declarator] = sym_parenthesized_declarator, [sym_parenthesized_type_declarator] = sym_parenthesized_declarator, [sym_abstract_parenthesized_declarator] = sym_abstract_parenthesized_declarator, [sym_attributed_declarator] = sym_attributed_declarator, [sym_attributed_field_declarator] = sym_attributed_declarator, [sym_attributed_type_declarator] = sym_attributed_declarator, [sym_pointer_declarator] = sym_pointer_declarator, [sym_pointer_field_declarator] = sym_pointer_declarator, [sym_pointer_type_declarator] = sym_pointer_declarator, [sym_abstract_pointer_declarator] = sym_abstract_pointer_declarator, [sym_function_declarator] = sym_function_declarator, [sym_function_field_declarator] = sym_function_declarator, [sym_function_type_declarator] = sym_function_declarator, [sym_abstract_function_declarator] = sym_abstract_function_declarator, [sym_array_declarator] = sym_array_declarator, [sym_array_field_declarator] = sym_array_declarator, [sym_array_type_declarator] = sym_array_declarator, [sym_abstract_array_declarator] = sym_abstract_array_declarator, [sym_init_declarator] = sym_init_declarator, [sym_compound_statement] = sym_compound_statement, [sym_storage_class_specifier] = sym_storage_class_specifier, [sym_type_qualifier] = sym_type_qualifier, [sym__type_specifier] = sym__type_specifier, [sym_sized_type_specifier] = sym_sized_type_specifier, [sym_enum_specifier] = sym_enum_specifier, [sym_enumerator_list] = sym_enumerator_list, [sym_struct_specifier] = sym_struct_specifier, [sym_union_specifier] = sym_union_specifier, [sym_field_declaration_list] = sym_field_declaration_list, [sym__field_declaration_list_item] = sym__field_declaration_list_item, [sym_field_declaration] = sym_field_declaration, [sym_bitfield_clause] = sym_bitfield_clause, [sym_enumerator] = sym_enumerator, [sym_parameter_list] = sym_parameter_list, [sym_parameter_declaration] = sym_parameter_declaration, [sym_attributed_statement] = sym_attributed_statement, [sym_attributed_non_case_statement] = sym_attributed_statement, [sym_labeled_statement] = sym_labeled_statement, [sym_expression_statement] = sym_expression_statement, [sym_if_statement] = sym_if_statement, [sym_switch_statement] = sym_switch_statement, [sym_case_statement] = sym_case_statement, [sym_while_statement] = sym_while_statement, [sym_do_statement] = sym_do_statement, [sym_for_statement] = sym_for_statement, [sym_return_statement] = sym_return_statement, [sym_break_statement] = sym_break_statement, [sym_continue_statement] = sym_continue_statement, [sym_goto_statement] = sym_goto_statement, [sym__expression] = sym__expression, [sym_comma_expression] = sym_comma_expression, [sym_conditional_expression] = sym_conditional_expression, [sym_assignment_expression] = sym_assignment_expression, [sym_pointer_expression] = sym_pointer_expression, [sym_unary_expression] = sym_unary_expression, [sym_binary_expression] = sym_binary_expression, [sym_update_expression] = sym_update_expression, [sym_cast_expression] = sym_cast_expression, [sym_type_descriptor] = sym_type_descriptor, [sym_sizeof_expression] = sym_sizeof_expression, [sym_subscript_expression] = sym_subscript_expression, [sym_call_expression] = sym_call_expression, [sym_argument_list] = sym_argument_list, [sym_field_expression] = sym_field_expression, [sym_compound_literal_expression] = sym_compound_literal_expression, [sym_parenthesized_expression] = sym_parenthesized_expression, [sym_initializer_list] = sym_initializer_list, [sym_initializer_pair] = sym_initializer_pair, [sym_subscript_designator] = sym_subscript_designator, [sym_field_designator] = sym_field_designator, [sym_char_literal] = sym_char_literal, [sym_concatenated_string] = sym_concatenated_string, [sym_string_literal] = sym_string_literal, [sym__empty_declaration] = sym__empty_declaration, [sym_decltype] = sym_decltype, [sym_class_specifier] = sym_class_specifier, [sym__class_name] = sym__class_name, [sym_virtual_specifier] = sym_virtual_specifier, [sym_virtual_function_specifier] = sym_virtual_function_specifier, [sym_explicit_function_specifier] = sym_explicit_function_specifier, [sym_base_class_clause] = sym_base_class_clause, [sym__enum_base_clause] = sym__enum_base_clause, [sym_dependent_type] = sym_dependent_type, [sym_template_declaration] = sym_template_declaration, [sym_template_instantiation] = sym_template_instantiation, [sym_template_parameter_list] = sym_template_parameter_list, [sym_type_parameter_declaration] = sym_type_parameter_declaration, [sym_variadic_type_parameter_declaration] = sym_variadic_type_parameter_declaration, [sym_optional_type_parameter_declaration] = sym_optional_type_parameter_declaration, [sym_template_template_parameter_declaration] = sym_template_template_parameter_declaration, [sym_optional_parameter_declaration] = sym_optional_parameter_declaration, [sym_variadic_parameter_declaration] = sym_variadic_parameter_declaration, [sym_variadic_declarator] = sym_variadic_declarator, [sym_variadic_reference_declarator] = sym_reference_declarator, [sym_operator_cast] = sym_operator_cast, [sym_field_initializer_list] = sym_field_initializer_list, [sym_field_initializer] = sym_field_initializer, [sym_inline_method_definition] = sym_function_definition, [sym__constructor_specifiers] = sym__constructor_specifiers, [sym_operator_cast_definition] = sym_function_definition, [sym_operator_cast_declaration] = sym_declaration, [sym_constructor_or_destructor_definition] = sym_function_definition, [sym_constructor_or_destructor_declaration] = sym_declaration, [sym_default_method_clause] = sym_default_method_clause, [sym_delete_method_clause] = sym_delete_method_clause, [sym_friend_declaration] = sym_friend_declaration, [sym_access_specifier] = sym_access_specifier, [sym_reference_declarator] = sym_reference_declarator, [sym_reference_field_declarator] = sym_reference_declarator, [sym_abstract_reference_declarator] = sym_abstract_reference_declarator, [sym_structured_binding_declarator] = sym_structured_binding_declarator, [sym_ref_qualifier] = sym_ref_qualifier, [sym_trailing_return_type] = sym_trailing_return_type, [sym_noexcept] = sym_noexcept, [sym_throw_specifier] = sym_throw_specifier, [sym_template_type] = sym_template_type, [sym_template_method] = sym_template_method, [sym_template_function] = sym_template_function, [sym_template_argument_list] = sym_template_argument_list, [sym_namespace_definition] = sym_namespace_definition, [sym_namespace_alias_definition] = sym_namespace_alias_definition, [sym_namespace_definition_name] = sym_namespace_definition_name, [sym_using_declaration] = sym_using_declaration, [sym_alias_declaration] = sym_alias_declaration, [sym_static_assert_declaration] = sym_static_assert_declaration, [sym_condition_clause] = sym_condition_clause, [sym_condition_declaration] = sym_declaration, [sym_for_range_loop] = sym_for_range_loop, [sym_co_return_statement] = sym_co_return_statement, [sym_co_yield_statement] = sym_co_yield_statement, [sym_throw_statement] = sym_throw_statement, [sym_try_statement] = sym_try_statement, [sym_catch_clause] = sym_catch_clause, [sym_co_await_expression] = sym_co_await_expression, [sym_new_expression] = sym_new_expression, [sym_new_declarator] = sym_new_declarator, [sym_delete_expression] = sym_delete_expression, [sym_lambda_expression] = sym_lambda_expression, [sym_lambda_capture_specifier] = sym_lambda_capture_specifier, [sym_lambda_default_capture] = sym_lambda_default_capture, [sym_parameter_pack_expansion] = sym_parameter_pack_expansion, [sym_type_parameter_pack_expansion] = sym_parameter_pack_expansion, [sym_destructor_name] = sym_destructor_name, [sym_dependent_identifier] = sym_dependent_identifier, [sym_dependent_field_identifier] = sym_dependent_identifier, [sym_dependent_type_identifier] = sym_dependent_identifier, [sym__scope_resolution] = sym__scope_resolution, [sym_qualified_field_identifier] = sym_qualified_identifier, [sym_qualified_identifier] = sym_qualified_identifier, [sym_qualified_type_identifier] = sym_qualified_identifier, [sym_qualified_operator_cast_identifier] = sym_qualified_identifier, [sym_operator_name] = sym_operator_name, [sym_user_defined_literal] = sym_user_defined_literal, [aux_sym_translation_unit_repeat1] = aux_sym_translation_unit_repeat1, [aux_sym_preproc_params_repeat1] = aux_sym_preproc_params_repeat1, [aux_sym_preproc_if_in_field_declaration_list_repeat1] = aux_sym_preproc_if_in_field_declaration_list_repeat1, [aux_sym_preproc_argument_list_repeat1] = aux_sym_preproc_argument_list_repeat1, [aux_sym_declaration_repeat1] = aux_sym_declaration_repeat1, [aux_sym_type_definition_repeat1] = aux_sym_type_definition_repeat1, [aux_sym_type_definition_repeat2] = aux_sym_type_definition_repeat2, [aux_sym__declaration_specifiers_repeat1] = aux_sym__declaration_specifiers_repeat1, [aux_sym_attribute_declaration_repeat1] = aux_sym_attribute_declaration_repeat1, [aux_sym_attributed_declarator_repeat1] = aux_sym_attributed_declarator_repeat1, [aux_sym_pointer_declarator_repeat1] = aux_sym_pointer_declarator_repeat1, [aux_sym_function_declarator_repeat1] = aux_sym_function_declarator_repeat1, [aux_sym_function_declarator_repeat2] = aux_sym_function_declarator_repeat2, [aux_sym_abstract_function_declarator_repeat1] = aux_sym_abstract_function_declarator_repeat1, [aux_sym_sized_type_specifier_repeat1] = aux_sym_sized_type_specifier_repeat1, [aux_sym_enumerator_list_repeat1] = aux_sym_enumerator_list_repeat1, [aux_sym_field_declaration_repeat1] = aux_sym_field_declaration_repeat1, [aux_sym_parameter_list_repeat1] = aux_sym_parameter_list_repeat1, [aux_sym_case_statement_repeat1] = aux_sym_case_statement_repeat1, [aux_sym_argument_list_repeat1] = aux_sym_argument_list_repeat1, [aux_sym_initializer_list_repeat1] = aux_sym_initializer_list_repeat1, [aux_sym_initializer_pair_repeat1] = aux_sym_initializer_pair_repeat1, [aux_sym_concatenated_string_repeat1] = aux_sym_concatenated_string_repeat1, [aux_sym_string_literal_repeat1] = aux_sym_string_literal_repeat1, [aux_sym_base_class_clause_repeat1] = aux_sym_base_class_clause_repeat1, [aux_sym_template_parameter_list_repeat1] = aux_sym_template_parameter_list_repeat1, [aux_sym_field_initializer_list_repeat1] = aux_sym_field_initializer_list_repeat1, [aux_sym_operator_cast_definition_repeat1] = aux_sym_operator_cast_definition_repeat1, [aux_sym_structured_binding_declarator_repeat1] = aux_sym_structured_binding_declarator_repeat1, [aux_sym_throw_specifier_repeat1] = aux_sym_throw_specifier_repeat1, [aux_sym_template_argument_list_repeat1] = aux_sym_template_argument_list_repeat1, [aux_sym_try_statement_repeat1] = aux_sym_try_statement_repeat1, [aux_sym_lambda_capture_specifier_repeat1] = aux_sym_lambda_capture_specifier_repeat1, [alias_sym_field_identifier] = alias_sym_field_identifier, [alias_sym_namespace_identifier] = alias_sym_namespace_identifier, [alias_sym_statement_identifier] = alias_sym_statement_identifier, [alias_sym_type_identifier] = alias_sym_type_identifier, }; static const TSSymbolMetadata ts_symbol_metadata[] = { [ts_builtin_sym_end] = { .visible = false, .named = true, }, [sym_identifier] = { .visible = true, .named = true, }, [aux_sym_preproc_include_token1] = { .visible = true, .named = false, }, [anon_sym_LF] = { .visible = true, .named = false, }, [aux_sym_preproc_def_token1] = { .visible = true, .named = false, }, [anon_sym_LPAREN] = { .visible = true, .named = false, }, [anon_sym_DOT_DOT_DOT] = { .visible = true, .named = false, }, [anon_sym_COMMA] = { .visible = true, .named = false, }, [anon_sym_RPAREN] = { .visible = true, .named = false, }, [aux_sym_preproc_if_token1] = { .visible = true, .named = false, }, [aux_sym_preproc_if_token2] = { .visible = true, .named = false, }, [aux_sym_preproc_ifdef_token1] = { .visible = true, .named = false, }, [aux_sym_preproc_ifdef_token2] = { .visible = true, .named = false, }, [aux_sym_preproc_else_token1] = { .visible = true, .named = false, }, [aux_sym_preproc_elif_token1] = { .visible = true, .named = false, }, [sym_preproc_directive] = { .visible = true, .named = true, }, [sym_preproc_arg] = { .visible = true, .named = true, }, [anon_sym_LPAREN2] = { .visible = true, .named = false, }, [anon_sym_defined] = { .visible = true, .named = false, }, [anon_sym_BANG] = { .visible = true, .named = false, }, [anon_sym_TILDE] = { .visible = true, .named = false, }, [anon_sym_DASH] = { .visible = true, .named = false, }, [anon_sym_PLUS] = { .visible = true, .named = false, }, [anon_sym_STAR] = { .visible = true, .named = false, }, [anon_sym_SLASH] = { .visible = true, .named = false, }, [anon_sym_PERCENT] = { .visible = true, .named = false, }, [anon_sym_PIPE_PIPE] = { .visible = true, .named = false, }, [anon_sym_AMP_AMP] = { .visible = true, .named = false, }, [anon_sym_PIPE] = { .visible = true, .named = false, }, [anon_sym_CARET] = { .visible = true, .named = false, }, [anon_sym_AMP] = { .visible = true, .named = false, }, [anon_sym_EQ_EQ] = { .visible = true, .named = false, }, [anon_sym_BANG_EQ] = { .visible = true, .named = false, }, [anon_sym_GT] = { .visible = true, .named = false, }, [anon_sym_GT_EQ] = { .visible = true, .named = false, }, [anon_sym_LT_EQ] = { .visible = true, .named = false, }, [anon_sym_LT] = { .visible = true, .named = false, }, [anon_sym_LT_LT] = { .visible = true, .named = false, }, [anon_sym_GT_GT] = { .visible = true, .named = false, }, [anon_sym_SEMI] = { .visible = true, .named = false, }, [anon_sym_typedef] = { .visible = true, .named = false, }, [anon_sym_extern] = { .visible = true, .named = false, }, [anon_sym___attribute__] = { .visible = true, .named = false, }, [anon_sym_COLON_COLON] = { .visible = true, .named = false, }, [anon_sym_LBRACK_LBRACK] = { .visible = true, .named = false, }, [anon_sym_RBRACK_RBRACK] = { .visible = true, .named = false, }, [anon_sym___declspec] = { .visible = true, .named = false, }, [anon_sym___based] = { .visible = true, .named = false, }, [anon_sym___cdecl] = { .visible = true, .named = false, }, [anon_sym___clrcall] = { .visible = true, .named = false, }, [anon_sym___stdcall] = { .visible = true, .named = false, }, [anon_sym___fastcall] = { .visible = true, .named = false, }, [anon_sym___thiscall] = { .visible = true, .named = false, }, [anon_sym___vectorcall] = { .visible = true, .named = false, }, [sym_ms_restrict_modifier] = { .visible = true, .named = true, }, [sym_ms_unsigned_ptr_modifier] = { .visible = true, .named = true, }, [sym_ms_signed_ptr_modifier] = { .visible = true, .named = true, }, [anon_sym__unaligned] = { .visible = true, .named = false, }, [anon_sym___unaligned] = { .visible = true, .named = false, }, [anon_sym_LBRACE] = { .visible = true, .named = false, }, [anon_sym_RBRACE] = { .visible = true, .named = false, }, [anon_sym_LBRACK] = { .visible = true, .named = false, }, [anon_sym_RBRACK] = { .visible = true, .named = false, }, [anon_sym_EQ] = { .visible = true, .named = false, }, [anon_sym_static] = { .visible = true, .named = false, }, [anon_sym_register] = { .visible = true, .named = false, }, [anon_sym_inline] = { .visible = true, .named = false, }, [anon_sym_thread_local] = { .visible = true, .named = false, }, [anon_sym_const] = { .visible = true, .named = false, }, [anon_sym_volatile] = { .visible = true, .named = false, }, [anon_sym_restrict] = { .visible = true, .named = false, }, [anon_sym__Atomic] = { .visible = true, .named = false, }, [anon_sym_mutable] = { .visible = true, .named = false, }, [anon_sym_constexpr] = { .visible = true, .named = false, }, [anon_sym_signed] = { .visible = true, .named = false, }, [anon_sym_unsigned] = { .visible = true, .named = false, }, [anon_sym_long] = { .visible = true, .named = false, }, [anon_sym_short] = { .visible = true, .named = false, }, [sym_primitive_type] = { .visible = true, .named = true, }, [anon_sym_enum] = { .visible = true, .named = false, }, [anon_sym_class] = { .visible = true, .named = false, }, [anon_sym_struct] = { .visible = true, .named = false, }, [anon_sym_union] = { .visible = true, .named = false, }, [anon_sym_COLON] = { .visible = true, .named = false, }, [anon_sym_if] = { .visible = true, .named = false, }, [anon_sym_else] = { .visible = true, .named = false, }, [anon_sym_switch] = { .visible = true, .named = false, }, [anon_sym_case] = { .visible = true, .named = false, }, [anon_sym_default] = { .visible = true, .named = false, }, [anon_sym_while] = { .visible = true, .named = false, }, [anon_sym_do] = { .visible = true, .named = false, }, [anon_sym_for] = { .visible = true, .named = false, }, [anon_sym_return] = { .visible = true, .named = false, }, [anon_sym_break] = { .visible = true, .named = false, }, [anon_sym_continue] = { .visible = true, .named = false, }, [anon_sym_goto] = { .visible = true, .named = false, }, [anon_sym_QMARK] = { .visible = true, .named = false, }, [anon_sym_STAR_EQ] = { .visible = true, .named = false, }, [anon_sym_SLASH_EQ] = { .visible = true, .named = false, }, [anon_sym_PERCENT_EQ] = { .visible = true, .named = false, }, [anon_sym_PLUS_EQ] = { .visible = true, .named = false, }, [anon_sym_DASH_EQ] = { .visible = true, .named = false, }, [anon_sym_LT_LT_EQ] = { .visible = true, .named = false, }, [anon_sym_GT_GT_EQ] = { .visible = true, .named = false, }, [anon_sym_AMP_EQ] = { .visible = true, .named = false, }, [anon_sym_CARET_EQ] = { .visible = true, .named = false, }, [anon_sym_PIPE_EQ] = { .visible = true, .named = false, }, [anon_sym_DASH_DASH] = { .visible = true, .named = false, }, [anon_sym_PLUS_PLUS] = { .visible = true, .named = false, }, [anon_sym_sizeof] = { .visible = true, .named = false, }, [anon_sym_DOT] = { .visible = true, .named = false, }, [anon_sym_DASH_GT] = { .visible = true, .named = false, }, [sym_number_literal] = { .visible = true, .named = true, }, [anon_sym_L_SQUOTE] = { .visible = true, .named = false, }, [anon_sym_u_SQUOTE] = { .visible = true, .named = false, }, [anon_sym_U_SQUOTE] = { .visible = true, .named = false, }, [anon_sym_u8_SQUOTE] = { .visible = true, .named = false, }, [anon_sym_SQUOTE] = { .visible = true, .named = false, }, [aux_sym_char_literal_token1] = { .visible = false, .named = false, }, [anon_sym_L_DQUOTE] = { .visible = true, .named = false, }, [anon_sym_u_DQUOTE] = { .visible = true, .named = false, }, [anon_sym_U_DQUOTE] = { .visible = true, .named = false, }, [anon_sym_u8_DQUOTE] = { .visible = true, .named = false, }, [anon_sym_DQUOTE] = { .visible = true, .named = false, }, [aux_sym_string_literal_token1] = { .visible = false, .named = false, }, [sym_escape_sequence] = { .visible = true, .named = true, }, [sym_system_lib_string] = { .visible = true, .named = true, }, [sym_true] = { .visible = true, .named = true, }, [sym_false] = { .visible = true, .named = true, }, [sym_null] = { .visible = true, .named = true, }, [sym_comment] = { .visible = true, .named = true, }, [anon_sym_decltype] = { .visible = true, .named = false, }, [anon_sym_final] = { .visible = true, .named = false, }, [anon_sym_override] = { .visible = true, .named = false, }, [anon_sym_virtual] = { .visible = true, .named = false, }, [anon_sym_explicit] = { .visible = true, .named = false, }, [anon_sym_public] = { .visible = true, .named = false, }, [anon_sym_private] = { .visible = true, .named = false, }, [anon_sym_protected] = { .visible = true, .named = false, }, [sym_auto] = { .visible = true, .named = true, }, [anon_sym_typename] = { .visible = true, .named = false, }, [anon_sym_template] = { .visible = true, .named = false, }, [anon_sym_GT2] = { .visible = true, .named = false, }, [anon_sym_operator] = { .visible = true, .named = false, }, [anon_sym_delete] = { .visible = true, .named = false, }, [anon_sym_friend] = { .visible = true, .named = false, }, [anon_sym_noexcept] = { .visible = true, .named = false, }, [anon_sym_throw] = { .visible = true, .named = false, }, [anon_sym_namespace] = { .visible = true, .named = false, }, [anon_sym_using] = { .visible = true, .named = false, }, [anon_sym_static_assert] = { .visible = true, .named = false, }, [anon_sym_co_return] = { .visible = true, .named = false, }, [anon_sym_co_yield] = { .visible = true, .named = false, }, [anon_sym_try] = { .visible = true, .named = false, }, [anon_sym_catch] = { .visible = true, .named = false, }, [anon_sym_co_await] = { .visible = true, .named = false, }, [anon_sym_new] = { .visible = true, .named = false, }, [anon_sym_DASH_GT_STAR] = { .visible = true, .named = false, }, [anon_sym_LPAREN_RPAREN] = { .visible = true, .named = false, }, [anon_sym_LBRACK_RBRACK] = { .visible = true, .named = false, }, [anon_sym_DQUOTE_DQUOTE] = { .visible = true, .named = false, }, [sym_this] = { .visible = true, .named = true, }, [sym_nullptr] = { .visible = true, .named = true, }, [sym_literal_suffix] = { .visible = true, .named = true, }, [sym_raw_string_literal] = { .visible = true, .named = true, }, [sym_translation_unit] = { .visible = true, .named = true, }, [sym_preproc_include] = { .visible = true, .named = true, }, [sym_preproc_def] = { .visible = true, .named = true, }, [sym_preproc_function_def] = { .visible = true, .named = true, }, [sym_preproc_params] = { .visible = true, .named = true, }, [sym_preproc_call] = { .visible = true, .named = true, }, [sym_preproc_if] = { .visible = true, .named = true, }, [sym_preproc_ifdef] = { .visible = true, .named = true, }, [sym_preproc_else] = { .visible = true, .named = true, }, [sym_preproc_elif] = { .visible = true, .named = true, }, [sym_preproc_if_in_field_declaration_list] = { .visible = true, .named = true, }, [sym_preproc_ifdef_in_field_declaration_list] = { .visible = true, .named = true, }, [sym_preproc_else_in_field_declaration_list] = { .visible = true, .named = true, }, [sym_preproc_elif_in_field_declaration_list] = { .visible = true, .named = true, }, [sym__preproc_expression] = { .visible = false, .named = true, }, [sym_preproc_parenthesized_expression] = { .visible = true, .named = true, }, [sym_preproc_defined] = { .visible = true, .named = true, }, [sym_preproc_unary_expression] = { .visible = true, .named = true, }, [sym_preproc_call_expression] = { .visible = true, .named = true, }, [sym_preproc_argument_list] = { .visible = true, .named = true, }, [sym_preproc_binary_expression] = { .visible = true, .named = true, }, [sym_function_definition] = { .visible = true, .named = true, }, [sym_declaration] = { .visible = true, .named = true, }, [sym_type_definition] = { .visible = true, .named = true, }, [sym__declaration_modifiers] = { .visible = false, .named = true, }, [sym__declaration_specifiers] = { .visible = false, .named = true, }, [sym_linkage_specification] = { .visible = true, .named = true, }, [sym_attribute_specifier] = { .visible = true, .named = true, }, [sym_attribute] = { .visible = true, .named = true, }, [sym_attribute_declaration] = { .visible = true, .named = true, }, [sym_ms_declspec_modifier] = { .visible = true, .named = true, }, [sym_ms_based_modifier] = { .visible = true, .named = true, }, [sym_ms_call_modifier] = { .visible = true, .named = true, }, [sym_ms_unaligned_ptr_modifier] = { .visible = true, .named = true, }, [sym_ms_pointer_modifier] = { .visible = true, .named = true, }, [sym_declaration_list] = { .visible = true, .named = true, }, [sym__declarator] = { .visible = false, .named = true, .supertype = true, }, [sym__field_declarator] = { .visible = false, .named = true, .supertype = true, }, [sym__type_declarator] = { .visible = false, .named = true, .supertype = true, }, [sym__abstract_declarator] = { .visible = false, .named = true, .supertype = true, }, [sym_parenthesized_declarator] = { .visible = true, .named = true, }, [sym_parenthesized_field_declarator] = { .visible = true, .named = true, }, [sym_parenthesized_type_declarator] = { .visible = true, .named = true, }, [sym_abstract_parenthesized_declarator] = { .visible = true, .named = true, }, [sym_attributed_declarator] = { .visible = true, .named = true, }, [sym_attributed_field_declarator] = { .visible = true, .named = true, }, [sym_attributed_type_declarator] = { .visible = true, .named = true, }, [sym_pointer_declarator] = { .visible = true, .named = true, }, [sym_pointer_field_declarator] = { .visible = true, .named = true, }, [sym_pointer_type_declarator] = { .visible = true, .named = true, }, [sym_abstract_pointer_declarator] = { .visible = true, .named = true, }, [sym_function_declarator] = { .visible = true, .named = true, }, [sym_function_field_declarator] = { .visible = true, .named = true, }, [sym_function_type_declarator] = { .visible = true, .named = true, }, [sym_abstract_function_declarator] = { .visible = true, .named = true, }, [sym_array_declarator] = { .visible = true, .named = true, }, [sym_array_field_declarator] = { .visible = true, .named = true, }, [sym_array_type_declarator] = { .visible = true, .named = true, }, [sym_abstract_array_declarator] = { .visible = true, .named = true, }, [sym_init_declarator] = { .visible = true, .named = true, }, [sym_compound_statement] = { .visible = true, .named = true, }, [sym_storage_class_specifier] = { .visible = true, .named = true, }, [sym_type_qualifier] = { .visible = true, .named = true, }, [sym__type_specifier] = { .visible = false, .named = true, .supertype = true, }, [sym_sized_type_specifier] = { .visible = true, .named = true, }, [sym_enum_specifier] = { .visible = true, .named = true, }, [sym_enumerator_list] = { .visible = true, .named = true, }, [sym_struct_specifier] = { .visible = true, .named = true, }, [sym_union_specifier] = { .visible = true, .named = true, }, [sym_field_declaration_list] = { .visible = true, .named = true, }, [sym__field_declaration_list_item] = { .visible = false, .named = true, }, [sym_field_declaration] = { .visible = true, .named = true, }, [sym_bitfield_clause] = { .visible = true, .named = true, }, [sym_enumerator] = { .visible = true, .named = true, }, [sym_parameter_list] = { .visible = true, .named = true, }, [sym_parameter_declaration] = { .visible = true, .named = true, }, [sym_attributed_statement] = { .visible = true, .named = true, }, [sym_attributed_non_case_statement] = { .visible = true, .named = true, }, [sym_labeled_statement] = { .visible = true, .named = true, }, [sym_expression_statement] = { .visible = true, .named = true, }, [sym_if_statement] = { .visible = true, .named = true, }, [sym_switch_statement] = { .visible = true, .named = true, }, [sym_case_statement] = { .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_return_statement] = { .visible = true, .named = true, }, [sym_break_statement] = { .visible = true, .named = true, }, [sym_continue_statement] = { .visible = true, .named = true, }, [sym_goto_statement] = { .visible = true, .named = true, }, [sym__expression] = { .visible = false, .named = true, .supertype = true, }, [sym_comma_expression] = { .visible = true, .named = true, }, [sym_conditional_expression] = { .visible = true, .named = true, }, [sym_assignment_expression] = { .visible = true, .named = true, }, [sym_pointer_expression] = { .visible = true, .named = true, }, [sym_unary_expression] = { .visible = true, .named = true, }, [sym_binary_expression] = { .visible = true, .named = true, }, [sym_update_expression] = { .visible = true, .named = true, }, [sym_cast_expression] = { .visible = true, .named = true, }, [sym_type_descriptor] = { .visible = true, .named = true, }, [sym_sizeof_expression] = { .visible = true, .named = true, }, [sym_subscript_expression] = { .visible = true, .named = true, }, [sym_call_expression] = { .visible = true, .named = true, }, [sym_argument_list] = { .visible = true, .named = true, }, [sym_field_expression] = { .visible = true, .named = true, }, [sym_compound_literal_expression] = { .visible = true, .named = true, }, [sym_parenthesized_expression] = { .visible = true, .named = true, }, [sym_initializer_list] = { .visible = true, .named = true, }, [sym_initializer_pair] = { .visible = true, .named = true, }, [sym_subscript_designator] = { .visible = true, .named = true, }, [sym_field_designator] = { .visible = true, .named = true, }, [sym_char_literal] = { .visible = true, .named = true, }, [sym_concatenated_string] = { .visible = true, .named = true, }, [sym_string_literal] = { .visible = true, .named = true, }, [sym__empty_declaration] = { .visible = false, .named = true, }, [sym_decltype] = { .visible = true, .named = true, }, [sym_class_specifier] = { .visible = true, .named = true, }, [sym__class_name] = { .visible = false, .named = true, }, [sym_virtual_specifier] = { .visible = true, .named = true, }, [sym_virtual_function_specifier] = { .visible = true, .named = true, }, [sym_explicit_function_specifier] = { .visible = true, .named = true, }, [sym_base_class_clause] = { .visible = true, .named = true, }, [sym__enum_base_clause] = { .visible = false, .named = true, }, [sym_dependent_type] = { .visible = true, .named = true, }, [sym_template_declaration] = { .visible = true, .named = true, }, [sym_template_instantiation] = { .visible = true, .named = true, }, [sym_template_parameter_list] = { .visible = true, .named = true, }, [sym_type_parameter_declaration] = { .visible = true, .named = true, }, [sym_variadic_type_parameter_declaration] = { .visible = true, .named = true, }, [sym_optional_type_parameter_declaration] = { .visible = true, .named = true, }, [sym_template_template_parameter_declaration] = { .visible = true, .named = true, }, [sym_optional_parameter_declaration] = { .visible = true, .named = true, }, [sym_variadic_parameter_declaration] = { .visible = true, .named = true, }, [sym_variadic_declarator] = { .visible = true, .named = true, }, [sym_variadic_reference_declarator] = { .visible = true, .named = true, }, [sym_operator_cast] = { .visible = true, .named = true, }, [sym_field_initializer_list] = { .visible = true, .named = true, }, [sym_field_initializer] = { .visible = true, .named = true, }, [sym_inline_method_definition] = { .visible = true, .named = true, }, [sym__constructor_specifiers] = { .visible = false, .named = true, }, [sym_operator_cast_definition] = { .visible = true, .named = true, }, [sym_operator_cast_declaration] = { .visible = true, .named = true, }, [sym_constructor_or_destructor_definition] = { .visible = true, .named = true, }, [sym_constructor_or_destructor_declaration] = { .visible = true, .named = true, }, [sym_default_method_clause] = { .visible = true, .named = true, }, [sym_delete_method_clause] = { .visible = true, .named = true, }, [sym_friend_declaration] = { .visible = true, .named = true, }, [sym_access_specifier] = { .visible = true, .named = true, }, [sym_reference_declarator] = { .visible = true, .named = true, }, [sym_reference_field_declarator] = { .visible = true, .named = true, }, [sym_abstract_reference_declarator] = { .visible = true, .named = true, }, [sym_structured_binding_declarator] = { .visible = true, .named = true, }, [sym_ref_qualifier] = { .visible = true, .named = true, }, [sym_trailing_return_type] = { .visible = true, .named = true, }, [sym_noexcept] = { .visible = true, .named = true, }, [sym_throw_specifier] = { .visible = true, .named = true, }, [sym_template_type] = { .visible = true, .named = true, }, [sym_template_method] = { .visible = true, .named = true, }, [sym_template_function] = { .visible = true, .named = true, }, [sym_template_argument_list] = { .visible = true, .named = true, }, [sym_namespace_definition] = { .visible = true, .named = true, }, [sym_namespace_alias_definition] = { .visible = true, .named = true, }, [sym_namespace_definition_name] = { .visible = true, .named = true, }, [sym_using_declaration] = { .visible = true, .named = true, }, [sym_alias_declaration] = { .visible = true, .named = true, }, [sym_static_assert_declaration] = { .visible = true, .named = true, }, [sym_condition_clause] = { .visible = true, .named = true, }, [sym_condition_declaration] = { .visible = true, .named = true, }, [sym_for_range_loop] = { .visible = true, .named = true, }, [sym_co_return_statement] = { .visible = true, .named = true, }, [sym_co_yield_statement] = { .visible = true, .named = true, }, [sym_throw_statement] = { .visible = true, .named = true, }, [sym_try_statement] = { .visible = true, .named = true, }, [sym_catch_clause] = { .visible = true, .named = true, }, [sym_co_await_expression] = { .visible = true, .named = true, }, [sym_new_expression] = { .visible = true, .named = true, }, [sym_new_declarator] = { .visible = true, .named = true, }, [sym_delete_expression] = { .visible = true, .named = true, }, [sym_lambda_expression] = { .visible = true, .named = true, }, [sym_lambda_capture_specifier] = { .visible = true, .named = true, }, [sym_lambda_default_capture] = { .visible = true, .named = true, }, [sym_parameter_pack_expansion] = { .visible = true, .named = true, }, [sym_type_parameter_pack_expansion] = { .visible = true, .named = true, }, [sym_destructor_name] = { .visible = true, .named = true, }, [sym_dependent_identifier] = { .visible = true, .named = true, }, [sym_dependent_field_identifier] = { .visible = true, .named = true, }, [sym_dependent_type_identifier] = { .visible = true, .named = true, }, [sym__scope_resolution] = { .visible = false, .named = true, }, [sym_qualified_field_identifier] = { .visible = true, .named = true, }, [sym_qualified_identifier] = { .visible = true, .named = true, }, [sym_qualified_type_identifier] = { .visible = true, .named = true, }, [sym_qualified_operator_cast_identifier] = { .visible = true, .named = true, }, [sym_operator_name] = { .visible = true, .named = true, }, [sym_user_defined_literal] = { .visible = true, .named = true, }, [aux_sym_translation_unit_repeat1] = { .visible = false, .named = false, }, [aux_sym_preproc_params_repeat1] = { .visible = false, .named = false, }, [aux_sym_preproc_if_in_field_declaration_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_preproc_argument_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_declaration_repeat1] = { .visible = false, .named = false, }, [aux_sym_type_definition_repeat1] = { .visible = false, .named = false, }, [aux_sym_type_definition_repeat2] = { .visible = false, .named = false, }, [aux_sym__declaration_specifiers_repeat1] = { .visible = false, .named = false, }, [aux_sym_attribute_declaration_repeat1] = { .visible = false, .named = false, }, [aux_sym_attributed_declarator_repeat1] = { .visible = false, .named = false, }, [aux_sym_pointer_declarator_repeat1] = { .visible = false, .named = false, }, [aux_sym_function_declarator_repeat1] = { .visible = false, .named = false, }, [aux_sym_function_declarator_repeat2] = { .visible = false, .named = false, }, [aux_sym_abstract_function_declarator_repeat1] = { .visible = false, .named = false, }, [aux_sym_sized_type_specifier_repeat1] = { .visible = false, .named = false, }, [aux_sym_enumerator_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_field_declaration_repeat1] = { .visible = false, .named = false, }, [aux_sym_parameter_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_case_statement_repeat1] = { .visible = false, .named = false, }, [aux_sym_argument_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_initializer_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_initializer_pair_repeat1] = { .visible = false, .named = false, }, [aux_sym_concatenated_string_repeat1] = { .visible = false, .named = false, }, [aux_sym_string_literal_repeat1] = { .visible = false, .named = false, }, [aux_sym_base_class_clause_repeat1] = { .visible = false, .named = false, }, [aux_sym_template_parameter_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_field_initializer_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_operator_cast_definition_repeat1] = { .visible = false, .named = false, }, [aux_sym_structured_binding_declarator_repeat1] = { .visible = false, .named = false, }, [aux_sym_throw_specifier_repeat1] = { .visible = false, .named = false, }, [aux_sym_template_argument_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_try_statement_repeat1] = { .visible = false, .named = false, }, [aux_sym_lambda_capture_specifier_repeat1] = { .visible = false, .named = false, }, [alias_sym_field_identifier] = { .visible = true, .named = true, }, [alias_sym_namespace_identifier] = { .visible = true, .named = true, }, [alias_sym_statement_identifier] = { .visible = true, .named = true, }, [alias_sym_type_identifier] = { .visible = true, .named = true, }, }; enum { field_alternative = 1, field_argument = 2, field_arguments = 3, field_base = 4, field_body = 5, field_captures = 6, field_condition = 7, field_consequence = 8, field_declarator = 9, field_default_type = 10, field_default_value = 11, field_designator = 12, field_directive = 13, field_field = 14, field_function = 15, field_index = 16, field_initializer = 17, field_label = 18, field_left = 19, field_length = 20, field_message = 21, field_name = 22, field_operator = 23, field_parameters = 24, field_path = 25, field_pattern = 26, field_placement = 27, field_prefix = 28, field_right = 29, field_scope = 30, field_size = 31, field_type = 32, field_update = 33, field_value = 34, }; static const char * const ts_field_names[] = { [0] = NULL, [field_alternative] = "alternative", [field_argument] = "argument", [field_arguments] = "arguments", [field_base] = "base", [field_body] = "body", [field_captures] = "captures", [field_condition] = "condition", [field_consequence] = "consequence", [field_declarator] = "declarator", [field_default_type] = "default_type", [field_default_value] = "default_value", [field_designator] = "designator", [field_directive] = "directive", [field_field] = "field", [field_function] = "function", [field_index] = "index", [field_initializer] = "initializer", [field_label] = "label", [field_left] = "left", [field_length] = "length", [field_message] = "message", [field_name] = "name", [field_operator] = "operator", [field_parameters] = "parameters", [field_path] = "path", [field_pattern] = "pattern", [field_placement] = "placement", [field_prefix] = "prefix", [field_right] = "right", [field_scope] = "scope", [field_size] = "size", [field_type] = "type", [field_update] = "update", [field_value] = "value", }; static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { [2] = {.index = 0, .length = 1}, [3] = {.index = 1, .length = 1}, [4] = {.index = 2, .length = 2}, [5] = {.index = 4, .length = 1}, [6] = {.index = 5, .length = 1}, [7] = {.index = 6, .length = 2}, [8] = {.index = 8, .length = 1}, [9] = {.index = 9, .length = 1}, [10] = {.index = 10, .length = 1}, [11] = {.index = 11, .length = 1}, [12] = {.index = 12, .length = 2}, [13] = {.index = 12, .length = 2}, [14] = {.index = 14, .length = 1}, [15] = {.index = 15, .length = 2}, [16] = {.index = 17, .length = 2}, [17] = {.index = 19, .length = 1}, [18] = {.index = 20, .length = 1}, [19] = {.index = 21, .length = 2}, [20] = {.index = 23, .length = 2}, [21] = {.index = 11, .length = 1}, [22] = {.index = 25, .length = 2}, [23] = {.index = 27, .length = 1}, [24] = {.index = 28, .length = 2}, [25] = {.index = 28, .length = 2}, [26] = {.index = 14, .length = 1}, [27] = {.index = 30, .length = 1}, [28] = {.index = 31, .length = 2}, [29] = {.index = 33, .length = 2}, [30] = {.index = 35, .length = 1}, [31] = {.index = 36, .length = 2}, [32] = {.index = 38, .length = 1}, [33] = {.index = 39, .length = 1}, [34] = {.index = 40, .length = 1}, [35] = {.index = 41, .length = 2}, [36] = {.index = 43, .length = 2}, [37] = {.index = 45, .length = 2}, [38] = {.index = 47, .length = 2}, [39] = {.index = 49, .length = 1}, [40] = {.index = 50, .length = 3}, [41] = {.index = 53, .length = 1}, [42] = {.index = 54, .length = 1}, [43] = {.index = 55, .length = 1}, [44] = {.index = 56, .length = 2}, [45] = {.index = 58, .length = 2}, [46] = {.index = 60, .length = 2}, [47] = {.index = 62, .length = 2}, [48] = {.index = 64, .length = 2}, [49] = {.index = 66, .length = 3}, [50] = {.index = 69, .length = 2}, [51] = {.index = 71, .length = 2}, [52] = {.index = 73, .length = 2}, [53] = {.index = 75, .length = 3}, [54] = {.index = 78, .length = 2}, [55] = {.index = 80, .length = 3}, [56] = {.index = 83, .length = 2}, [57] = {.index = 85, .length = 2}, [58] = {.index = 87, .length = 2}, [59] = {.index = 89, .length = 1}, [60] = {.index = 90, .length = 2}, [61] = {.index = 92, .length = 2}, [62] = {.index = 94, .length = 2}, [63] = {.index = 96, .length = 1}, [64] = {.index = 97, .length = 2}, [65] = {.index = 99, .length = 2}, [66] = {.index = 101, .length = 2}, [67] = {.index = 103, .length = 2}, [68] = {.index = 105, .length = 2}, [69] = {.index = 107, .length = 2}, [70] = {.index = 109, .length = 1}, [71] = {.index = 109, .length = 1}, [72] = {.index = 110, .length = 3}, [74] = {.index = 113, .length = 1}, [75] = {.index = 114, .length = 1}, [76] = {.index = 115, .length = 2}, [77] = {.index = 117, .length = 2}, [80] = {.index = 119, .length = 3}, [81] = {.index = 122, .length = 3}, [82] = {.index = 125, .length = 3}, [83] = {.index = 128, .length = 2}, [84] = {.index = 130, .length = 3}, [85] = {.index = 133, .length = 2}, [86] = {.index = 135, .length = 3}, [87] = {.index = 138, .length = 2}, [88] = {.index = 12, .length = 2}, [89] = {.index = 28, .length = 2}, [90] = {.index = 140, .length = 2}, [91] = {.index = 142, .length = 2}, [92] = {.index = 144, .length = 1}, [93] = {.index = 145, .length = 2}, [94] = {.index = 147, .length = 3}, [95] = {.index = 150, .length = 2}, [96] = {.index = 152, .length = 2}, [97] = {.index = 154, .length = 2}, [98] = {.index = 156, .length = 3}, [99] = {.index = 159, .length = 3}, [100] = {.index = 162, .length = 3}, [101] = {.index = 165, .length = 3}, [102] = {.index = 168, .length = 2}, [103] = {.index = 170, .length = 3}, [104] = {.index = 173, .length = 2}, [105] = {.index = 175, .length = 2}, [106] = {.index = 177, .length = 1}, [107] = {.index = 178, .length = 2}, [108] = {.index = 180, .length = 2}, [109] = {.index = 182, .length = 2}, [110] = {.index = 184, .length = 3}, [111] = {.index = 187, .length = 3}, [112] = {.index = 190, .length = 2}, [113] = {.index = 192, .length = 2}, [114] = {.index = 194, .length = 1}, [116] = {.index = 195, .length = 1}, [117] = {.index = 196, .length = 2}, [118] = {.index = 198, .length = 2}, [119] = {.index = 200, .length = 1}, [120] = {.index = 201, .length = 2}, [121] = {.index = 203, .length = 1}, [122] = {.index = 204, .length = 4}, [123] = {.index = 208, .length = 1}, [124] = {.index = 209, .length = 2}, [125] = {.index = 211, .length = 3}, [126] = {.index = 214, .length = 1}, [127] = {.index = 215, .length = 2}, [128] = {.index = 217, .length = 2}, [129] = {.index = 219, .length = 3}, [130] = {.index = 222, .length = 4}, [131] = {.index = 226, .length = 3}, [132] = {.index = 229, .length = 2}, [133] = {.index = 231, .length = 2}, [134] = {.index = 233, .length = 1}, [135] = {.index = 234, .length = 3}, [136] = {.index = 237, .length = 3}, [137] = {.index = 240, .length = 1}, [138] = {.index = 241, .length = 2}, [139] = {.index = 243, .length = 3}, [140] = {.index = 246, .length = 4}, [141] = {.index = 250, .length = 2}, [142] = {.index = 252, .length = 1}, [143] = {.index = 253, .length = 1}, [144] = {.index = 254, .length = 2}, [145] = {.index = 256, .length = 2}, [146] = {.index = 258, .length = 2}, [147] = {.index = 260, .length = 4}, [148] = {.index = 264, .length = 2}, [149] = {.index = 266, .length = 3}, [150] = {.index = 269, .length = 4}, [151] = {.index = 273, .length = 2}, [152] = {.index = 275, .length = 2}, [153] = {.index = 277, .length = 3}, }; static const TSFieldMapEntry ts_field_map_entries[] = { [0] = {field_type, 0}, [1] = {field_directive, 0}, [2] = {field_argument, 1}, {field_operator, 0}, [4] = {field_declarator, 1}, [5] = {field_name, 0}, [6] = {field_arguments, 1}, {field_function, 0}, [8] = {field_body, 1}, [9] = {field_name, 1}, [10] = {field_value, 1}, [11] = {field_scope, 0}, [12] = {field_arguments, 1}, {field_name, 0}, [14] = {field_type, 1}, [15] = {field_declarator, 0}, {field_parameters, 1}, [17] = {field_body, 1}, {field_declarator, 0}, [19] = {field_declarator, 0}, [20] = {field_pattern, 0}, [21] = {field_argument, 0}, {field_operator, 1}, [23] = {field_type, 0}, {field_value, 1}, [25] = {field_body, 1}, {field_captures, 0}, [27] = {field_parameters, 0}, [28] = {field_name, 1}, {field_scope, 0, .inherited = true}, [30] = {field_path, 1}, [31] = {field_argument, 1}, {field_directive, 0}, [33] = {field_declarator, 1}, {field_type, 0}, [35] = {field_declarator, 2}, [36] = {field_body, 2}, {field_value, 1}, [38] = {field_type, 2}, [39] = {field_body, 2}, [40] = {field_name, 2}, [41] = {field_body, 2}, {field_name, 1}, [43] = {field_base, 2, .inherited = true}, {field_name, 1}, [45] = {field_condition, 1}, {field_consequence, 2}, [47] = {field_body, 2}, {field_condition, 1}, [49] = {field_label, 1}, [50] = {field_left, 0}, {field_operator, 1}, {field_right, 2}, [53] = {field_label, 0}, [54] = {field_type, 0, .inherited = true}, [55] = {field_parameters, 1}, [56] = {field_declarator, 2}, {field_type, 1, .inherited = true}, [58] = {field_arguments, 2}, {field_type, 1}, [60] = {field_declarator, 2}, {field_type, 1}, [62] = {field_placement, 1}, {field_type, 2}, [64] = {field_declarator, 1}, {field_type, 0, .inherited = true}, [66] = {field_body, 2}, {field_declarator, 1}, {field_type, 0, .inherited = true}, [69] = {field_declarator, 0}, {field_value, 1}, [71] = {field_body, 2}, {field_declarator, 0}, [73] = {field_left, 0}, {field_right, 2}, [75] = {field_argument, 0}, {field_field, 2}, {field_operator, 1}, [78] = {field_argument, 0}, {field_field, 2}, [80] = {field_body, 2}, {field_captures, 0}, {field_declarator, 1}, [83] = {field_body, 2}, {field_declarator, 1}, [85] = {field_name, 1}, {field_value, 2}, [87] = {field_name, 1}, {field_parameters, 2}, [89] = {field_condition, 1}, [90] = {field_alternative, 2}, {field_name, 1}, [92] = {field_declarator, 2}, {field_type, 0}, [94] = {field_type, 1}, {field_value, 3}, [96] = {field_declarator, 3}, [97] = {field_arguments, 3}, {field_type, 2}, [99] = {field_declarator, 3}, {field_type, 2}, [101] = {field_placement, 2}, {field_type, 3}, [103] = {field_name, 2}, {field_prefix, 0}, [105] = {field_body, 3}, {field_name, 2}, [107] = {field_base, 3, .inherited = true}, {field_name, 2}, [109] = {field_base, 1}, [110] = {field_base, 2, .inherited = true}, {field_body, 3}, {field_name, 1}, [113] = {field_body, 3}, [114] = {field_name, 3}, [115] = {field_body, 3}, {field_name, 1}, [117] = {field_condition, 2}, {field_consequence, 3}, [119] = {field_arguments, 3}, {field_declarator, 2}, {field_type, 1}, [122] = {field_arguments, 3}, {field_placement, 1}, {field_type, 2}, [125] = {field_declarator, 3}, {field_placement, 1}, {field_type, 2}, [128] = {field_declarator, 0}, {field_value, 2}, [130] = {field_declarator, 1}, {field_declarator, 2, .inherited = true}, {field_type, 0, .inherited = true}, [133] = {field_declarator, 0, .inherited = true}, {field_declarator, 1, .inherited = true}, [135] = {field_body, 3}, {field_declarator, 2}, {field_type, 1, .inherited = true}, [138] = {field_declarator, 0}, {field_size, 2}, [140] = {field_argument, 0}, {field_index, 2}, [142] = {field_declarator, 0}, {field_default_value, 2}, [144] = {field_size, 1}, [145] = {field_body, 3}, {field_declarator, 1}, [147] = {field_name, 1}, {field_parameters, 2}, {field_value, 3}, [150] = {field_alternative, 3}, {field_condition, 1}, [152] = {field_alternative, 3}, {field_name, 1}, [154] = {field_declarator, 3}, {field_type, 1}, [156] = {field_declarator, 2}, {field_declarator, 3, .inherited = true}, {field_type, 1}, [159] = {field_arguments, 4}, {field_declarator, 3}, {field_type, 2}, [162] = {field_arguments, 4}, {field_placement, 2}, {field_type, 3}, [165] = {field_declarator, 4}, {field_placement, 2}, {field_type, 3}, [168] = {field_name, 0}, {field_value, 2}, [170] = {field_base, 3, .inherited = true}, {field_body, 4}, {field_name, 2}, [173] = {field_default_value, 1}, {field_type, 0, .inherited = true}, [175] = {field_body, 4}, {field_name, 2}, [177] = {field_body, 4}, [178] = {field_body, 4}, {field_name, 3}, [180] = {field_body, 4}, {field_name, 1}, [182] = {field_initializer, 1}, {field_value, 2}, [184] = {field_declarator, 1}, {field_type, 0, .inherited = true}, {field_value, 2}, [187] = {field_alternative, 4}, {field_condition, 1}, {field_consequence, 2}, [190] = {field_body, 1}, {field_condition, 3}, [192] = {field_designator, 0}, {field_value, 2}, [194] = {field_value, 3}, [195] = {field_default_type, 2}, [196] = {field_default_value, 2}, {field_type, 0, .inherited = true}, [198] = {field_name, 1}, {field_type, 3}, [200] = {field_condition, 2}, [201] = {field_body, 2}, {field_parameters, 1}, [203] = {field_length, 1}, [204] = {field_arguments, 4}, {field_declarator, 3}, {field_placement, 1}, {field_type, 2}, [208] = {field_declarator, 4}, [209] = {field_declarator, 0}, {field_size, 3}, [211] = {field_alternative, 4}, {field_condition, 0}, {field_consequence, 2}, [214] = {field_size, 2}, [215] = {field_declarator, 1}, {field_default_value, 3}, [217] = {field_alternative, 4}, {field_condition, 1}, [219] = {field_declarator, 3}, {field_declarator, 4, .inherited = true}, {field_type, 2}, [222] = {field_arguments, 5}, {field_declarator, 4}, {field_placement, 2}, {field_type, 3}, [226] = {field_declarator, 1}, {field_default_value, 2}, {field_type, 0, .inherited = true}, [229] = {field_body, 5}, {field_name, 2}, [231] = {field_body, 5}, {field_name, 3}, [233] = {field_body, 5}, [234] = {field_declarator, 1}, {field_type, 0, .inherited = true}, {field_value, 3}, [237] = {field_alternative, 5}, {field_condition, 2}, {field_consequence, 3}, [240] = {field_initializer, 2}, [241] = {field_default_type, 3}, {field_name, 1}, [243] = {field_declarator, 1}, {field_default_value, 3}, {field_type, 0, .inherited = true}, [246] = {field_declarator, 1}, {field_declarator, 2, .inherited = true}, {field_default_value, 3}, {field_type, 0, .inherited = true}, [250] = {field_body, 6}, {field_name, 3}, [252] = {field_update, 4}, [253] = {field_condition, 3}, [254] = {field_initializer, 2}, {field_update, 4}, [256] = {field_condition, 3}, {field_initializer, 2}, [258] = {field_condition, 2}, {field_message, 4}, [260] = {field_declarator, 1}, {field_declarator, 2, .inherited = true}, {field_default_value, 4}, {field_type, 0, .inherited = true}, [264] = {field_condition, 3}, {field_update, 5}, [266] = {field_condition, 3}, {field_initializer, 2}, {field_update, 5}, [269] = {field_body, 7}, {field_declarator, 3}, {field_right, 5}, {field_type, 2, .inherited = true}, [273] = {field_initializer, 2}, {field_update, 5}, [275] = {field_condition, 4}, {field_initializer, 2}, [277] = {field_condition, 4}, {field_initializer, 2}, {field_update, 6}, }; static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = { [0] = {0}, [1] = { [0] = alias_sym_type_identifier, }, [11] = { [0] = alias_sym_namespace_identifier, }, [12] = { [0] = alias_sym_type_identifier, }, [25] = { [1] = alias_sym_type_identifier, }, [26] = { [1] = alias_sym_type_identifier, }, [39] = { [1] = alias_sym_statement_identifier, }, [41] = { [0] = alias_sym_statement_identifier, }, [53] = { [2] = alias_sym_field_identifier, }, [70] = { [1] = alias_sym_type_identifier, }, [73] = { [0] = alias_sym_field_identifier, }, [78] = { [1] = alias_sym_field_identifier, }, [79] = { [1] = alias_sym_type_identifier, }, [88] = { [0] = alias_sym_field_identifier, }, [89] = { [1] = alias_sym_field_identifier, }, [115] = { [2] = alias_sym_type_identifier, }, [118] = { [1] = alias_sym_type_identifier, }, [138] = { [1] = alias_sym_type_identifier, }, }; static const uint16_t ts_non_terminal_alias_map[] = { 0, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { START_LEXER(); eof = lexer->eof(lexer); switch (state) { case 0: if (eof) ADVANCE(205); if (lookahead == '!') ADVANCE(261); if (lookahead == '"') ADVANCE(368); if (lookahead == '#') ADVANCE(173); if (lookahead == '%') ADVANCE(283); if (lookahead == '&') ADVANCE(292); if (lookahead == '\'') ADVANCE(359); if (lookahead == '(') ADVANCE(210); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(279); if (lookahead == '+') ADVANCE(274); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(264); if (lookahead == '.') ADVANCE(337); if (lookahead == '/') ADVANCE(281); if (lookahead == '0') ADVANCE(344); if (lookahead == ':') ADVANCE(322); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(300); if (lookahead == '=') ADVANCE(318); if (lookahead == '>') ADVANCE(450); if (lookahead == '?') ADVANCE(323); if (lookahead == 'F') ADVANCE(399); if (lookahead == 'L') ADVANCE(382); if (lookahead == 'T') ADVANCE(403); if (lookahead == 'U') ADVANCE(384); if (lookahead == '[') ADVANCE(314); if (lookahead == '\\') SKIP(200) if (lookahead == ']') ADVANCE(316); if (lookahead == '^') ADVANCE(289); if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(407); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 't') ADVANCE(434); if (lookahead == 'u') ADVANCE(386); if (lookahead == 'v') ADVANCE(430); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(286); if (lookahead == '}') ADVANCE(311); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(203) if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); if (('A' <= lookahead && lookahead <= '_') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 1: if (lookahead == '\n') SKIP(105) END_STATE(); case 2: if (lookahead == '\n') SKIP(105) if (lookahead == '\r') SKIP(1) END_STATE(); case 3: if (lookahead == '\n') SKIP(106) END_STATE(); case 4: if (lookahead == '\n') SKIP(106) if (lookahead == '\r') SKIP(3) END_STATE(); case 5: if (lookahead == '\n') SKIP(147) END_STATE(); case 6: if (lookahead == '\n') SKIP(147) if (lookahead == '\r') SKIP(5) END_STATE(); case 7: if (lookahead == '\n') SKIP(119) END_STATE(); case 8: if (lookahead == '\n') SKIP(119) if (lookahead == '\r') SKIP(7) END_STATE(); case 9: if (lookahead == '\n') SKIP(120) END_STATE(); case 10: if (lookahead == '\n') SKIP(120) if (lookahead == '\r') SKIP(9) END_STATE(); case 11: if (lookahead == '\n') SKIP(108) END_STATE(); case 12: if (lookahead == '\n') SKIP(108) if (lookahead == '\r') SKIP(11) END_STATE(); case 13: if (lookahead == '\n') SKIP(109) END_STATE(); case 14: if (lookahead == '\n') SKIP(109) if (lookahead == '\r') SKIP(13) END_STATE(); case 15: if (lookahead == '\n') SKIP(99) END_STATE(); case 16: if (lookahead == '\n') SKIP(99) if (lookahead == '\r') SKIP(15) END_STATE(); case 17: if (lookahead == '\n') SKIP(100) END_STATE(); case 18: if (lookahead == '\n') SKIP(100) if (lookahead == '\r') SKIP(17) END_STATE(); case 19: if (lookahead == '\n') SKIP(103) END_STATE(); case 20: if (lookahead == '\n') SKIP(103) if (lookahead == '\r') SKIP(19) END_STATE(); case 21: if (lookahead == '\n') SKIP(121) END_STATE(); case 22: if (lookahead == '\n') SKIP(121) if (lookahead == '\r') SKIP(21) END_STATE(); case 23: if (lookahead == '\n') SKIP(122) END_STATE(); case 24: if (lookahead == '\n') SKIP(122) if (lookahead == '\r') SKIP(23) END_STATE(); case 25: if (lookahead == '\n') SKIP(112) END_STATE(); case 26: if (lookahead == '\n') SKIP(112) if (lookahead == '\r') SKIP(25) END_STATE(); case 27: if (lookahead == '\n') SKIP(149) END_STATE(); case 28: if (lookahead == '\n') SKIP(149) if (lookahead == '\r') SKIP(27) END_STATE(); case 29: if (lookahead == '\n') SKIP(123) END_STATE(); case 30: if (lookahead == '\n') SKIP(123) if (lookahead == '\r') SKIP(29) END_STATE(); case 31: if (lookahead == '\n') SKIP(127) END_STATE(); case 32: if (lookahead == '\n') SKIP(127) if (lookahead == '\r') SKIP(31) END_STATE(); case 33: if (lookahead == '\n') SKIP(114) END_STATE(); case 34: if (lookahead == '\n') SKIP(114) if (lookahead == '\r') SKIP(33) END_STATE(); case 35: if (lookahead == '\n') SKIP(129) END_STATE(); case 36: if (lookahead == '\n') SKIP(129) if (lookahead == '\r') SKIP(35) END_STATE(); case 37: if (lookahead == '\n') SKIP(139) END_STATE(); case 38: if (lookahead == '\n') SKIP(139) if (lookahead == '\r') SKIP(37) END_STATE(); case 39: if (lookahead == '\n') SKIP(125) END_STATE(); case 40: if (lookahead == '\n') SKIP(125) if (lookahead == '\r') SKIP(39) END_STATE(); case 41: if (lookahead == '\n') SKIP(126) END_STATE(); case 42: if (lookahead == '\n') SKIP(126) if (lookahead == '\r') SKIP(41) END_STATE(); case 43: if (lookahead == '\n') SKIP(104) END_STATE(); case 44: if (lookahead == '\n') SKIP(104) if (lookahead == '\r') SKIP(43) END_STATE(); case 45: if (lookahead == '\n') SKIP(137) END_STATE(); case 46: if (lookahead == '\n') SKIP(137) if (lookahead == '\r') SKIP(45) END_STATE(); case 47: if (lookahead == '\n') SKIP(116) END_STATE(); case 48: if (lookahead == '\n') SKIP(116) if (lookahead == '\r') SKIP(47) END_STATE(); case 49: if (lookahead == '\n') SKIP(130) END_STATE(); case 50: if (lookahead == '\n') SKIP(130) if (lookahead == '\r') SKIP(49) END_STATE(); case 51: if (lookahead == '\n') SKIP(150) END_STATE(); case 52: if (lookahead == '\n') SKIP(150) if (lookahead == '\r') SKIP(51) END_STATE(); case 53: if (lookahead == '\n') SKIP(118) END_STATE(); case 54: if (lookahead == '\n') SKIP(118) if (lookahead == '\r') SKIP(53) END_STATE(); case 55: if (lookahead == '\n') SKIP(151) END_STATE(); case 56: if (lookahead == '\n') SKIP(151) if (lookahead == '\r') SKIP(55) END_STATE(); case 57: if (lookahead == '\n') SKIP(110) END_STATE(); case 58: if (lookahead == '\n') SKIP(110) if (lookahead == '\r') SKIP(57) END_STATE(); case 59: if (lookahead == '\n') SKIP(61) END_STATE(); case 60: if (lookahead == '\n') SKIP(61) if (lookahead == '\r') SKIP(59) END_STATE(); case 61: if (lookahead == '\n') ADVANCE(207); if (lookahead == '!') ADVANCE(165); if (lookahead == '%') ADVANCE(282); if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(272); if (lookahead == '-') ADVANCE(263); if (lookahead == '/') ADVANCE(280); if (lookahead == '<') ADVANCE(301); if (lookahead == '=') ADVANCE(166); if (lookahead == '>') ADVANCE(295); if (lookahead == '\\') SKIP(60) if (lookahead == '^') ADVANCE(288); if (lookahead == '|') ADVANCE(287); if (lookahead == '\t' || lookahead == '\r' || lookahead == ' ') SKIP(61) END_STATE(); case 62: if (lookahead == '\n') SKIP(153) END_STATE(); case 63: if (lookahead == '\n') SKIP(153) if (lookahead == '\r') SKIP(62) END_STATE(); case 64: if (lookahead == '\n') SKIP(152) END_STATE(); case 65: if (lookahead == '\n') SKIP(152) if (lookahead == '\r') SKIP(64) END_STATE(); case 66: if (lookahead == '\n') SKIP(140) END_STATE(); case 67: if (lookahead == '\n') SKIP(140) if (lookahead == '\r') SKIP(66) END_STATE(); case 68: if (lookahead == '\n') SKIP(141) if (lookahead == '"') ADVANCE(368); if (lookahead == '/') ADVANCE(369); if (lookahead == '\\') ADVANCE(69); if (lookahead == '\t' || lookahead == '\r' || lookahead == ' ') ADVANCE(372); if (lookahead != 0) ADVANCE(373); END_STATE(); case 69: if (lookahead == '\n') ADVANCE(375); if (lookahead == '\r') ADVANCE(374); if (lookahead == 'U') ADVANCE(197); if (lookahead == 'u') ADVANCE(193); if (lookahead == 'x') ADVANCE(191); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(377); if (lookahead != 0) ADVANCE(374); END_STATE(); case 70: if (lookahead == '\n') ADVANCE(208); if (lookahead == '(') ADVANCE(210); if (lookahead == '/') ADVANCE(252); if (lookahead == '\\') ADVANCE(250); if (lookahead == '\t' || lookahead == '\r' || lookahead == ' ') ADVANCE(249); if (lookahead != 0) ADVANCE(253); END_STATE(); case 71: if (lookahead == '\n') ADVANCE(208); if (lookahead == '/') ADVANCE(252); if (lookahead == '\\') ADVANCE(250); if (lookahead == '\t' || lookahead == '\r' || lookahead == ' ') ADVANCE(249); if (lookahead != 0) ADVANCE(253); END_STATE(); case 72: if (lookahead == '\n') SKIP(163) if (lookahead == '/') ADVANCE(362); if (lookahead == '\\') ADVANCE(361); if (lookahead == '\t' || lookahead == '\r' || lookahead == ' ') ADVANCE(363); if (lookahead != 0 && lookahead != '\'') ADVANCE(360); END_STATE(); case 73: if (lookahead == '\n') SKIP(107) END_STATE(); case 74: if (lookahead == '\n') SKIP(107) if (lookahead == '\r') SKIP(73) END_STATE(); case 75: if (lookahead == '\n') SKIP(101) END_STATE(); case 76: if (lookahead == '\n') SKIP(101) if (lookahead == '\r') SKIP(75) END_STATE(); case 77: if (lookahead == '\n') SKIP(102) END_STATE(); case 78: if (lookahead == '\n') SKIP(102) if (lookahead == '\r') SKIP(77) END_STATE(); case 79: if (lookahead == '\n') SKIP(131) END_STATE(); case 80: if (lookahead == '\n') SKIP(131) if (lookahead == '\r') SKIP(79) END_STATE(); case 81: if (lookahead == '\n') SKIP(124) END_STATE(); case 82: if (lookahead == '\n') SKIP(124) if (lookahead == '\r') SKIP(81) END_STATE(); case 83: if (lookahead == '\n') SKIP(148) END_STATE(); case 84: if (lookahead == '\n') SKIP(148) if (lookahead == '\r') SKIP(83) END_STATE(); case 85: if (lookahead == '\n') SKIP(133) END_STATE(); case 86: if (lookahead == '\n') SKIP(133) if (lookahead == '\r') SKIP(85) END_STATE(); case 87: if (lookahead == '\n') SKIP(128) END_STATE(); case 88: if (lookahead == '\n') SKIP(128) if (lookahead == '\r') SKIP(87) END_STATE(); case 89: if (lookahead == '\n') SKIP(135) END_STATE(); case 90: if (lookahead == '\n') SKIP(135) if (lookahead == '\r') SKIP(89) END_STATE(); case 91: if (lookahead == '\n') SKIP(134) END_STATE(); case 92: if (lookahead == '\n') SKIP(134) if (lookahead == '\r') SKIP(91) END_STATE(); case 93: if (lookahead == '\n') SKIP(138) END_STATE(); case 94: if (lookahead == '\n') SKIP(138) if (lookahead == '\r') SKIP(93) END_STATE(); case 95: if (lookahead == '\n') SKIP(132) END_STATE(); case 96: if (lookahead == '\n') SKIP(132) if (lookahead == '\r') SKIP(95) END_STATE(); case 97: if (lookahead == '\n') SKIP(136) END_STATE(); case 98: if (lookahead == '\n') SKIP(136) if (lookahead == '\r') SKIP(97) END_STATE(); case 99: if (lookahead == '!') ADVANCE(261); if (lookahead == '"') ADVANCE(368); if (lookahead == '%') ADVANCE(283); if (lookahead == '&') ADVANCE(292); if (lookahead == '\'') ADVANCE(359); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(279); if (lookahead == '+') ADVANCE(274); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(265); if (lookahead == '.') ADVANCE(337); if (lookahead == '/') ADVANCE(281); if (lookahead == '0') ADVANCE(344); if (lookahead == ':') ADVANCE(322); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(300); if (lookahead == '=') ADVANCE(318); if (lookahead == '>') ADVANCE(296); if (lookahead == '?') ADVANCE(323); if (lookahead == 'F') ADVANCE(399); if (lookahead == 'L') ADVANCE(382); if (lookahead == 'T') ADVANCE(403); if (lookahead == 'U') ADVANCE(384); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(16) if (lookahead == ']') ADVANCE(316); if (lookahead == '^') ADVANCE(289); if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(407); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 't') ADVANCE(434); if (lookahead == 'u') ADVANCE(386); if (lookahead == 'v') ADVANCE(430); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(286); if (lookahead == '}') ADVANCE(311); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(99) if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); if (('A' <= lookahead && lookahead <= '_') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 100: if (lookahead == '!') ADVANCE(261); if (lookahead == '"') ADVANCE(368); if (lookahead == '%') ADVANCE(283); if (lookahead == '&') ADVANCE(292); if (lookahead == '\'') ADVANCE(359); if (lookahead == '(') ADVANCE(259); if (lookahead == '*') ADVANCE(279); if (lookahead == '+') ADVANCE(274); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(265); if (lookahead == '.') ADVANCE(337); if (lookahead == '/') ADVANCE(281); if (lookahead == '0') ADVANCE(344); if (lookahead == ':') ADVANCE(164); if (lookahead == '<') ADVANCE(300); if (lookahead == '=') ADVANCE(318); if (lookahead == '>') ADVANCE(450); if (lookahead == '?') ADVANCE(323); if (lookahead == 'F') ADVANCE(399); if (lookahead == 'L') ADVANCE(382); if (lookahead == 'T') ADVANCE(403); if (lookahead == 'U') ADVANCE(384); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(18) if (lookahead == '^') ADVANCE(289); if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(407); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 't') ADVANCE(434); if (lookahead == 'u') ADVANCE(386); if (lookahead == 'v') ADVANCE(430); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(286); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(100) if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 101: if (lookahead == '!') ADVANCE(261); if (lookahead == '"') ADVANCE(368); if (lookahead == '%') ADVANCE(282); if (lookahead == '&') ADVANCE(291); if (lookahead == '\'') ADVANCE(359); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(275); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(266); if (lookahead == '.') ADVANCE(337); if (lookahead == '/') ADVANCE(280); if (lookahead == '0') ADVANCE(344); if (lookahead == ':') ADVANCE(322); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(301); if (lookahead == '=') ADVANCE(166); if (lookahead == '>') ADVANCE(295); if (lookahead == '?') ADVANCE(323); if (lookahead == 'F') ADVANCE(399); if (lookahead == 'L') ADVANCE(382); if (lookahead == 'T') ADVANCE(403); if (lookahead == 'U') ADVANCE(384); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(76) if (lookahead == ']') ADVANCE(316); if (lookahead == '^') ADVANCE(288); if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(407); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 't') ADVANCE(434); if (lookahead == 'u') ADVANCE(386); if (lookahead == 'v') ADVANCE(430); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(287); if (lookahead == '}') ADVANCE(311); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(101) if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); if (('A' <= lookahead && lookahead <= '_') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 102: if (lookahead == '!') ADVANCE(261); if (lookahead == '"') ADVANCE(368); if (lookahead == '%') ADVANCE(282); if (lookahead == '&') ADVANCE(291); if (lookahead == '\'') ADVANCE(359); if (lookahead == '(') ADVANCE(259); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(275); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(266); if (lookahead == '.') ADVANCE(337); if (lookahead == '/') ADVANCE(280); if (lookahead == '0') ADVANCE(344); if (lookahead == ':') ADVANCE(164); if (lookahead == '<') ADVANCE(301); if (lookahead == '=') ADVANCE(166); if (lookahead == '>') ADVANCE(450); if (lookahead == '?') ADVANCE(323); if (lookahead == 'F') ADVANCE(399); if (lookahead == 'L') ADVANCE(382); if (lookahead == 'T') ADVANCE(403); if (lookahead == 'U') ADVANCE(384); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(78) if (lookahead == '^') ADVANCE(288); if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(407); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 't') ADVANCE(434); if (lookahead == 'u') ADVANCE(386); if (lookahead == 'v') ADVANCE(430); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(287); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(102) if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 103: if (lookahead == '!') ADVANCE(261); if (lookahead == '"') ADVANCE(146); if (lookahead == '%') ADVANCE(283); if (lookahead == '&') ADVANCE(292); if (lookahead == '(') ADVANCE(154); if (lookahead == '*') ADVANCE(279); if (lookahead == '+') ADVANCE(276); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(268); if (lookahead == '/') ADVANCE(281); if (lookahead == ':') ADVANCE(164); if (lookahead == '<') ADVANCE(300); if (lookahead == '=') ADVANCE(318); if (lookahead == '>') ADVANCE(296); if (lookahead == '[') ADVANCE(170); if (lookahead == '\\') SKIP(20) if (lookahead == '^') ADVANCE(289); if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(424); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 'u') ADVANCE(420); if (lookahead == 'v') ADVANCE(430); if (lookahead == '|') ADVANCE(286); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(103) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 104: if (lookahead == '!') ADVANCE(261); if (lookahead == '"') ADVANCE(146); if (lookahead == '%') ADVANCE(283); if (lookahead == '&') ADVANCE(292); if (lookahead == '(') ADVANCE(154); if (lookahead == '*') ADVANCE(279); if (lookahead == '+') ADVANCE(276); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(268); if (lookahead == '/') ADVANCE(281); if (lookahead == '<') ADVANCE(300); if (lookahead == '=') ADVANCE(318); if (lookahead == '>') ADVANCE(296); if (lookahead == '[') ADVANCE(171); if (lookahead == '\\') SKIP(44) if (lookahead == '^') ADVANCE(289); if (lookahead == '|') ADVANCE(286); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(104) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 105: if (lookahead == '!') ADVANCE(260); if (lookahead == '"') ADVANCE(368); if (lookahead == '#') ADVANCE(173); if (lookahead == '&') ADVANCE(291); if (lookahead == '\'') ADVANCE(359); if (lookahead == '(') ADVANCE(259); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(275); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(267); if (lookahead == '.') ADVANCE(185); if (lookahead == '/') ADVANCE(155); if (lookahead == '0') ADVANCE(344); if (lookahead == ':') ADVANCE(164); if (lookahead == ';') ADVANCE(306); if (lookahead == 'F') ADVANCE(399); if (lookahead == 'L') ADVANCE(382); if (lookahead == 'T') ADVANCE(403); if (lookahead == 'U') ADVANCE(384); if (lookahead == '[') ADVANCE(313); if (lookahead == '\\') SKIP(2) if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(407); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 't') ADVANCE(434); if (lookahead == 'u') ADVANCE(386); if (lookahead == 'v') ADVANCE(430); if (lookahead == '{') ADVANCE(310); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(105) if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 106: if (lookahead == '!') ADVANCE(260); if (lookahead == '"') ADVANCE(368); if (lookahead == '#') ADVANCE(180); if (lookahead == '&') ADVANCE(290); if (lookahead == '\'') ADVANCE(359); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(275); if (lookahead == '-') ADVANCE(267); if (lookahead == '.') ADVANCE(161); if (lookahead == '/') ADVANCE(155); if (lookahead == '0') ADVANCE(344); if (lookahead == ':') ADVANCE(164); if (lookahead == ';') ADVANCE(306); if (lookahead == 'F') ADVANCE(399); if (lookahead == 'L') ADVANCE(382); if (lookahead == 'T') ADVANCE(403); if (lookahead == 'U') ADVANCE(384); if (lookahead == '[') ADVANCE(313); if (lookahead == '\\') SKIP(4) if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(407); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 't') ADVANCE(434); if (lookahead == 'u') ADVANCE(386); if (lookahead == 'v') ADVANCE(430); if (lookahead == '{') ADVANCE(310); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(106) if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 107: if (lookahead == '!') ADVANCE(260); if (lookahead == '"') ADVANCE(368); if (lookahead == '#') ADVANCE(175); if (lookahead == '&') ADVANCE(291); if (lookahead == '\'') ADVANCE(359); if (lookahead == '(') ADVANCE(259); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(275); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(267); if (lookahead == '.') ADVANCE(185); if (lookahead == '/') ADVANCE(155); if (lookahead == '0') ADVANCE(344); if (lookahead == ':') ADVANCE(164); if (lookahead == ';') ADVANCE(306); if (lookahead == 'F') ADVANCE(399); if (lookahead == 'L') ADVANCE(382); if (lookahead == 'T') ADVANCE(403); if (lookahead == 'U') ADVANCE(384); if (lookahead == '[') ADVANCE(313); if (lookahead == '\\') SKIP(74) if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(407); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 't') ADVANCE(434); if (lookahead == 'u') ADVANCE(386); if (lookahead == 'v') ADVANCE(430); if (lookahead == '{') ADVANCE(310); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(107) if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 108: if (lookahead == '!') ADVANCE(260); if (lookahead == '"') ADVANCE(368); if (lookahead == '&') ADVANCE(291); if (lookahead == '\'') ADVANCE(359); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(275); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(267); if (lookahead == '.') ADVANCE(337); if (lookahead == '/') ADVANCE(155); if (lookahead == '0') ADVANCE(344); if (lookahead == ':') ADVANCE(164); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(299); if (lookahead == '=') ADVANCE(317); if (lookahead == '>') ADVANCE(450); if (lookahead == 'F') ADVANCE(399); if (lookahead == 'L') ADVANCE(382); if (lookahead == 'T') ADVANCE(403); if (lookahead == 'U') ADVANCE(384); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(12) if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(407); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 't') ADVANCE(434); if (lookahead == 'u') ADVANCE(386); if (lookahead == 'v') ADVANCE(430); if (lookahead == '{') ADVANCE(310); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(108) if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 109: if (lookahead == '!') ADVANCE(260); if (lookahead == '"') ADVANCE(368); if (lookahead == '&') ADVANCE(290); if (lookahead == '\'') ADVANCE(359); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(275); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(267); if (lookahead == '.') ADVANCE(337); if (lookahead == '/') ADVANCE(155); if (lookahead == '0') ADVANCE(344); if (lookahead == ':') ADVANCE(164); if (lookahead == ';') ADVANCE(306); if (lookahead == '=') ADVANCE(317); if (lookahead == '>') ADVANCE(450); if (lookahead == 'F') ADVANCE(399); if (lookahead == 'L') ADVANCE(382); if (lookahead == 'T') ADVANCE(403); if (lookahead == 'U') ADVANCE(384); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(14) if (lookahead == ']') ADVANCE(316); if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(407); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 't') ADVANCE(434); if (lookahead == 'u') ADVANCE(386); if (lookahead == 'v') ADVANCE(430); if (lookahead == '{') ADVANCE(310); if (lookahead == '}') ADVANCE(311); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(109) if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 110: if (lookahead == '!') ADVANCE(260); if (lookahead == '&') ADVANCE(291); if (lookahead == '\'') ADVANCE(359); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(277); if (lookahead == '-') ADVANCE(271); if (lookahead == '.') ADVANCE(185); if (lookahead == '/') ADVANCE(155); if (lookahead == '0') ADVANCE(344); if (lookahead == ':') ADVANCE(321); if (lookahead == ';') ADVANCE(306); if (lookahead == '=') ADVANCE(317); if (lookahead == 'L') ADVANCE(391); if (lookahead == 'U') ADVANCE(392); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(58) if (lookahead == 'u') ADVANCE(393); if (lookahead == '{') ADVANCE(310); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(110) if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 111: if (lookahead == '!') ADVANCE(165); if (lookahead == '"') ADVANCE(368); if (lookahead == '%') ADVANCE(283); if (lookahead == '&') ADVANCE(292); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(279); if (lookahead == '+') ADVANCE(276); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(269); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(281); if (lookahead == ':') ADVANCE(321); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(300); if (lookahead == '=') ADVANCE(318); if (lookahead == '>') ADVANCE(296); if (lookahead == '?') ADVANCE(323); if (lookahead == 'L') ADVANCE(455); if (lookahead == 'U') ADVANCE(456); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(26) if (lookahead == ']') ADVANCE(316); if (lookahead == '^') ADVANCE(289); if (lookahead == 'u') ADVANCE(457); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(286); if (lookahead == '}') ADVANCE(311); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(112) if (('A' <= lookahead && lookahead <= '_') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(459); END_STATE(); case 112: if (lookahead == '!') ADVANCE(165); if (lookahead == '"') ADVANCE(368); if (lookahead == '%') ADVANCE(283); if (lookahead == '&') ADVANCE(292); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(279); if (lookahead == '+') ADVANCE(276); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(269); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(281); if (lookahead == ':') ADVANCE(321); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(300); if (lookahead == '=') ADVANCE(318); if (lookahead == '>') ADVANCE(296); if (lookahead == '?') ADVANCE(323); if (lookahead == 'L') ADVANCE(142); if (lookahead == 'U') ADVANCE(143); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(26) if (lookahead == ']') ADVANCE(316); if (lookahead == '^') ADVANCE(289); if (lookahead == 'u') ADVANCE(144); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(286); if (lookahead == '}') ADVANCE(311); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(112) END_STATE(); case 113: if (lookahead == '!') ADVANCE(165); if (lookahead == '"') ADVANCE(368); if (lookahead == '%') ADVANCE(283); if (lookahead == '&') ADVANCE(292); if (lookahead == '(') ADVANCE(259); if (lookahead == '*') ADVANCE(279); if (lookahead == '+') ADVANCE(276); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(269); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(281); if (lookahead == ':') ADVANCE(321); if (lookahead == '<') ADVANCE(300); if (lookahead == '=') ADVANCE(318); if (lookahead == '>') ADVANCE(450); if (lookahead == '?') ADVANCE(323); if (lookahead == 'L') ADVANCE(455); if (lookahead == 'U') ADVANCE(456); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(34) if (lookahead == '^') ADVANCE(289); if (lookahead == 'u') ADVANCE(457); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(286); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(114) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(459); END_STATE(); case 114: if (lookahead == '!') ADVANCE(165); if (lookahead == '"') ADVANCE(368); if (lookahead == '%') ADVANCE(283); if (lookahead == '&') ADVANCE(292); if (lookahead == '(') ADVANCE(259); if (lookahead == '*') ADVANCE(279); if (lookahead == '+') ADVANCE(276); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(269); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(281); if (lookahead == ':') ADVANCE(321); if (lookahead == '<') ADVANCE(300); if (lookahead == '=') ADVANCE(318); if (lookahead == '>') ADVANCE(450); if (lookahead == '?') ADVANCE(323); if (lookahead == 'L') ADVANCE(142); if (lookahead == 'U') ADVANCE(143); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(34) if (lookahead == '^') ADVANCE(289); if (lookahead == 'u') ADVANCE(144); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(286); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(114) END_STATE(); case 115: if (lookahead == '!') ADVANCE(165); if (lookahead == '"') ADVANCE(368); if (lookahead == '%') ADVANCE(282); if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(273); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(270); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(280); if (lookahead == ':') ADVANCE(321); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(301); if (lookahead == '=') ADVANCE(166); if (lookahead == '>') ADVANCE(295); if (lookahead == '?') ADVANCE(323); if (lookahead == 'L') ADVANCE(455); if (lookahead == 'U') ADVANCE(456); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(48) if (lookahead == ']') ADVANCE(316); if (lookahead == '^') ADVANCE(288); if (lookahead == 'u') ADVANCE(457); if (lookahead == '|') ADVANCE(287); if (lookahead == '}') ADVANCE(311); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(116) if (('A' <= lookahead && lookahead <= '_') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(459); END_STATE(); case 116: if (lookahead == '!') ADVANCE(165); if (lookahead == '"') ADVANCE(368); if (lookahead == '%') ADVANCE(282); if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(273); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(270); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(280); if (lookahead == ':') ADVANCE(321); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(301); if (lookahead == '=') ADVANCE(166); if (lookahead == '>') ADVANCE(295); if (lookahead == '?') ADVANCE(323); if (lookahead == 'L') ADVANCE(142); if (lookahead == 'U') ADVANCE(143); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(48) if (lookahead == ']') ADVANCE(316); if (lookahead == '^') ADVANCE(288); if (lookahead == 'u') ADVANCE(144); if (lookahead == '|') ADVANCE(287); if (lookahead == '}') ADVANCE(311); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(116) END_STATE(); case 117: if (lookahead == '!') ADVANCE(165); if (lookahead == '"') ADVANCE(368); if (lookahead == '%') ADVANCE(282); if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(273); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(270); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(280); if (lookahead == '<') ADVANCE(301); if (lookahead == '=') ADVANCE(166); if (lookahead == '>') ADVANCE(450); if (lookahead == '?') ADVANCE(323); if (lookahead == 'L') ADVANCE(455); if (lookahead == 'U') ADVANCE(456); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(54) if (lookahead == '^') ADVANCE(288); if (lookahead == 'u') ADVANCE(457); if (lookahead == '|') ADVANCE(287); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(118) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(459); END_STATE(); case 118: if (lookahead == '!') ADVANCE(165); if (lookahead == '"') ADVANCE(368); if (lookahead == '%') ADVANCE(282); if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(273); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(270); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(280); if (lookahead == '<') ADVANCE(301); if (lookahead == '=') ADVANCE(166); if (lookahead == '>') ADVANCE(450); if (lookahead == '?') ADVANCE(323); if (lookahead == 'L') ADVANCE(142); if (lookahead == 'U') ADVANCE(143); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(54) if (lookahead == '^') ADVANCE(288); if (lookahead == 'u') ADVANCE(144); if (lookahead == '|') ADVANCE(287); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(118) END_STATE(); case 119: if (lookahead == '!') ADVANCE(165); if (lookahead == '#') ADVANCE(178); if (lookahead == '%') ADVANCE(282); if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(273); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(270); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(280); if (lookahead == ':') ADVANCE(164); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(301); if (lookahead == '=') ADVANCE(166); if (lookahead == '>') ADVANCE(295); if (lookahead == '?') ADVANCE(323); if (lookahead == '[') ADVANCE(313); if (lookahead == '\\') SKIP(8) if (lookahead == '^') ADVANCE(288); if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(424); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 'u') ADVANCE(420); if (lookahead == 'v') ADVANCE(430); if (lookahead == '|') ADVANCE(287); if (lookahead == '}') ADVANCE(311); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(119) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 120: if (lookahead == '!') ADVANCE(165); if (lookahead == '#') ADVANCE(176); if (lookahead == '%') ADVANCE(282); if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(272); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(263); if (lookahead == '/') ADVANCE(280); if (lookahead == ':') ADVANCE(164); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(301); if (lookahead == '=') ADVANCE(166); if (lookahead == '>') ADVANCE(295); if (lookahead == '[') ADVANCE(313); if (lookahead == '\\') SKIP(10) if (lookahead == '^') ADVANCE(288); if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(424); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 'u') ADVANCE(420); if (lookahead == 'v') ADVANCE(430); if (lookahead == '|') ADVANCE(287); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(120) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 121: if (lookahead == '!') ADVANCE(165); if (lookahead == '%') ADVANCE(283); if (lookahead == '&') ADVANCE(292); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(279); if (lookahead == '+') ADVANCE(276); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(269); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(281); if (lookahead == ':') ADVANCE(322); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(300); if (lookahead == '=') ADVANCE(318); if (lookahead == '>') ADVANCE(296); if (lookahead == '?') ADVANCE(323); if (lookahead == '[') ADVANCE(313); if (lookahead == '\\') SKIP(22) if (lookahead == '^') ADVANCE(289); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(286); if (lookahead == '}') ADVANCE(311); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(121) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 122: if (lookahead == '!') ADVANCE(165); if (lookahead == '%') ADVANCE(283); if (lookahead == '&') ADVANCE(292); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(279); if (lookahead == '+') ADVANCE(276); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(269); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(281); if (lookahead == ':') ADVANCE(322); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(300); if (lookahead == '=') ADVANCE(318); if (lookahead == '>') ADVANCE(296); if (lookahead == '?') ADVANCE(323); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(24) if (lookahead == ']') ADVANCE(316); if (lookahead == '^') ADVANCE(289); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(286); if (lookahead == '}') ADVANCE(311); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(122) if (('A' <= lookahead && lookahead <= '_') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 123: if (lookahead == '!') ADVANCE(165); if (lookahead == '%') ADVANCE(283); if (lookahead == '&') ADVANCE(292); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(279); if (lookahead == '+') ADVANCE(276); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(269); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(281); if (lookahead == ':') ADVANCE(321); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(300); if (lookahead == '=') ADVANCE(318); if (lookahead == '>') ADVANCE(296); if (lookahead == '?') ADVANCE(323); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(30) if (lookahead == ']') ADVANCE(316); if (lookahead == '^') ADVANCE(289); if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(424); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 'u') ADVANCE(420); if (lookahead == 'v') ADVANCE(430); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(286); if (lookahead == '}') ADVANCE(311); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(123) if (('A' <= lookahead && lookahead <= '_') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 124: if (lookahead == '!') ADVANCE(165); if (lookahead == '%') ADVANCE(283); if (lookahead == '&') ADVANCE(292); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(279); if (lookahead == '+') ADVANCE(276); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(269); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(281); if (lookahead == ':') ADVANCE(321); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(300); if (lookahead == '=') ADVANCE(318); if (lookahead == '>') ADVANCE(296); if (lookahead == '?') ADVANCE(323); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(82) if (lookahead == ']') ADVANCE(316); if (lookahead == '^') ADVANCE(289); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(286); if (lookahead == '}') ADVANCE(311); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(124) if (('A' <= lookahead && lookahead <= '_') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 125: if (lookahead == '!') ADVANCE(165); if (lookahead == '%') ADVANCE(283); if (lookahead == '&') ADVANCE(292); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(279); if (lookahead == '+') ADVANCE(276); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(269); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(281); if (lookahead == ':') ADVANCE(321); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(300); if (lookahead == '=') ADVANCE(318); if (lookahead == '>') ADVANCE(296); if (lookahead == '?') ADVANCE(323); if (lookahead == '[') ADVANCE(315); if (lookahead == '\\') SKIP(40) if (lookahead == ']') ADVANCE(316); if (lookahead == '^') ADVANCE(289); if (lookahead == '|') ADVANCE(286); if (lookahead == '}') ADVANCE(311); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(125) END_STATE(); case 126: if (lookahead == '!') ADVANCE(165); if (lookahead == '%') ADVANCE(283); if (lookahead == '&') ADVANCE(292); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(279); if (lookahead == '+') ADVANCE(276); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(269); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(281); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(300); if (lookahead == '=') ADVANCE(318); if (lookahead == '>') ADVANCE(296); if (lookahead == '?') ADVANCE(323); if (lookahead == '[') ADVANCE(314); if (lookahead == '\\') SKIP(42) if (lookahead == '^') ADVANCE(289); if (lookahead == '|') ADVANCE(286); if (lookahead == '}') ADVANCE(311); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(126) END_STATE(); case 127: if (lookahead == '!') ADVANCE(165); if (lookahead == '%') ADVANCE(283); if (lookahead == '&') ADVANCE(292); if (lookahead == '(') ADVANCE(259); if (lookahead == '*') ADVANCE(279); if (lookahead == '+') ADVANCE(276); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(269); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(281); if (lookahead == ':') ADVANCE(322); if (lookahead == '<') ADVANCE(300); if (lookahead == '=') ADVANCE(318); if (lookahead == '>') ADVANCE(450); if (lookahead == '?') ADVANCE(323); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(32) if (lookahead == '^') ADVANCE(289); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(286); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(127) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 128: if (lookahead == '!') ADVANCE(165); if (lookahead == '%') ADVANCE(283); if (lookahead == '&') ADVANCE(292); if (lookahead == '(') ADVANCE(259); if (lookahead == '*') ADVANCE(279); if (lookahead == '+') ADVANCE(276); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(269); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(281); if (lookahead == ':') ADVANCE(321); if (lookahead == '<') ADVANCE(300); if (lookahead == '=') ADVANCE(318); if (lookahead == '>') ADVANCE(450); if (lookahead == '?') ADVANCE(323); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(88) if (lookahead == '^') ADVANCE(289); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(286); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(128) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 129: if (lookahead == '!') ADVANCE(165); if (lookahead == '%') ADVANCE(283); if (lookahead == '&') ADVANCE(292); if (lookahead == '(') ADVANCE(259); if (lookahead == '*') ADVANCE(279); if (lookahead == '+') ADVANCE(276); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(269); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(281); if (lookahead == '<') ADVANCE(300); if (lookahead == '=') ADVANCE(318); if (lookahead == '>') ADVANCE(450); if (lookahead == '?') ADVANCE(323); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(36) if (lookahead == '^') ADVANCE(289); if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(424); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 'u') ADVANCE(420); if (lookahead == 'v') ADVANCE(430); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(286); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(129) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 130: if (lookahead == '!') ADVANCE(165); if (lookahead == '%') ADVANCE(283); if (lookahead == '&') ADVANCE(292); if (lookahead == '(') ADVANCE(259); if (lookahead == '*') ADVANCE(279); if (lookahead == '+') ADVANCE(276); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(269); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(281); if (lookahead == '<') ADVANCE(300); if (lookahead == '=') ADVANCE(318); if (lookahead == '>') ADVANCE(450); if (lookahead == '?') ADVANCE(323); if (lookahead == '[') ADVANCE(315); if (lookahead == '\\') SKIP(50) if (lookahead == '^') ADVANCE(289); if (lookahead == '|') ADVANCE(286); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(130) END_STATE(); case 131: if (lookahead == '!') ADVANCE(165); if (lookahead == '%') ADVANCE(282); if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(273); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(270); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(280); if (lookahead == ':') ADVANCE(322); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(301); if (lookahead == '=') ADVANCE(318); if (lookahead == '>') ADVANCE(295); if (lookahead == '?') ADVANCE(323); if (lookahead == '[') ADVANCE(313); if (lookahead == '\\') SKIP(80) if (lookahead == '^') ADVANCE(288); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(287); if (lookahead == '}') ADVANCE(311); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(131) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 132: if (lookahead == '!') ADVANCE(165); if (lookahead == '%') ADVANCE(282); if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(273); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(270); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(280); if (lookahead == ':') ADVANCE(322); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(301); if (lookahead == '=') ADVANCE(166); if (lookahead == '>') ADVANCE(295); if (lookahead == '?') ADVANCE(323); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(96) if (lookahead == ']') ADVANCE(316); if (lookahead == '^') ADVANCE(288); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(287); if (lookahead == '}') ADVANCE(311); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(132) if (('A' <= lookahead && lookahead <= '_') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 133: if (lookahead == '!') ADVANCE(165); if (lookahead == '%') ADVANCE(282); if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(273); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(270); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(280); if (lookahead == ':') ADVANCE(164); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(301); if (lookahead == '=') ADVANCE(166); if (lookahead == '>') ADVANCE(295); if (lookahead == '?') ADVANCE(323); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(86) if (lookahead == ']') ADVANCE(172); if (lookahead == '^') ADVANCE(288); if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(424); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 'u') ADVANCE(420); if (lookahead == 'v') ADVANCE(430); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(287); if (lookahead == '}') ADVANCE(311); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(133) if (('A' <= lookahead && lookahead <= '_') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 134: if (lookahead == '!') ADVANCE(165); if (lookahead == '%') ADVANCE(282); if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(273); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(270); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(280); if (lookahead == ':') ADVANCE(321); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(301); if (lookahead == '=') ADVANCE(166); if (lookahead == '>') ADVANCE(295); if (lookahead == '?') ADVANCE(323); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(92) if (lookahead == ']') ADVANCE(316); if (lookahead == '^') ADVANCE(288); if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(424); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 'u') ADVANCE(420); if (lookahead == 'v') ADVANCE(430); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(287); if (lookahead == '}') ADVANCE(311); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(134) if (('A' <= lookahead && lookahead <= '_') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 135: if (lookahead == '!') ADVANCE(165); if (lookahead == '%') ADVANCE(282); if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(273); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(270); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(280); if (lookahead == ':') ADVANCE(321); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(301); if (lookahead == '=') ADVANCE(166); if (lookahead == '>') ADVANCE(295); if (lookahead == '?') ADVANCE(323); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(90) if (lookahead == ']') ADVANCE(316); if (lookahead == '^') ADVANCE(288); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(287); if (lookahead == '}') ADVANCE(311); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(135) if (('A' <= lookahead && lookahead <= '_') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 136: if (lookahead == '!') ADVANCE(165); if (lookahead == '%') ADVANCE(282); if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(273); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(270); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(280); if (lookahead == ':') ADVANCE(322); if (lookahead == '<') ADVANCE(301); if (lookahead == '=') ADVANCE(166); if (lookahead == '>') ADVANCE(450); if (lookahead == '?') ADVANCE(323); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(98) if (lookahead == '^') ADVANCE(288); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(287); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(136) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 137: if (lookahead == '!') ADVANCE(165); if (lookahead == '%') ADVANCE(282); if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(273); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(270); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(280); if (lookahead == ':') ADVANCE(321); if (lookahead == '<') ADVANCE(301); if (lookahead == '=') ADVANCE(166); if (lookahead == '>') ADVANCE(450); if (lookahead == '?') ADVANCE(323); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(46) if (lookahead == '^') ADVANCE(288); if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(424); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 'u') ADVANCE(420); if (lookahead == 'v') ADVANCE(430); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(287); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(137) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 138: if (lookahead == '!') ADVANCE(165); if (lookahead == '%') ADVANCE(282); if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(273); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(270); if (lookahead == '.') ADVANCE(336); if (lookahead == '/') ADVANCE(280); if (lookahead == ':') ADVANCE(321); if (lookahead == '<') ADVANCE(301); if (lookahead == '=') ADVANCE(166); if (lookahead == '>') ADVANCE(450); if (lookahead == '?') ADVANCE(323); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(94) if (lookahead == '^') ADVANCE(288); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(287); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(138) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 139: if (lookahead == '"') ADVANCE(368); if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == '*') ADVANCE(278); if (lookahead == '/') ADVANCE(155); if (lookahead == ':') ADVANCE(164); if (lookahead == 'L') ADVANCE(383); if (lookahead == 'U') ADVANCE(385); if (lookahead == '[') ADVANCE(313); if (lookahead == '\\') SKIP(38) if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(424); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 'u') ADVANCE(387); if (lookahead == 'v') ADVANCE(430); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(139) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 140: if (lookahead == '"') ADVANCE(368); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == ',') ADVANCE(212); if (lookahead == '/') ADVANCE(155); if (lookahead == ':') ADVANCE(321); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(168); if (lookahead == '=') ADVANCE(317); if (lookahead == '>') ADVANCE(450); if (lookahead == 'L') ADVANCE(383); if (lookahead == 'U') ADVANCE(385); if (lookahead == '[') ADVANCE(314); if (lookahead == '\\') SKIP(67) if (lookahead == 'u') ADVANCE(388); if (lookahead == '{') ADVANCE(310); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(140) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 141: if (lookahead == '"') ADVANCE(368); if (lookahead == '/') ADVANCE(155); if (lookahead == '\\') ADVANCE(69); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(141) END_STATE(); case 142: if (lookahead == '"') ADVANCE(364); END_STATE(); case 143: if (lookahead == '"') ADVANCE(366); END_STATE(); case 144: if (lookahead == '"') ADVANCE(365); if (lookahead == '8') ADVANCE(145); END_STATE(); case 145: if (lookahead == '"') ADVANCE(367); END_STATE(); case 146: if (lookahead == '"') ADVANCE(454); END_STATE(); case 147: if (lookahead == '#') ADVANCE(174); if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(278); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(167); if (lookahead == '.') ADVANCE(160); if (lookahead == '/') ADVANCE(155); if (lookahead == ':') ADVANCE(164); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(299); if (lookahead == '=') ADVANCE(317); if (lookahead == '>') ADVANCE(450); if (lookahead == '[') ADVANCE(313); if (lookahead == '\\') SKIP(6) if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(424); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 'u') ADVANCE(420); if (lookahead == 'v') ADVANCE(430); if (lookahead == '{') ADVANCE(310); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(147) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 148: if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(278); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(167); if (lookahead == '.') ADVANCE(160); if (lookahead == '/') ADVANCE(155); if (lookahead == ':') ADVANCE(322); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(299); if (lookahead == '=') ADVANCE(317); if (lookahead == '>') ADVANCE(450); if (lookahead == '[') ADVANCE(313); if (lookahead == '\\') SKIP(84) if (lookahead == '{') ADVANCE(310); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(148) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 149: if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(278); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(167); if (lookahead == '.') ADVANCE(160); if (lookahead == '/') ADVANCE(155); if (lookahead == ':') ADVANCE(322); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(299); if (lookahead == '=') ADVANCE(317); if (lookahead == '>') ADVANCE(450); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(28) if (lookahead == '{') ADVANCE(310); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(149) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 150: if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(278); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(167); if (lookahead == '/') ADVANCE(155); if (lookahead == ':') ADVANCE(321); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(299); if (lookahead == '=') ADVANCE(317); if (lookahead == '>') ADVANCE(450); if (lookahead == '[') ADVANCE(313); if (lookahead == '\\') SKIP(52) if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(424); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 'u') ADVANCE(420); if (lookahead == 'v') ADVANCE(430); if (lookahead == '{') ADVANCE(310); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(150) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 151: if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(278); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(167); if (lookahead == '/') ADVANCE(155); if (lookahead == ':') ADVANCE(321); if (lookahead == ';') ADVANCE(306); if (lookahead == '=') ADVANCE(317); if (lookahead == '>') ADVANCE(450); if (lookahead == '[') ADVANCE(313); if (lookahead == '\\') SKIP(56) if (lookahead == '{') ADVANCE(310); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(151) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 152: if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == '*') ADVANCE(278); if (lookahead == '/') ADVANCE(155); if (lookahead == ':') ADVANCE(321); if (lookahead == ';') ADVANCE(306); if (lookahead == '=') ADVANCE(317); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(65) if (lookahead == '{') ADVANCE(310); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(152) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 153: if (lookahead == '&') ADVANCE(291); if (lookahead == '(') ADVANCE(259); if (lookahead == '*') ADVANCE(278); if (lookahead == '/') ADVANCE(155); if (lookahead == ';') ADVANCE(306); if (lookahead == '=') ADVANCE(317); if (lookahead == '[') ADVANCE(312); if (lookahead == '\\') SKIP(63) if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(424); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 'u') ADVANCE(420); if (lookahead == 'v') ADVANCE(430); if (lookahead == '{') ADVANCE(310); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(153) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 154: if (lookahead == ')') ADVANCE(452); END_STATE(); case 155: if (lookahead == '*') ADVANCE(157); if (lookahead == '/') ADVANCE(446); END_STATE(); case 156: if (lookahead == '*') ADVANCE(156); if (lookahead == '/') ADVANCE(444); if (lookahead != 0) ADVANCE(157); END_STATE(); case 157: if (lookahead == '*') ADVANCE(156); if (lookahead != 0) ADVANCE(157); END_STATE(); case 158: if (lookahead == '.') ADVANCE(185); if (lookahead == '0') ADVANCE(342); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(343); if (('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(351); END_STATE(); case 159: if (lookahead == '.') ADVANCE(185); if (lookahead == '0') ADVANCE(345); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); END_STATE(); case 160: if (lookahead == '.') ADVANCE(162); END_STATE(); case 161: if (lookahead == '.') ADVANCE(162); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(340); END_STATE(); case 162: if (lookahead == '.') ADVANCE(211); END_STATE(); case 163: if (lookahead == '/') ADVANCE(155); if (lookahead == '\\') ADVANCE(69); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(163) END_STATE(); case 164: if (lookahead == ':') ADVANCE(307); END_STATE(); case 165: if (lookahead == '=') ADVANCE(294); END_STATE(); case 166: if (lookahead == '=') ADVANCE(293); END_STATE(); case 167: if (lookahead == '>') ADVANCE(338); END_STATE(); case 168: if (lookahead == '>') ADVANCE(378); if (lookahead == '\\') ADVANCE(169); if (lookahead != 0 && lookahead != '\n') ADVANCE(168); END_STATE(); case 169: if (lookahead == '>') ADVANCE(379); if (lookahead == '\\') ADVANCE(169); if (lookahead != 0 && lookahead != '\n') ADVANCE(168); END_STATE(); case 170: if (lookahead == '[') ADVANCE(308); if (lookahead == ']') ADVANCE(453); END_STATE(); case 171: if (lookahead == ']') ADVANCE(453); END_STATE(); case 172: if (lookahead == ']') ADVANCE(309); END_STATE(); case 173: if (lookahead == 'd') ADVANCE(225); if (lookahead == 'e') ADVANCE(241); if (lookahead == 'i') ADVANCE(231); if (lookahead == '\t' || lookahead == ' ') ADVANCE(173); if (('A' <= lookahead && lookahead <= 'Z') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 174: if (lookahead == 'd') ADVANCE(225); if (lookahead == 'e') ADVANCE(241); if (lookahead == 'i') ADVANCE(232); if (lookahead == '\t' || lookahead == ' ') ADVANCE(174); if (('A' <= lookahead && lookahead <= 'Z') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 175: if (lookahead == 'd') ADVANCE(225); if (lookahead == 'e') ADVANCE(243); if (lookahead == 'i') ADVANCE(231); if (lookahead == '\t' || lookahead == ' ') ADVANCE(175); if (('A' <= lookahead && lookahead <= 'Z') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 176: if (lookahead == 'd') ADVANCE(225); if (lookahead == 'e') ADVANCE(243); if (lookahead == 'i') ADVANCE(232); if (lookahead == '\t' || lookahead == ' ') ADVANCE(176); if (('A' <= lookahead && lookahead <= 'Z') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 177: if (lookahead == 'd') ADVANCE(225); if (lookahead == 'i') ADVANCE(231); if (lookahead == '\t' || lookahead == ' ') ADVANCE(177); if (('A' <= lookahead && lookahead <= 'Z') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 178: if (lookahead == 'd') ADVANCE(225); if (lookahead == 'i') ADVANCE(232); if (lookahead == '\t' || lookahead == ' ') ADVANCE(178); if (('A' <= lookahead && lookahead <= 'Z') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 179: if (lookahead == 'd') ADVANCE(182); END_STATE(); case 180: if (lookahead == 'e') ADVANCE(183); if (lookahead == '\t' || lookahead == ' ') ADVANCE(180); END_STATE(); case 181: if (lookahead == 'f') ADVANCE(215); END_STATE(); case 182: if (lookahead == 'i') ADVANCE(181); END_STATE(); case 183: if (lookahead == 'n') ADVANCE(179); END_STATE(); case 184: if (('0' <= lookahead && lookahead <= '9')) ADVANCE(346); END_STATE(); case 185: if (('0' <= lookahead && lookahead <= '9')) ADVANCE(340); END_STATE(); case 186: if (('0' <= lookahead && lookahead <= '9')) ADVANCE(343); if (('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(351); END_STATE(); case 187: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(348); END_STATE(); case 188: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(351); END_STATE(); case 189: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(341); END_STATE(); case 190: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(374); END_STATE(); case 191: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(190); END_STATE(); case 192: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(191); END_STATE(); case 193: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(192); END_STATE(); case 194: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(193); END_STATE(); case 195: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(194); END_STATE(); case 196: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(195); END_STATE(); case 197: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(196); END_STATE(); case 198: if (lookahead != 0 && lookahead != '\r') ADVANCE(446); if (lookahead == '\r') ADVANCE(448); END_STATE(); case 199: if (eof) ADVANCE(205); if (lookahead == '\n') SKIP(203) END_STATE(); case 200: if (eof) ADVANCE(205); if (lookahead == '\n') SKIP(203) if (lookahead == '\r') SKIP(199) END_STATE(); case 201: if (eof) ADVANCE(205); if (lookahead == '\n') SKIP(204) END_STATE(); case 202: if (eof) ADVANCE(205); if (lookahead == '\n') SKIP(204) if (lookahead == '\r') SKIP(201) END_STATE(); case 203: if (eof) ADVANCE(205); if (lookahead == '!') ADVANCE(261); if (lookahead == '"') ADVANCE(368); if (lookahead == '#') ADVANCE(173); if (lookahead == '%') ADVANCE(283); if (lookahead == '&') ADVANCE(292); if (lookahead == '\'') ADVANCE(359); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(279); if (lookahead == '+') ADVANCE(274); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(264); if (lookahead == '.') ADVANCE(337); if (lookahead == '/') ADVANCE(281); if (lookahead == '0') ADVANCE(344); if (lookahead == ':') ADVANCE(322); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(300); if (lookahead == '=') ADVANCE(318); if (lookahead == '>') ADVANCE(450); if (lookahead == '?') ADVANCE(323); if (lookahead == 'F') ADVANCE(399); if (lookahead == 'L') ADVANCE(382); if (lookahead == 'T') ADVANCE(403); if (lookahead == 'U') ADVANCE(384); if (lookahead == '[') ADVANCE(314); if (lookahead == '\\') SKIP(200) if (lookahead == ']') ADVANCE(316); if (lookahead == '^') ADVANCE(289); if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(407); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 't') ADVANCE(434); if (lookahead == 'u') ADVANCE(386); if (lookahead == 'v') ADVANCE(430); if (lookahead == '{') ADVANCE(310); if (lookahead == '|') ADVANCE(286); if (lookahead == '}') ADVANCE(311); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(203) if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); if (('A' <= lookahead && lookahead <= '_') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 204: if (eof) ADVANCE(205); if (lookahead == '!') ADVANCE(260); if (lookahead == '"') ADVANCE(368); if (lookahead == '#') ADVANCE(177); if (lookahead == '&') ADVANCE(291); if (lookahead == '\'') ADVANCE(359); if (lookahead == '(') ADVANCE(259); if (lookahead == ')') ADVANCE(213); if (lookahead == '*') ADVANCE(278); if (lookahead == '+') ADVANCE(275); if (lookahead == ',') ADVANCE(212); if (lookahead == '-') ADVANCE(267); if (lookahead == '.') ADVANCE(337); if (lookahead == '/') ADVANCE(155); if (lookahead == '0') ADVANCE(344); if (lookahead == ':') ADVANCE(322); if (lookahead == ';') ADVANCE(306); if (lookahead == '<') ADVANCE(299); if (lookahead == '=') ADVANCE(317); if (lookahead == '>') ADVANCE(450); if (lookahead == 'F') ADVANCE(399); if (lookahead == 'L') ADVANCE(382); if (lookahead == 'T') ADVANCE(403); if (lookahead == 'U') ADVANCE(384); if (lookahead == '[') ADVANCE(313); if (lookahead == '\\') SKIP(202) if (lookahead == ']') ADVANCE(172); if (lookahead == 'b') ADVANCE(431); if (lookahead == 'c') ADVANCE(416); if (lookahead == 'd') ADVANCE(427); if (lookahead == 'f') ADVANCE(407); if (lookahead == 'i') ADVANCE(425); if (lookahead == 's') ADVANCE(417); if (lookahead == 't') ADVANCE(434); if (lookahead == 'u') ADVANCE(386); if (lookahead == 'v') ADVANCE(430); if (lookahead == '{') ADVANCE(310); if (lookahead == '}') ADVANCE(311); if (lookahead == '~') ADVANCE(262); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(204) if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 205: ACCEPT_TOKEN(ts_builtin_sym_end); END_STATE(); case 206: ACCEPT_TOKEN(aux_sym_preproc_include_token1); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 207: ACCEPT_TOKEN(anon_sym_LF); if (lookahead == '\n') ADVANCE(207); END_STATE(); case 208: ACCEPT_TOKEN(anon_sym_LF); if (lookahead == '\n') ADVANCE(208); if (lookahead == '\\') ADVANCE(250); if (lookahead == '\t' || lookahead == '\r' || lookahead == ' ') ADVANCE(249); END_STATE(); case 209: ACCEPT_TOKEN(aux_sym_preproc_def_token1); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 210: ACCEPT_TOKEN(anon_sym_LPAREN); END_STATE(); case 211: ACCEPT_TOKEN(anon_sym_DOT_DOT_DOT); END_STATE(); case 212: ACCEPT_TOKEN(anon_sym_COMMA); END_STATE(); case 213: ACCEPT_TOKEN(anon_sym_RPAREN); END_STATE(); case 214: ACCEPT_TOKEN(aux_sym_preproc_if_token1); if (lookahead == 'd') ADVANCE(229); if (lookahead == 'n') ADVANCE(224); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 215: ACCEPT_TOKEN(aux_sym_preproc_if_token2); END_STATE(); case 216: ACCEPT_TOKEN(aux_sym_preproc_if_token2); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 217: ACCEPT_TOKEN(aux_sym_preproc_ifdef_token1); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 218: ACCEPT_TOKEN(aux_sym_preproc_ifdef_token2); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 219: ACCEPT_TOKEN(aux_sym_preproc_else_token1); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 220: ACCEPT_TOKEN(aux_sym_preproc_elif_token1); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 221: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'c') ADVANCE(242); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 222: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'd') ADVANCE(240); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 223: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'd') ADVANCE(228); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 224: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'd') ADVANCE(230); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 225: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'e') ADVANCE(233); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 226: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'e') ADVANCE(219); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 227: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'e') ADVANCE(209); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 228: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'e') ADVANCE(206); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 229: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'e') ADVANCE(236); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 230: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'e') ADVANCE(237); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 231: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'f') ADVANCE(214); if (lookahead == 'n') ADVANCE(221); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 232: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'f') ADVANCE(214); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 233: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'f') ADVANCE(238); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 234: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'f') ADVANCE(220); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 235: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'f') ADVANCE(216); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 236: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'f') ADVANCE(217); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 237: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'f') ADVANCE(218); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 238: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'i') ADVANCE(244); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 239: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'i') ADVANCE(234); if (lookahead == 's') ADVANCE(226); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 240: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'i') ADVANCE(235); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 241: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'l') ADVANCE(239); if (lookahead == 'n') ADVANCE(222); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 242: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'l') ADVANCE(245); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 243: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'n') ADVANCE(222); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 244: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'n') ADVANCE(227); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 245: ACCEPT_TOKEN(sym_preproc_directive); if (lookahead == 'u') ADVANCE(223); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 246: ACCEPT_TOKEN(sym_preproc_directive); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(246); END_STATE(); case 247: ACCEPT_TOKEN(sym_preproc_arg); if (lookahead == '\n') ADVANCE(157); if (lookahead == '*') ADVANCE(247); if (lookahead == '/') ADVANCE(444); if (lookahead == '\\') ADVANCE(254); if (lookahead != 0) ADVANCE(248); END_STATE(); case 248: ACCEPT_TOKEN(sym_preproc_arg); if (lookahead == '\n') ADVANCE(157); if (lookahead == '*') ADVANCE(247); if (lookahead == '\\') ADVANCE(254); if (lookahead != 0) ADVANCE(248); END_STATE(); case 249: ACCEPT_TOKEN(sym_preproc_arg); if (lookahead == '\n') ADVANCE(208); if (lookahead == '/') ADVANCE(252); if (lookahead == '\\') ADVANCE(250); if (lookahead == '\t' || lookahead == '\r' || lookahead == ' ') ADVANCE(249); if (lookahead != 0) ADVANCE(253); END_STATE(); case 250: ACCEPT_TOKEN(sym_preproc_arg); if (lookahead == '\n') ADVANCE(249); if (lookahead == '\r') ADVANCE(251); if (lookahead == '\\') ADVANCE(255); if (lookahead != 0) ADVANCE(253); END_STATE(); case 251: ACCEPT_TOKEN(sym_preproc_arg); if (lookahead == '\n') ADVANCE(249); if (lookahead == '\\') ADVANCE(255); if (lookahead != 0) ADVANCE(253); END_STATE(); case 252: ACCEPT_TOKEN(sym_preproc_arg); if (lookahead == '*') ADVANCE(248); if (lookahead == '/') ADVANCE(447); if (lookahead == '\\') ADVANCE(255); if (lookahead != 0 && lookahead != '\n') ADVANCE(253); END_STATE(); case 253: ACCEPT_TOKEN(sym_preproc_arg); if (lookahead == '\\') ADVANCE(255); if (lookahead != 0 && lookahead != '\n') ADVANCE(253); END_STATE(); case 254: ACCEPT_TOKEN(sym_preproc_arg); if (lookahead != 0 && lookahead != '\r' && lookahead != '*' && lookahead != '\\') ADVANCE(248); if (lookahead == '\r') ADVANCE(257); if (lookahead == '*') ADVANCE(247); if (lookahead == '\\') ADVANCE(254); END_STATE(); case 255: ACCEPT_TOKEN(sym_preproc_arg); if (lookahead != 0 && lookahead != '\r' && lookahead != '\\') ADVANCE(253); if (lookahead == '\r') ADVANCE(258); if (lookahead == '\\') ADVANCE(255); END_STATE(); case 256: ACCEPT_TOKEN(sym_preproc_arg); if (lookahead != 0 && lookahead != '\r' && lookahead != '\\') ADVANCE(447); if (lookahead == '\r') ADVANCE(449); if (lookahead == '\\') ADVANCE(445); END_STATE(); case 257: ACCEPT_TOKEN(sym_preproc_arg); if (lookahead != 0 && lookahead != '*' && lookahead != '\\') ADVANCE(248); if (lookahead == '*') ADVANCE(247); if (lookahead == '\\') ADVANCE(254); END_STATE(); case 258: ACCEPT_TOKEN(sym_preproc_arg); if (lookahead != 0 && lookahead != '\\') ADVANCE(253); if (lookahead == '\\') ADVANCE(255); END_STATE(); case 259: ACCEPT_TOKEN(anon_sym_LPAREN2); END_STATE(); case 260: ACCEPT_TOKEN(anon_sym_BANG); END_STATE(); case 261: ACCEPT_TOKEN(anon_sym_BANG); if (lookahead == '=') ADVANCE(294); END_STATE(); case 262: ACCEPT_TOKEN(anon_sym_TILDE); END_STATE(); case 263: ACCEPT_TOKEN(anon_sym_DASH); END_STATE(); case 264: ACCEPT_TOKEN(anon_sym_DASH); if (lookahead == '-') ADVANCE(334); if (lookahead == '.') ADVANCE(185); if (lookahead == '0') ADVANCE(344); if (lookahead == '=') ADVANCE(328); if (lookahead == '>') ADVANCE(339); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); END_STATE(); case 265: ACCEPT_TOKEN(anon_sym_DASH); if (lookahead == '-') ADVANCE(334); if (lookahead == '.') ADVANCE(185); if (lookahead == '0') ADVANCE(344); if (lookahead == '=') ADVANCE(328); if (lookahead == '>') ADVANCE(338); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); END_STATE(); case 266: ACCEPT_TOKEN(anon_sym_DASH); if (lookahead == '-') ADVANCE(334); if (lookahead == '.') ADVANCE(185); if (lookahead == '0') ADVANCE(344); if (lookahead == '>') ADVANCE(338); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); END_STATE(); case 267: ACCEPT_TOKEN(anon_sym_DASH); if (lookahead == '-') ADVANCE(334); if (lookahead == '.') ADVANCE(185); if (lookahead == '0') ADVANCE(344); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); END_STATE(); case 268: ACCEPT_TOKEN(anon_sym_DASH); if (lookahead == '-') ADVANCE(334); if (lookahead == '=') ADVANCE(328); if (lookahead == '>') ADVANCE(339); END_STATE(); case 269: ACCEPT_TOKEN(anon_sym_DASH); if (lookahead == '-') ADVANCE(334); if (lookahead == '=') ADVANCE(328); if (lookahead == '>') ADVANCE(338); END_STATE(); case 270: ACCEPT_TOKEN(anon_sym_DASH); if (lookahead == '-') ADVANCE(334); if (lookahead == '>') ADVANCE(338); END_STATE(); case 271: ACCEPT_TOKEN(anon_sym_DASH); if (lookahead == '.') ADVANCE(185); if (lookahead == '0') ADVANCE(344); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); END_STATE(); case 272: ACCEPT_TOKEN(anon_sym_PLUS); END_STATE(); case 273: ACCEPT_TOKEN(anon_sym_PLUS); if (lookahead == '+') ADVANCE(335); END_STATE(); case 274: ACCEPT_TOKEN(anon_sym_PLUS); if (lookahead == '+') ADVANCE(335); if (lookahead == '.') ADVANCE(185); if (lookahead == '0') ADVANCE(344); if (lookahead == '=') ADVANCE(327); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); END_STATE(); case 275: ACCEPT_TOKEN(anon_sym_PLUS); if (lookahead == '+') ADVANCE(335); if (lookahead == '.') ADVANCE(185); if (lookahead == '0') ADVANCE(344); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); END_STATE(); case 276: ACCEPT_TOKEN(anon_sym_PLUS); if (lookahead == '+') ADVANCE(335); if (lookahead == '=') ADVANCE(327); END_STATE(); case 277: ACCEPT_TOKEN(anon_sym_PLUS); if (lookahead == '.') ADVANCE(185); if (lookahead == '0') ADVANCE(344); if (('1' <= lookahead && lookahead <= '9')) ADVANCE(346); END_STATE(); case 278: ACCEPT_TOKEN(anon_sym_STAR); END_STATE(); case 279: ACCEPT_TOKEN(anon_sym_STAR); if (lookahead == '=') ADVANCE(324); END_STATE(); case 280: ACCEPT_TOKEN(anon_sym_SLASH); if (lookahead == '*') ADVANCE(157); if (lookahead == '/') ADVANCE(446); END_STATE(); case 281: ACCEPT_TOKEN(anon_sym_SLASH); if (lookahead == '*') ADVANCE(157); if (lookahead == '/') ADVANCE(446); if (lookahead == '=') ADVANCE(325); END_STATE(); case 282: ACCEPT_TOKEN(anon_sym_PERCENT); END_STATE(); case 283: ACCEPT_TOKEN(anon_sym_PERCENT); if (lookahead == '=') ADVANCE(326); END_STATE(); case 284: ACCEPT_TOKEN(anon_sym_PIPE_PIPE); END_STATE(); case 285: ACCEPT_TOKEN(anon_sym_AMP_AMP); END_STATE(); case 286: ACCEPT_TOKEN(anon_sym_PIPE); if (lookahead == '=') ADVANCE(333); if (lookahead == '|') ADVANCE(284); END_STATE(); case 287: ACCEPT_TOKEN(anon_sym_PIPE); if (lookahead == '|') ADVANCE(284); END_STATE(); case 288: ACCEPT_TOKEN(anon_sym_CARET); END_STATE(); case 289: ACCEPT_TOKEN(anon_sym_CARET); if (lookahead == '=') ADVANCE(332); END_STATE(); case 290: ACCEPT_TOKEN(anon_sym_AMP); END_STATE(); case 291: ACCEPT_TOKEN(anon_sym_AMP); if (lookahead == '&') ADVANCE(285); END_STATE(); case 292: ACCEPT_TOKEN(anon_sym_AMP); if (lookahead == '&') ADVANCE(285); if (lookahead == '=') ADVANCE(331); END_STATE(); case 293: ACCEPT_TOKEN(anon_sym_EQ_EQ); END_STATE(); case 294: ACCEPT_TOKEN(anon_sym_BANG_EQ); END_STATE(); case 295: ACCEPT_TOKEN(anon_sym_GT); if (lookahead == '=') ADVANCE(297); if (lookahead == '>') ADVANCE(304); END_STATE(); case 296: ACCEPT_TOKEN(anon_sym_GT); if (lookahead == '=') ADVANCE(297); if (lookahead == '>') ADVANCE(305); END_STATE(); case 297: ACCEPT_TOKEN(anon_sym_GT_EQ); END_STATE(); case 298: ACCEPT_TOKEN(anon_sym_LT_EQ); END_STATE(); case 299: ACCEPT_TOKEN(anon_sym_LT); END_STATE(); case 300: ACCEPT_TOKEN(anon_sym_LT); if (lookahead == '<') ADVANCE(303); if (lookahead == '=') ADVANCE(298); END_STATE(); case 301: ACCEPT_TOKEN(anon_sym_LT); if (lookahead == '<') ADVANCE(302); if (lookahead == '=') ADVANCE(298); END_STATE(); case 302: ACCEPT_TOKEN(anon_sym_LT_LT); END_STATE(); case 303: ACCEPT_TOKEN(anon_sym_LT_LT); if (lookahead == '=') ADVANCE(329); END_STATE(); case 304: ACCEPT_TOKEN(anon_sym_GT_GT); END_STATE(); case 305: ACCEPT_TOKEN(anon_sym_GT_GT); if (lookahead == '=') ADVANCE(330); END_STATE(); case 306: ACCEPT_TOKEN(anon_sym_SEMI); END_STATE(); case 307: ACCEPT_TOKEN(anon_sym_COLON_COLON); END_STATE(); case 308: ACCEPT_TOKEN(anon_sym_LBRACK_LBRACK); END_STATE(); case 309: ACCEPT_TOKEN(anon_sym_RBRACK_RBRACK); END_STATE(); case 310: ACCEPT_TOKEN(anon_sym_LBRACE); END_STATE(); case 311: ACCEPT_TOKEN(anon_sym_RBRACE); END_STATE(); case 312: ACCEPT_TOKEN(anon_sym_LBRACK); END_STATE(); case 313: ACCEPT_TOKEN(anon_sym_LBRACK); if (lookahead == '[') ADVANCE(308); END_STATE(); case 314: ACCEPT_TOKEN(anon_sym_LBRACK); if (lookahead == '[') ADVANCE(308); if (lookahead == ']') ADVANCE(453); END_STATE(); case 315: ACCEPT_TOKEN(anon_sym_LBRACK); if (lookahead == ']') ADVANCE(453); END_STATE(); case 316: ACCEPT_TOKEN(anon_sym_RBRACK); END_STATE(); case 317: ACCEPT_TOKEN(anon_sym_EQ); END_STATE(); case 318: ACCEPT_TOKEN(anon_sym_EQ); if (lookahead == '=') ADVANCE(293); END_STATE(); case 319: ACCEPT_TOKEN(sym_primitive_type); if (lookahead == '1') ADVANCE(398); if (lookahead == '3') ADVANCE(396); if (lookahead == '6') ADVANCE(397); if (lookahead == '8') ADVANCE(406); if (lookahead == 'p') ADVANCE(439); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 320: ACCEPT_TOKEN(sym_primitive_type); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 321: ACCEPT_TOKEN(anon_sym_COLON); END_STATE(); case 322: ACCEPT_TOKEN(anon_sym_COLON); if (lookahead == ':') ADVANCE(307); END_STATE(); case 323: ACCEPT_TOKEN(anon_sym_QMARK); END_STATE(); case 324: ACCEPT_TOKEN(anon_sym_STAR_EQ); END_STATE(); case 325: ACCEPT_TOKEN(anon_sym_SLASH_EQ); END_STATE(); case 326: ACCEPT_TOKEN(anon_sym_PERCENT_EQ); END_STATE(); case 327: ACCEPT_TOKEN(anon_sym_PLUS_EQ); END_STATE(); case 328: ACCEPT_TOKEN(anon_sym_DASH_EQ); END_STATE(); case 329: ACCEPT_TOKEN(anon_sym_LT_LT_EQ); END_STATE(); case 330: ACCEPT_TOKEN(anon_sym_GT_GT_EQ); END_STATE(); case 331: ACCEPT_TOKEN(anon_sym_AMP_EQ); END_STATE(); case 332: ACCEPT_TOKEN(anon_sym_CARET_EQ); END_STATE(); case 333: ACCEPT_TOKEN(anon_sym_PIPE_EQ); END_STATE(); case 334: ACCEPT_TOKEN(anon_sym_DASH_DASH); END_STATE(); case 335: ACCEPT_TOKEN(anon_sym_PLUS_PLUS); END_STATE(); case 336: ACCEPT_TOKEN(anon_sym_DOT); if (lookahead == '.') ADVANCE(162); END_STATE(); case 337: ACCEPT_TOKEN(anon_sym_DOT); if (lookahead == '.') ADVANCE(162); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(340); END_STATE(); case 338: ACCEPT_TOKEN(anon_sym_DASH_GT); END_STATE(); case 339: ACCEPT_TOKEN(anon_sym_DASH_GT); if (lookahead == '*') ADVANCE(451); END_STATE(); case 340: ACCEPT_TOKEN(sym_number_literal); if (lookahead == '\'') ADVANCE(185); if (lookahead == 'F' || lookahead == 'L' || lookahead == 'U' || lookahead == 'f' || lookahead == 'l' || lookahead == 'u') ADVANCE(354); if (lookahead == 'E' || lookahead == 'P' || lookahead == 'e' || lookahead == 'p') ADVANCE(353); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(340); END_STATE(); case 341: ACCEPT_TOKEN(sym_number_literal); if (lookahead == '\'') ADVANCE(189); if (lookahead == 'F' || lookahead == 'f') ADVANCE(341); if (lookahead == 'L' || lookahead == 'U' || lookahead == 'l' || lookahead == 'u') ADVANCE(354); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'E') || ('a' <= lookahead && lookahead <= 'e')) ADVANCE(341); END_STATE(); case 342: ACCEPT_TOKEN(sym_number_literal); if (lookahead == '\'') ADVANCE(186); if (lookahead == '.') ADVANCE(352); if (lookahead == 'F' || lookahead == 'f') ADVANCE(351); if (lookahead == 'L' || lookahead == 'U' || lookahead == 'l' || lookahead == 'u') ADVANCE(354); if (lookahead == 'b') ADVANCE(350); if (lookahead == 'x') ADVANCE(188); if (lookahead == 'E' || lookahead == 'e') ADVANCE(349); if (lookahead == 'P' || lookahead == 'p') ADVANCE(353); if (('A' <= lookahead && lookahead <= 'D') || ('a' <= lookahead && lookahead <= 'd')) ADVANCE(351); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(343); END_STATE(); case 343: ACCEPT_TOKEN(sym_number_literal); if (lookahead == '\'') ADVANCE(186); if (lookahead == '.') ADVANCE(352); if (lookahead == 'F' || lookahead == 'f') ADVANCE(351); if (lookahead == 'L' || lookahead == 'U' || lookahead == 'l' || lookahead == 'u') ADVANCE(354); if (lookahead == 'E' || lookahead == 'e') ADVANCE(349); if (lookahead == 'P' || lookahead == 'p') ADVANCE(353); if (('A' <= lookahead && lookahead <= 'D') || ('a' <= lookahead && lookahead <= 'd')) ADVANCE(351); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(343); END_STATE(); case 344: ACCEPT_TOKEN(sym_number_literal); if (lookahead == '\'') ADVANCE(184); if (lookahead == '.') ADVANCE(352); if (lookahead == 'F' || lookahead == 'L' || lookahead == 'U' || lookahead == 'f' || lookahead == 'l' || lookahead == 'u') ADVANCE(354); if (lookahead == 'b') ADVANCE(159); if (lookahead == 'x') ADVANCE(158); if (lookahead == 'E' || lookahead == 'P' || lookahead == 'e' || lookahead == 'p') ADVANCE(353); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(346); END_STATE(); case 345: ACCEPT_TOKEN(sym_number_literal); if (lookahead == '\'') ADVANCE(184); if (lookahead == '.') ADVANCE(352); if (lookahead == 'F' || lookahead == 'L' || lookahead == 'U' || lookahead == 'f' || lookahead == 'l' || lookahead == 'u') ADVANCE(354); if (lookahead == 'b') ADVANCE(184); if (lookahead == 'x') ADVANCE(188); if (lookahead == 'E' || lookahead == 'P' || lookahead == 'e' || lookahead == 'p') ADVANCE(353); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(346); END_STATE(); case 346: ACCEPT_TOKEN(sym_number_literal); if (lookahead == '\'') ADVANCE(184); if (lookahead == '.') ADVANCE(352); if (lookahead == 'F' || lookahead == 'L' || lookahead == 'U' || lookahead == 'f' || lookahead == 'l' || lookahead == 'u') ADVANCE(354); if (lookahead == 'E' || lookahead == 'P' || lookahead == 'e' || lookahead == 'p') ADVANCE(353); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(346); END_STATE(); case 347: ACCEPT_TOKEN(sym_number_literal); if (lookahead == '\'') ADVANCE(187); if (lookahead == 'F' || lookahead == 'f') ADVANCE(348); if (lookahead == 'L' || lookahead == 'U' || lookahead == 'l' || lookahead == 'u') ADVANCE(354); if (lookahead == '+' || lookahead == '-') ADVANCE(189); if (lookahead == 'E' || lookahead == 'e') ADVANCE(347); if (lookahead == 'P' || lookahead == 'p') ADVANCE(353); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'D') || ('a' <= lookahead && lookahead <= 'd')) ADVANCE(348); END_STATE(); case 348: ACCEPT_TOKEN(sym_number_literal); if (lookahead == '\'') ADVANCE(187); if (lookahead == 'F' || lookahead == 'f') ADVANCE(348); if (lookahead == 'L' || lookahead == 'U' || lookahead == 'l' || lookahead == 'u') ADVANCE(354); if (lookahead == 'E' || lookahead == 'e') ADVANCE(347); if (lookahead == 'P' || lookahead == 'p') ADVANCE(353); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'D') || ('a' <= lookahead && lookahead <= 'd')) ADVANCE(348); END_STATE(); case 349: ACCEPT_TOKEN(sym_number_literal); if (lookahead == '\'') ADVANCE(188); if (lookahead == '.') ADVANCE(352); if (lookahead == 'F' || lookahead == 'f') ADVANCE(351); if (lookahead == 'L' || lookahead == 'U' || lookahead == 'l' || lookahead == 'u') ADVANCE(354); if (lookahead == '+' || lookahead == '-') ADVANCE(189); if (lookahead == 'E' || lookahead == 'e') ADVANCE(349); if (lookahead == 'P' || lookahead == 'p') ADVANCE(353); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'D') || ('a' <= lookahead && lookahead <= 'd')) ADVANCE(351); END_STATE(); case 350: ACCEPT_TOKEN(sym_number_literal); if (lookahead == '\'') ADVANCE(188); if (lookahead == '.') ADVANCE(352); if (lookahead == 'F' || lookahead == 'f') ADVANCE(351); if (lookahead == 'L' || lookahead == 'U' || lookahead == 'l' || lookahead == 'u') ADVANCE(354); if (lookahead == 'E' || lookahead == 'e') ADVANCE(349); if (lookahead == 'P' || lookahead == 'p') ADVANCE(353); if (('A' <= lookahead && lookahead <= 'D') || ('a' <= lookahead && lookahead <= 'd')) ADVANCE(351); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(343); END_STATE(); case 351: ACCEPT_TOKEN(sym_number_literal); if (lookahead == '\'') ADVANCE(188); if (lookahead == '.') ADVANCE(352); if (lookahead == 'F' || lookahead == 'f') ADVANCE(351); if (lookahead == 'L' || lookahead == 'U' || lookahead == 'l' || lookahead == 'u') ADVANCE(354); if (lookahead == 'E' || lookahead == 'e') ADVANCE(349); if (lookahead == 'P' || lookahead == 'p') ADVANCE(353); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'D') || ('a' <= lookahead && lookahead <= 'd')) ADVANCE(351); END_STATE(); case 352: ACCEPT_TOKEN(sym_number_literal); if (lookahead == 'F' || lookahead == 'f') ADVANCE(348); if (lookahead == 'L' || lookahead == 'U' || lookahead == 'l' || lookahead == 'u') ADVANCE(354); if (lookahead == 'E' || lookahead == 'e') ADVANCE(347); if (lookahead == 'P' || lookahead == 'p') ADVANCE(353); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'D') || ('a' <= lookahead && lookahead <= 'd')) ADVANCE(348); END_STATE(); case 353: ACCEPT_TOKEN(sym_number_literal); if (lookahead == 'F' || lookahead == 'f') ADVANCE(341); if (lookahead == 'L' || lookahead == 'U' || lookahead == 'l' || lookahead == 'u') ADVANCE(354); if (lookahead == '+' || lookahead == '-') ADVANCE(189); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'E') || ('a' <= lookahead && lookahead <= 'e')) ADVANCE(341); END_STATE(); case 354: ACCEPT_TOKEN(sym_number_literal); if (lookahead == 'F' || lookahead == 'L' || lookahead == 'U' || lookahead == 'f' || lookahead == 'l' || lookahead == 'u') ADVANCE(354); END_STATE(); case 355: ACCEPT_TOKEN(anon_sym_L_SQUOTE); END_STATE(); case 356: ACCEPT_TOKEN(anon_sym_u_SQUOTE); END_STATE(); case 357: ACCEPT_TOKEN(anon_sym_U_SQUOTE); END_STATE(); case 358: ACCEPT_TOKEN(anon_sym_u8_SQUOTE); END_STATE(); case 359: ACCEPT_TOKEN(anon_sym_SQUOTE); END_STATE(); case 360: ACCEPT_TOKEN(aux_sym_char_literal_token1); END_STATE(); case 361: ACCEPT_TOKEN(aux_sym_char_literal_token1); if (lookahead == '\n') ADVANCE(375); if (lookahead == '\r') ADVANCE(374); if (lookahead == 'U') ADVANCE(197); if (lookahead == 'u') ADVANCE(193); if (lookahead == 'x') ADVANCE(191); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(377); if (lookahead != 0) ADVANCE(374); END_STATE(); case 362: ACCEPT_TOKEN(aux_sym_char_literal_token1); if (lookahead == '*') ADVANCE(157); if (lookahead == '/') ADVANCE(446); END_STATE(); case 363: ACCEPT_TOKEN(aux_sym_char_literal_token1); if (lookahead == '\\') ADVANCE(69); END_STATE(); case 364: ACCEPT_TOKEN(anon_sym_L_DQUOTE); END_STATE(); case 365: ACCEPT_TOKEN(anon_sym_u_DQUOTE); END_STATE(); case 366: ACCEPT_TOKEN(anon_sym_U_DQUOTE); END_STATE(); case 367: ACCEPT_TOKEN(anon_sym_u8_DQUOTE); END_STATE(); case 368: ACCEPT_TOKEN(anon_sym_DQUOTE); END_STATE(); case 369: ACCEPT_TOKEN(aux_sym_string_literal_token1); if (lookahead == '*') ADVANCE(371); if (lookahead == '/') ADVANCE(373); if (lookahead != 0 && lookahead != '\n' && lookahead != '"' && lookahead != '\\') ADVANCE(373); END_STATE(); case 370: ACCEPT_TOKEN(aux_sym_string_literal_token1); if (lookahead == '*') ADVANCE(370); if (lookahead == '/') ADVANCE(373); if (lookahead != 0 && lookahead != '\n' && lookahead != '"' && lookahead != '\\') ADVANCE(371); END_STATE(); case 371: ACCEPT_TOKEN(aux_sym_string_literal_token1); if (lookahead == '*') ADVANCE(370); if (lookahead != 0 && lookahead != '\n' && lookahead != '"' && lookahead != '\\') ADVANCE(371); END_STATE(); case 372: ACCEPT_TOKEN(aux_sym_string_literal_token1); if (lookahead == '/') ADVANCE(369); if (lookahead == '\t' || lookahead == '\r' || lookahead == ' ') ADVANCE(372); if (lookahead != 0 && lookahead != '\n' && lookahead != '"' && lookahead != '\\') ADVANCE(373); END_STATE(); case 373: ACCEPT_TOKEN(aux_sym_string_literal_token1); if (lookahead != 0 && lookahead != '\n' && lookahead != '"' && lookahead != '\\') ADVANCE(373); END_STATE(); case 374: ACCEPT_TOKEN(sym_escape_sequence); END_STATE(); case 375: ACCEPT_TOKEN(sym_escape_sequence); if (lookahead == '\\') ADVANCE(69); END_STATE(); case 376: ACCEPT_TOKEN(sym_escape_sequence); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(374); END_STATE(); case 377: ACCEPT_TOKEN(sym_escape_sequence); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(376); END_STATE(); case 378: ACCEPT_TOKEN(sym_system_lib_string); END_STATE(); case 379: ACCEPT_TOKEN(sym_system_lib_string); if (lookahead == '>') ADVANCE(378); if (lookahead == '\\') ADVANCE(169); if (lookahead != 0 && lookahead != '\n') ADVANCE(168); END_STATE(); case 380: ACCEPT_TOKEN(sym_true); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 381: ACCEPT_TOKEN(sym_false); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 382: ACCEPT_TOKEN(sym_identifier); if (lookahead == '"') ADVANCE(364); if (lookahead == '\'') ADVANCE(355); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 383: ACCEPT_TOKEN(sym_identifier); if (lookahead == '"') ADVANCE(364); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 384: ACCEPT_TOKEN(sym_identifier); if (lookahead == '"') ADVANCE(366); if (lookahead == '\'') ADVANCE(357); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 385: ACCEPT_TOKEN(sym_identifier); if (lookahead == '"') ADVANCE(366); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 386: ACCEPT_TOKEN(sym_identifier); if (lookahead == '"') ADVANCE(365); if (lookahead == '\'') ADVANCE(356); if (lookahead == '8') ADVANCE(389); if (lookahead == 'i') ADVANCE(426); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 387: ACCEPT_TOKEN(sym_identifier); if (lookahead == '"') ADVANCE(365); if (lookahead == '8') ADVANCE(390); if (lookahead == 'i') ADVANCE(426); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 388: ACCEPT_TOKEN(sym_identifier); if (lookahead == '"') ADVANCE(365); if (lookahead == '8') ADVANCE(390); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 389: ACCEPT_TOKEN(sym_identifier); if (lookahead == '"') ADVANCE(367); if (lookahead == '\'') ADVANCE(358); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 390: ACCEPT_TOKEN(sym_identifier); if (lookahead == '"') ADVANCE(367); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 391: ACCEPT_TOKEN(sym_identifier); if (lookahead == '\'') ADVANCE(355); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 392: ACCEPT_TOKEN(sym_identifier); if (lookahead == '\'') ADVANCE(357); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 393: ACCEPT_TOKEN(sym_identifier); if (lookahead == '\'') ADVANCE(356); if (lookahead == '8') ADVANCE(394); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 394: ACCEPT_TOKEN(sym_identifier); if (lookahead == '\'') ADVANCE(358); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 395: ACCEPT_TOKEN(sym_identifier); if (lookahead == '1') ADVANCE(398); if (lookahead == '3') ADVANCE(396); if (lookahead == '6') ADVANCE(397); if (lookahead == '8') ADVANCE(406); if (lookahead == 'p') ADVANCE(439); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 396: ACCEPT_TOKEN(sym_identifier); if (lookahead == '2') ADVANCE(406); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 397: ACCEPT_TOKEN(sym_identifier); if (lookahead == '4') ADVANCE(406); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 398: ACCEPT_TOKEN(sym_identifier); if (lookahead == '6') ADVANCE(406); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 399: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'A') ADVANCE(402); if (('0' <= lookahead && lookahead <= '9') || ('B' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 400: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'E') ADVANCE(380); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 401: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'E') ADVANCE(381); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 402: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'L') ADVANCE(404); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 403: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'R') ADVANCE(405); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 404: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'S') ADVANCE(401); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 405: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'U') ADVANCE(400); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 406: ACCEPT_TOKEN(sym_identifier); if (lookahead == '_') ADVANCE(437); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 407: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'a') ADVANCE(421); if (lookahead == 'l') ADVANCE(428); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('b' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 408: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'a') ADVANCE(432); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('b' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 409: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'a') ADVANCE(437); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('b' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 410: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'b') ADVANCE(423); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 411: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'd') ADVANCE(320); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 412: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'e') ADVANCE(380); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 413: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'e') ADVANCE(320); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 414: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'e') ADVANCE(406); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 415: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'e') ADVANCE(381); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 416: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'h') ADVANCE(408); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 417: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'i') ADVANCE(442); if (lookahead == 's') ADVANCE(418); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 418: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'i') ADVANCE(442); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 419: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'i') ADVANCE(411); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 420: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'i') ADVANCE(426); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 421: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'l') ADVANCE(435); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 422: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'l') ADVANCE(320); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 423: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'l') ADVANCE(413); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 424: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'l') ADVANCE(428); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 425: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'n') ADVANCE(436); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 426: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'n') ADVANCE(438); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 427: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'o') ADVANCE(440); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 428: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'o') ADVANCE(409); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 429: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'o') ADVANCE(422); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 430: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'o') ADVANCE(419); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 431: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'o') ADVANCE(429); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 432: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'r') ADVANCE(319); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 433: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'r') ADVANCE(406); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 434: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'r') ADVANCE(441); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 435: ACCEPT_TOKEN(sym_identifier); if (lookahead == 's') ADVANCE(415); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 436: ACCEPT_TOKEN(sym_identifier); if (lookahead == 't') ADVANCE(319); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 437: ACCEPT_TOKEN(sym_identifier); if (lookahead == 't') ADVANCE(320); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 438: ACCEPT_TOKEN(sym_identifier); if (lookahead == 't') ADVANCE(395); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 439: ACCEPT_TOKEN(sym_identifier); if (lookahead == 't') ADVANCE(433); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 440: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'u') ADVANCE(410); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 441: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'u') ADVANCE(412); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 442: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'z') ADVANCE(414); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'y')) ADVANCE(443); END_STATE(); case 443: ACCEPT_TOKEN(sym_identifier); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(443); END_STATE(); case 444: ACCEPT_TOKEN(sym_comment); END_STATE(); case 445: ACCEPT_TOKEN(sym_comment); if (lookahead == '\r') ADVANCE(447); if (lookahead == '\\') ADVANCE(256); if (lookahead != 0 && lookahead != '\n') ADVANCE(447); END_STATE(); case 446: ACCEPT_TOKEN(sym_comment); if (lookahead == '\\') ADVANCE(198); if (lookahead != 0 && lookahead != '\n') ADVANCE(446); END_STATE(); case 447: ACCEPT_TOKEN(sym_comment); if (lookahead == '\\') ADVANCE(256); if (lookahead != 0 && lookahead != '\n') ADVANCE(447); END_STATE(); case 448: ACCEPT_TOKEN(sym_comment); if (lookahead != 0 && lookahead != '\\') ADVANCE(446); if (lookahead == '\\') ADVANCE(198); END_STATE(); case 449: ACCEPT_TOKEN(sym_comment); if (lookahead != 0 && lookahead != '\\') ADVANCE(447); if (lookahead == '\\') ADVANCE(256); END_STATE(); case 450: ACCEPT_TOKEN(anon_sym_GT2); END_STATE(); case 451: ACCEPT_TOKEN(anon_sym_DASH_GT_STAR); END_STATE(); case 452: ACCEPT_TOKEN(anon_sym_LPAREN_RPAREN); END_STATE(); case 453: ACCEPT_TOKEN(anon_sym_LBRACK_RBRACK); END_STATE(); case 454: ACCEPT_TOKEN(anon_sym_DQUOTE_DQUOTE); END_STATE(); case 455: ACCEPT_TOKEN(sym_literal_suffix); if (lookahead == '"') ADVANCE(364); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(459); END_STATE(); case 456: ACCEPT_TOKEN(sym_literal_suffix); if (lookahead == '"') ADVANCE(366); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(459); END_STATE(); case 457: ACCEPT_TOKEN(sym_literal_suffix); if (lookahead == '"') ADVANCE(365); if (lookahead == '8') ADVANCE(458); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(459); END_STATE(); case 458: ACCEPT_TOKEN(sym_literal_suffix); if (lookahead == '"') ADVANCE(367); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(459); END_STATE(); case 459: ACCEPT_TOKEN(sym_literal_suffix); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(459); END_STATE(); default: return false; } } static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { START_LEXER(); eof = lexer->eof(lexer); switch (state) { case 0: if (lookahead == 'N') ADVANCE(1); if (lookahead == '\\') SKIP(2) if (lookahead == '_') ADVANCE(3); if (lookahead == 'a') ADVANCE(4); if (lookahead == 'b') ADVANCE(5); if (lookahead == 'c') ADVANCE(6); if (lookahead == 'd') ADVANCE(7); if (lookahead == 'e') ADVANCE(8); if (lookahead == 'f') ADVANCE(9); if (lookahead == 'g') ADVANCE(10); if (lookahead == 'i') ADVANCE(11); if (lookahead == 'l') ADVANCE(12); if (lookahead == 'm') ADVANCE(13); if (lookahead == 'n') ADVANCE(14); if (lookahead == 'o') ADVANCE(15); if (lookahead == 'p') ADVANCE(16); if (lookahead == 'r') ADVANCE(17); if (lookahead == 's') ADVANCE(18); if (lookahead == 't') ADVANCE(19); if (lookahead == 'u') ADVANCE(20); if (lookahead == 'v') ADVANCE(21); if (lookahead == 'w') ADVANCE(22); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(0) END_STATE(); case 1: if (lookahead == 'U') ADVANCE(23); END_STATE(); case 2: if (lookahead == '\n') SKIP(0) if (lookahead == '\r') SKIP(24) END_STATE(); case 3: if (lookahead == 'A') ADVANCE(25); if (lookahead == '_') ADVANCE(26); if (lookahead == 'u') ADVANCE(27); END_STATE(); case 4: if (lookahead == 'u') ADVANCE(28); END_STATE(); case 5: if (lookahead == 'r') ADVANCE(29); END_STATE(); case 6: if (lookahead == 'a') ADVANCE(30); if (lookahead == 'l') ADVANCE(31); if (lookahead == 'o') ADVANCE(32); END_STATE(); case 7: if (lookahead == 'e') ADVANCE(33); if (lookahead == 'o') ADVANCE(34); END_STATE(); case 8: if (lookahead == 'l') ADVANCE(35); if (lookahead == 'n') ADVANCE(36); if (lookahead == 'x') ADVANCE(37); END_STATE(); case 9: if (lookahead == 'i') ADVANCE(38); if (lookahead == 'o') ADVANCE(39); if (lookahead == 'r') ADVANCE(40); END_STATE(); case 10: if (lookahead == 'o') ADVANCE(41); END_STATE(); case 11: if (lookahead == 'f') ADVANCE(42); if (lookahead == 'n') ADVANCE(43); END_STATE(); case 12: if (lookahead == 'o') ADVANCE(44); END_STATE(); case 13: if (lookahead == 'u') ADVANCE(45); END_STATE(); case 14: if (lookahead == 'a') ADVANCE(46); if (lookahead == 'e') ADVANCE(47); if (lookahead == 'o') ADVANCE(48); if (lookahead == 'u') ADVANCE(49); END_STATE(); case 15: if (lookahead == 'p') ADVANCE(50); if (lookahead == 'v') ADVANCE(51); END_STATE(); case 16: if (lookahead == 'r') ADVANCE(52); if (lookahead == 'u') ADVANCE(53); END_STATE(); case 17: if (lookahead == 'e') ADVANCE(54); END_STATE(); case 18: if (lookahead == 'h') ADVANCE(55); if (lookahead == 'i') ADVANCE(56); if (lookahead == 't') ADVANCE(57); if (lookahead == 'w') ADVANCE(58); END_STATE(); case 19: if (lookahead == 'e') ADVANCE(59); if (lookahead == 'h') ADVANCE(60); if (lookahead == 'r') ADVANCE(61); if (lookahead == 'y') ADVANCE(62); END_STATE(); case 20: if (lookahead == 'n') ADVANCE(63); if (lookahead == 's') ADVANCE(64); END_STATE(); case 21: if (lookahead == 'i') ADVANCE(65); if (lookahead == 'o') ADVANCE(66); END_STATE(); case 22: if (lookahead == 'h') ADVANCE(67); END_STATE(); case 23: if (lookahead == 'L') ADVANCE(68); END_STATE(); case 24: if (lookahead == '\n') SKIP(0) END_STATE(); case 25: if (lookahead == 't') ADVANCE(69); END_STATE(); case 26: if (lookahead == 'a') ADVANCE(70); if (lookahead == 'b') ADVANCE(71); if (lookahead == 'c') ADVANCE(72); if (lookahead == 'd') ADVANCE(73); if (lookahead == 'f') ADVANCE(74); if (lookahead == 'r') ADVANCE(75); if (lookahead == 's') ADVANCE(76); if (lookahead == 't') ADVANCE(77); if (lookahead == 'u') ADVANCE(78); if (lookahead == 'v') ADVANCE(79); END_STATE(); case 27: if (lookahead == 'n') ADVANCE(80); END_STATE(); case 28: if (lookahead == 't') ADVANCE(81); END_STATE(); case 29: if (lookahead == 'e') ADVANCE(82); END_STATE(); case 30: if (lookahead == 's') ADVANCE(83); if (lookahead == 't') ADVANCE(84); END_STATE(); case 31: if (lookahead == 'a') ADVANCE(85); END_STATE(); case 32: if (lookahead == '_') ADVANCE(86); if (lookahead == 'n') ADVANCE(87); END_STATE(); case 33: if (lookahead == 'c') ADVANCE(88); if (lookahead == 'f') ADVANCE(89); if (lookahead == 'l') ADVANCE(90); END_STATE(); case 34: ACCEPT_TOKEN(anon_sym_do); END_STATE(); case 35: if (lookahead == 's') ADVANCE(91); END_STATE(); case 36: if (lookahead == 'u') ADVANCE(92); END_STATE(); case 37: if (lookahead == 'p') ADVANCE(93); if (lookahead == 't') ADVANCE(94); END_STATE(); case 38: if (lookahead == 'n') ADVANCE(95); END_STATE(); case 39: if (lookahead == 'r') ADVANCE(96); END_STATE(); case 40: if (lookahead == 'i') ADVANCE(97); END_STATE(); case 41: if (lookahead == 't') ADVANCE(98); END_STATE(); case 42: ACCEPT_TOKEN(anon_sym_if); END_STATE(); case 43: if (lookahead == 'l') ADVANCE(99); END_STATE(); case 44: if (lookahead == 'n') ADVANCE(100); END_STATE(); case 45: if (lookahead == 't') ADVANCE(101); END_STATE(); case 46: if (lookahead == 'm') ADVANCE(102); END_STATE(); case 47: if (lookahead == 'w') ADVANCE(103); END_STATE(); case 48: if (lookahead == 'e') ADVANCE(104); END_STATE(); case 49: if (lookahead == 'l') ADVANCE(105); END_STATE(); case 50: if (lookahead == 'e') ADVANCE(106); END_STATE(); case 51: if (lookahead == 'e') ADVANCE(107); END_STATE(); case 52: if (lookahead == 'i') ADVANCE(108); if (lookahead == 'o') ADVANCE(109); END_STATE(); case 53: if (lookahead == 'b') ADVANCE(110); END_STATE(); case 54: if (lookahead == 'g') ADVANCE(111); if (lookahead == 's') ADVANCE(112); if (lookahead == 't') ADVANCE(113); END_STATE(); case 55: if (lookahead == 'o') ADVANCE(114); END_STATE(); case 56: if (lookahead == 'g') ADVANCE(115); if (lookahead == 'z') ADVANCE(116); END_STATE(); case 57: if (lookahead == 'a') ADVANCE(117); if (lookahead == 'r') ADVANCE(118); END_STATE(); case 58: if (lookahead == 'i') ADVANCE(119); END_STATE(); case 59: if (lookahead == 'm') ADVANCE(120); END_STATE(); case 60: if (lookahead == 'i') ADVANCE(121); if (lookahead == 'r') ADVANCE(122); END_STATE(); case 61: if (lookahead == 'y') ADVANCE(123); END_STATE(); case 62: if (lookahead == 'p') ADVANCE(124); END_STATE(); case 63: if (lookahead == 'i') ADVANCE(125); if (lookahead == 's') ADVANCE(126); END_STATE(); case 64: if (lookahead == 'i') ADVANCE(127); END_STATE(); case 65: if (lookahead == 'r') ADVANCE(128); END_STATE(); case 66: if (lookahead == 'l') ADVANCE(129); END_STATE(); case 67: if (lookahead == 'i') ADVANCE(130); END_STATE(); case 68: if (lookahead == 'L') ADVANCE(131); END_STATE(); case 69: if (lookahead == 'o') ADVANCE(132); END_STATE(); case 70: if (lookahead == 't') ADVANCE(133); END_STATE(); case 71: if (lookahead == 'a') ADVANCE(134); END_STATE(); case 72: if (lookahead == 'd') ADVANCE(135); if (lookahead == 'l') ADVANCE(136); END_STATE(); case 73: if (lookahead == 'e') ADVANCE(137); END_STATE(); case 74: if (lookahead == 'a') ADVANCE(138); END_STATE(); case 75: if (lookahead == 'e') ADVANCE(139); END_STATE(); case 76: if (lookahead == 'p') ADVANCE(140); if (lookahead == 't') ADVANCE(141); END_STATE(); case 77: if (lookahead == 'h') ADVANCE(142); END_STATE(); case 78: if (lookahead == 'n') ADVANCE(143); if (lookahead == 'p') ADVANCE(144); END_STATE(); case 79: if (lookahead == 'e') ADVANCE(145); END_STATE(); case 80: if (lookahead == 'a') ADVANCE(146); END_STATE(); case 81: if (lookahead == 'o') ADVANCE(147); END_STATE(); case 82: if (lookahead == 'a') ADVANCE(148); END_STATE(); case 83: if (lookahead == 'e') ADVANCE(149); END_STATE(); case 84: if (lookahead == 'c') ADVANCE(150); END_STATE(); case 85: if (lookahead == 's') ADVANCE(151); END_STATE(); case 86: if (lookahead == 'a') ADVANCE(152); if (lookahead == 'r') ADVANCE(153); if (lookahead == 'y') ADVANCE(154); END_STATE(); case 87: if (lookahead == 's') ADVANCE(155); if (lookahead == 't') ADVANCE(156); END_STATE(); case 88: if (lookahead == 'l') ADVANCE(157); END_STATE(); case 89: if (lookahead == 'a') ADVANCE(158); if (lookahead == 'i') ADVANCE(159); END_STATE(); case 90: if (lookahead == 'e') ADVANCE(160); END_STATE(); case 91: if (lookahead == 'e') ADVANCE(161); END_STATE(); case 92: if (lookahead == 'm') ADVANCE(162); END_STATE(); case 93: if (lookahead == 'l') ADVANCE(163); END_STATE(); case 94: if (lookahead == 'e') ADVANCE(164); END_STATE(); case 95: if (lookahead == 'a') ADVANCE(165); END_STATE(); case 96: ACCEPT_TOKEN(anon_sym_for); END_STATE(); case 97: if (lookahead == 'e') ADVANCE(166); END_STATE(); case 98: if (lookahead == 'o') ADVANCE(167); END_STATE(); case 99: if (lookahead == 'i') ADVANCE(168); END_STATE(); case 100: if (lookahead == 'g') ADVANCE(169); END_STATE(); case 101: if (lookahead == 'a') ADVANCE(170); END_STATE(); case 102: if (lookahead == 'e') ADVANCE(171); END_STATE(); case 103: ACCEPT_TOKEN(anon_sym_new); END_STATE(); case 104: if (lookahead == 'x') ADVANCE(172); END_STATE(); case 105: if (lookahead == 'l') ADVANCE(173); END_STATE(); case 106: if (lookahead == 'r') ADVANCE(174); END_STATE(); case 107: if (lookahead == 'r') ADVANCE(175); END_STATE(); case 108: if (lookahead == 'v') ADVANCE(176); END_STATE(); case 109: if (lookahead == 't') ADVANCE(177); END_STATE(); case 110: if (lookahead == 'l') ADVANCE(178); END_STATE(); case 111: if (lookahead == 'i') ADVANCE(179); END_STATE(); case 112: if (lookahead == 't') ADVANCE(180); END_STATE(); case 113: if (lookahead == 'u') ADVANCE(181); END_STATE(); case 114: if (lookahead == 'r') ADVANCE(182); END_STATE(); case 115: if (lookahead == 'n') ADVANCE(183); END_STATE(); case 116: if (lookahead == 'e') ADVANCE(184); END_STATE(); case 117: if (lookahead == 't') ADVANCE(185); END_STATE(); case 118: if (lookahead == 'u') ADVANCE(186); END_STATE(); case 119: if (lookahead == 't') ADVANCE(187); END_STATE(); case 120: if (lookahead == 'p') ADVANCE(188); END_STATE(); case 121: if (lookahead == 's') ADVANCE(189); END_STATE(); case 122: if (lookahead == 'e') ADVANCE(190); if (lookahead == 'o') ADVANCE(191); END_STATE(); case 123: ACCEPT_TOKEN(anon_sym_try); END_STATE(); case 124: if (lookahead == 'e') ADVANCE(192); END_STATE(); case 125: if (lookahead == 'o') ADVANCE(193); END_STATE(); case 126: if (lookahead == 'i') ADVANCE(194); END_STATE(); case 127: if (lookahead == 'n') ADVANCE(195); END_STATE(); case 128: if (lookahead == 't') ADVANCE(196); END_STATE(); case 129: if (lookahead == 'a') ADVANCE(197); END_STATE(); case 130: if (lookahead == 'l') ADVANCE(198); END_STATE(); case 131: ACCEPT_TOKEN(sym_null); END_STATE(); case 132: if (lookahead == 'm') ADVANCE(199); END_STATE(); case 133: if (lookahead == 't') ADVANCE(200); END_STATE(); case 134: if (lookahead == 's') ADVANCE(201); END_STATE(); case 135: if (lookahead == 'e') ADVANCE(202); END_STATE(); case 136: if (lookahead == 'r') ADVANCE(203); END_STATE(); case 137: if (lookahead == 'c') ADVANCE(204); END_STATE(); case 138: if (lookahead == 's') ADVANCE(205); END_STATE(); case 139: if (lookahead == 's') ADVANCE(206); END_STATE(); case 140: if (lookahead == 't') ADVANCE(207); END_STATE(); case 141: if (lookahead == 'd') ADVANCE(208); END_STATE(); case 142: if (lookahead == 'i') ADVANCE(209); END_STATE(); case 143: if (lookahead == 'a') ADVANCE(210); END_STATE(); case 144: if (lookahead == 't') ADVANCE(211); END_STATE(); case 145: if (lookahead == 'c') ADVANCE(212); END_STATE(); case 146: if (lookahead == 'l') ADVANCE(213); END_STATE(); case 147: ACCEPT_TOKEN(sym_auto); END_STATE(); case 148: if (lookahead == 'k') ADVANCE(214); END_STATE(); case 149: ACCEPT_TOKEN(anon_sym_case); END_STATE(); case 150: if (lookahead == 'h') ADVANCE(215); END_STATE(); case 151: if (lookahead == 's') ADVANCE(216); END_STATE(); case 152: if (lookahead == 'w') ADVANCE(217); END_STATE(); case 153: if (lookahead == 'e') ADVANCE(218); END_STATE(); case 154: if (lookahead == 'i') ADVANCE(219); END_STATE(); case 155: if (lookahead == 't') ADVANCE(220); END_STATE(); case 156: if (lookahead == 'i') ADVANCE(221); END_STATE(); case 157: if (lookahead == 't') ADVANCE(222); END_STATE(); case 158: if (lookahead == 'u') ADVANCE(223); END_STATE(); case 159: if (lookahead == 'n') ADVANCE(224); END_STATE(); case 160: if (lookahead == 't') ADVANCE(225); END_STATE(); case 161: ACCEPT_TOKEN(anon_sym_else); END_STATE(); case 162: ACCEPT_TOKEN(anon_sym_enum); END_STATE(); case 163: if (lookahead == 'i') ADVANCE(226); END_STATE(); case 164: if (lookahead == 'r') ADVANCE(227); END_STATE(); case 165: if (lookahead == 'l') ADVANCE(228); END_STATE(); case 166: if (lookahead == 'n') ADVANCE(229); END_STATE(); case 167: ACCEPT_TOKEN(anon_sym_goto); END_STATE(); case 168: if (lookahead == 'n') ADVANCE(230); END_STATE(); case 169: ACCEPT_TOKEN(anon_sym_long); END_STATE(); case 170: if (lookahead == 'b') ADVANCE(231); END_STATE(); case 171: if (lookahead == 's') ADVANCE(232); END_STATE(); case 172: if (lookahead == 'c') ADVANCE(233); END_STATE(); case 173: if (lookahead == 'p') ADVANCE(234); END_STATE(); case 174: if (lookahead == 'a') ADVANCE(235); END_STATE(); case 175: if (lookahead == 'r') ADVANCE(236); END_STATE(); case 176: if (lookahead == 'a') ADVANCE(237); END_STATE(); case 177: if (lookahead == 'e') ADVANCE(238); END_STATE(); case 178: if (lookahead == 'i') ADVANCE(239); END_STATE(); case 179: if (lookahead == 's') ADVANCE(240); END_STATE(); case 180: if (lookahead == 'r') ADVANCE(241); END_STATE(); case 181: if (lookahead == 'r') ADVANCE(242); END_STATE(); case 182: if (lookahead == 't') ADVANCE(243); END_STATE(); case 183: if (lookahead == 'e') ADVANCE(244); END_STATE(); case 184: if (lookahead == 'o') ADVANCE(245); END_STATE(); case 185: if (lookahead == 'i') ADVANCE(246); END_STATE(); case 186: if (lookahead == 'c') ADVANCE(247); END_STATE(); case 187: if (lookahead == 'c') ADVANCE(248); END_STATE(); case 188: if (lookahead == 'l') ADVANCE(249); END_STATE(); case 189: ACCEPT_TOKEN(sym_this); END_STATE(); case 190: if (lookahead == 'a') ADVANCE(250); END_STATE(); case 191: if (lookahead == 'w') ADVANCE(251); END_STATE(); case 192: if (lookahead == 'd') ADVANCE(252); if (lookahead == 'n') ADVANCE(253); END_STATE(); case 193: if (lookahead == 'n') ADVANCE(254); END_STATE(); case 194: if (lookahead == 'g') ADVANCE(255); END_STATE(); case 195: if (lookahead == 'g') ADVANCE(256); END_STATE(); case 196: if (lookahead == 'u') ADVANCE(257); END_STATE(); case 197: if (lookahead == 't') ADVANCE(258); END_STATE(); case 198: if (lookahead == 'e') ADVANCE(259); END_STATE(); case 199: if (lookahead == 'i') ADVANCE(260); END_STATE(); case 200: if (lookahead == 'r') ADVANCE(261); END_STATE(); case 201: if (lookahead == 'e') ADVANCE(262); END_STATE(); case 202: if (lookahead == 'c') ADVANCE(263); END_STATE(); case 203: if (lookahead == 'c') ADVANCE(264); END_STATE(); case 204: if (lookahead == 'l') ADVANCE(265); END_STATE(); case 205: if (lookahead == 't') ADVANCE(266); END_STATE(); case 206: if (lookahead == 't') ADVANCE(267); END_STATE(); case 207: if (lookahead == 'r') ADVANCE(268); END_STATE(); case 208: if (lookahead == 'c') ADVANCE(269); END_STATE(); case 209: if (lookahead == 's') ADVANCE(270); END_STATE(); case 210: if (lookahead == 'l') ADVANCE(271); END_STATE(); case 211: if (lookahead == 'r') ADVANCE(272); END_STATE(); case 212: if (lookahead == 't') ADVANCE(273); END_STATE(); case 213: if (lookahead == 'i') ADVANCE(274); END_STATE(); case 214: ACCEPT_TOKEN(anon_sym_break); END_STATE(); case 215: ACCEPT_TOKEN(anon_sym_catch); END_STATE(); case 216: ACCEPT_TOKEN(anon_sym_class); END_STATE(); case 217: if (lookahead == 'a') ADVANCE(275); END_STATE(); case 218: if (lookahead == 't') ADVANCE(276); END_STATE(); case 219: if (lookahead == 'e') ADVANCE(277); END_STATE(); case 220: ACCEPT_TOKEN(anon_sym_const); if (lookahead == 'e') ADVANCE(278); END_STATE(); case 221: if (lookahead == 'n') ADVANCE(279); END_STATE(); case 222: if (lookahead == 'y') ADVANCE(280); END_STATE(); case 223: if (lookahead == 'l') ADVANCE(281); END_STATE(); case 224: if (lookahead == 'e') ADVANCE(282); END_STATE(); case 225: if (lookahead == 'e') ADVANCE(283); END_STATE(); case 226: if (lookahead == 'c') ADVANCE(284); END_STATE(); case 227: if (lookahead == 'n') ADVANCE(285); END_STATE(); case 228: ACCEPT_TOKEN(anon_sym_final); END_STATE(); case 229: if (lookahead == 'd') ADVANCE(286); END_STATE(); case 230: if (lookahead == 'e') ADVANCE(287); END_STATE(); case 231: if (lookahead == 'l') ADVANCE(288); END_STATE(); case 232: if (lookahead == 'p') ADVANCE(289); END_STATE(); case 233: if (lookahead == 'e') ADVANCE(290); END_STATE(); case 234: if (lookahead == 't') ADVANCE(291); END_STATE(); case 235: if (lookahead == 't') ADVANCE(292); END_STATE(); case 236: if (lookahead == 'i') ADVANCE(293); END_STATE(); case 237: if (lookahead == 't') ADVANCE(294); END_STATE(); case 238: if (lookahead == 'c') ADVANCE(295); END_STATE(); case 239: if (lookahead == 'c') ADVANCE(296); END_STATE(); case 240: if (lookahead == 't') ADVANCE(297); END_STATE(); case 241: if (lookahead == 'i') ADVANCE(298); END_STATE(); case 242: if (lookahead == 'n') ADVANCE(299); END_STATE(); case 243: ACCEPT_TOKEN(anon_sym_short); END_STATE(); case 244: if (lookahead == 'd') ADVANCE(300); END_STATE(); case 245: if (lookahead == 'f') ADVANCE(301); END_STATE(); case 246: if (lookahead == 'c') ADVANCE(302); END_STATE(); case 247: if (lookahead == 't') ADVANCE(303); END_STATE(); case 248: if (lookahead == 'h') ADVANCE(304); END_STATE(); case 249: if (lookahead == 'a') ADVANCE(305); END_STATE(); case 250: if (lookahead == 'd') ADVANCE(306); END_STATE(); case 251: ACCEPT_TOKEN(anon_sym_throw); END_STATE(); case 252: if (lookahead == 'e') ADVANCE(307); END_STATE(); case 253: if (lookahead == 'a') ADVANCE(308); END_STATE(); case 254: ACCEPT_TOKEN(anon_sym_union); END_STATE(); case 255: if (lookahead == 'n') ADVANCE(309); END_STATE(); case 256: ACCEPT_TOKEN(anon_sym_using); END_STATE(); case 257: if (lookahead == 'a') ADVANCE(310); END_STATE(); case 258: if (lookahead == 'i') ADVANCE(311); END_STATE(); case 259: ACCEPT_TOKEN(anon_sym_while); END_STATE(); case 260: if (lookahead == 'c') ADVANCE(312); END_STATE(); case 261: if (lookahead == 'i') ADVANCE(313); END_STATE(); case 262: if (lookahead == 'd') ADVANCE(314); END_STATE(); case 263: if (lookahead == 'l') ADVANCE(315); END_STATE(); case 264: if (lookahead == 'a') ADVANCE(316); END_STATE(); case 265: if (lookahead == 's') ADVANCE(317); END_STATE(); case 266: if (lookahead == 'c') ADVANCE(318); END_STATE(); case 267: if (lookahead == 'r') ADVANCE(319); END_STATE(); case 268: ACCEPT_TOKEN(sym_ms_signed_ptr_modifier); END_STATE(); case 269: if (lookahead == 'a') ADVANCE(320); END_STATE(); case 270: if (lookahead == 'c') ADVANCE(321); END_STATE(); case 271: if (lookahead == 'i') ADVANCE(322); END_STATE(); case 272: ACCEPT_TOKEN(sym_ms_unsigned_ptr_modifier); END_STATE(); case 273: if (lookahead == 'o') ADVANCE(323); END_STATE(); case 274: if (lookahead == 'g') ADVANCE(324); END_STATE(); case 275: if (lookahead == 'i') ADVANCE(325); END_STATE(); case 276: if (lookahead == 'u') ADVANCE(326); END_STATE(); case 277: if (lookahead == 'l') ADVANCE(327); END_STATE(); case 278: if (lookahead == 'x') ADVANCE(328); END_STATE(); case 279: if (lookahead == 'u') ADVANCE(329); END_STATE(); case 280: if (lookahead == 'p') ADVANCE(330); END_STATE(); case 281: if (lookahead == 't') ADVANCE(331); END_STATE(); case 282: if (lookahead == 'd') ADVANCE(332); END_STATE(); case 283: ACCEPT_TOKEN(anon_sym_delete); END_STATE(); case 284: if (lookahead == 'i') ADVANCE(333); END_STATE(); case 285: ACCEPT_TOKEN(anon_sym_extern); END_STATE(); case 286: ACCEPT_TOKEN(anon_sym_friend); END_STATE(); case 287: ACCEPT_TOKEN(anon_sym_inline); END_STATE(); case 288: if (lookahead == 'e') ADVANCE(334); END_STATE(); case 289: if (lookahead == 'a') ADVANCE(335); END_STATE(); case 290: if (lookahead == 'p') ADVANCE(336); END_STATE(); case 291: if (lookahead == 'r') ADVANCE(337); END_STATE(); case 292: if (lookahead == 'o') ADVANCE(338); END_STATE(); case 293: if (lookahead == 'd') ADVANCE(339); END_STATE(); case 294: if (lookahead == 'e') ADVANCE(340); END_STATE(); case 295: if (lookahead == 't') ADVANCE(341); END_STATE(); case 296: ACCEPT_TOKEN(anon_sym_public); END_STATE(); case 297: if (lookahead == 'e') ADVANCE(342); END_STATE(); case 298: if (lookahead == 'c') ADVANCE(343); END_STATE(); case 299: ACCEPT_TOKEN(anon_sym_return); END_STATE(); case 300: ACCEPT_TOKEN(anon_sym_signed); END_STATE(); case 301: ACCEPT_TOKEN(anon_sym_sizeof); END_STATE(); case 302: ACCEPT_TOKEN(anon_sym_static); if (lookahead == '_') ADVANCE(344); END_STATE(); case 303: ACCEPT_TOKEN(anon_sym_struct); END_STATE(); case 304: ACCEPT_TOKEN(anon_sym_switch); END_STATE(); case 305: if (lookahead == 't') ADVANCE(345); END_STATE(); case 306: if (lookahead == '_') ADVANCE(346); END_STATE(); case 307: if (lookahead == 'f') ADVANCE(347); END_STATE(); case 308: if (lookahead == 'm') ADVANCE(348); END_STATE(); case 309: if (lookahead == 'e') ADVANCE(349); END_STATE(); case 310: if (lookahead == 'l') ADVANCE(350); END_STATE(); case 311: if (lookahead == 'l') ADVANCE(351); END_STATE(); case 312: ACCEPT_TOKEN(anon_sym__Atomic); END_STATE(); case 313: if (lookahead == 'b') ADVANCE(352); END_STATE(); case 314: ACCEPT_TOKEN(anon_sym___based); END_STATE(); case 315: ACCEPT_TOKEN(anon_sym___cdecl); END_STATE(); case 316: if (lookahead == 'l') ADVANCE(353); END_STATE(); case 317: if (lookahead == 'p') ADVANCE(354); END_STATE(); case 318: if (lookahead == 'a') ADVANCE(355); END_STATE(); case 319: if (lookahead == 'i') ADVANCE(356); END_STATE(); case 320: if (lookahead == 'l') ADVANCE(357); END_STATE(); case 321: if (lookahead == 'a') ADVANCE(358); END_STATE(); case 322: if (lookahead == 'g') ADVANCE(359); END_STATE(); case 323: if (lookahead == 'r') ADVANCE(360); END_STATE(); case 324: if (lookahead == 'n') ADVANCE(361); END_STATE(); case 325: if (lookahead == 't') ADVANCE(362); END_STATE(); case 326: if (lookahead == 'r') ADVANCE(363); END_STATE(); case 327: if (lookahead == 'd') ADVANCE(364); END_STATE(); case 328: if (lookahead == 'p') ADVANCE(365); END_STATE(); case 329: if (lookahead == 'e') ADVANCE(366); END_STATE(); case 330: if (lookahead == 'e') ADVANCE(367); END_STATE(); case 331: ACCEPT_TOKEN(anon_sym_default); END_STATE(); case 332: ACCEPT_TOKEN(anon_sym_defined); END_STATE(); case 333: if (lookahead == 't') ADVANCE(368); END_STATE(); case 334: ACCEPT_TOKEN(anon_sym_mutable); END_STATE(); case 335: if (lookahead == 'c') ADVANCE(369); END_STATE(); case 336: if (lookahead == 't') ADVANCE(370); END_STATE(); case 337: ACCEPT_TOKEN(sym_nullptr); END_STATE(); case 338: if (lookahead == 'r') ADVANCE(371); END_STATE(); case 339: if (lookahead == 'e') ADVANCE(372); END_STATE(); case 340: ACCEPT_TOKEN(anon_sym_private); END_STATE(); case 341: if (lookahead == 'e') ADVANCE(373); END_STATE(); case 342: if (lookahead == 'r') ADVANCE(374); END_STATE(); case 343: if (lookahead == 't') ADVANCE(375); END_STATE(); case 344: if (lookahead == 'a') ADVANCE(376); END_STATE(); case 345: if (lookahead == 'e') ADVANCE(377); END_STATE(); case 346: if (lookahead == 'l') ADVANCE(378); END_STATE(); case 347: ACCEPT_TOKEN(anon_sym_typedef); END_STATE(); case 348: if (lookahead == 'e') ADVANCE(379); END_STATE(); case 349: if (lookahead == 'd') ADVANCE(380); END_STATE(); case 350: ACCEPT_TOKEN(anon_sym_virtual); END_STATE(); case 351: if (lookahead == 'e') ADVANCE(381); END_STATE(); case 352: if (lookahead == 'u') ADVANCE(382); END_STATE(); case 353: if (lookahead == 'l') ADVANCE(383); END_STATE(); case 354: if (lookahead == 'e') ADVANCE(384); END_STATE(); case 355: if (lookahead == 'l') ADVANCE(385); END_STATE(); case 356: if (lookahead == 'c') ADVANCE(386); END_STATE(); case 357: if (lookahead == 'l') ADVANCE(387); END_STATE(); case 358: if (lookahead == 'l') ADVANCE(388); END_STATE(); case 359: if (lookahead == 'n') ADVANCE(389); END_STATE(); case 360: if (lookahead == 'c') ADVANCE(390); END_STATE(); case 361: if (lookahead == 'e') ADVANCE(391); END_STATE(); case 362: ACCEPT_TOKEN(anon_sym_co_await); END_STATE(); case 363: if (lookahead == 'n') ADVANCE(392); END_STATE(); case 364: ACCEPT_TOKEN(anon_sym_co_yield); END_STATE(); case 365: if (lookahead == 'r') ADVANCE(393); END_STATE(); case 366: ACCEPT_TOKEN(anon_sym_continue); END_STATE(); case 367: ACCEPT_TOKEN(anon_sym_decltype); END_STATE(); case 368: ACCEPT_TOKEN(anon_sym_explicit); END_STATE(); case 369: if (lookahead == 'e') ADVANCE(394); END_STATE(); case 370: ACCEPT_TOKEN(anon_sym_noexcept); END_STATE(); case 371: ACCEPT_TOKEN(anon_sym_operator); END_STATE(); case 372: ACCEPT_TOKEN(anon_sym_override); END_STATE(); case 373: if (lookahead == 'd') ADVANCE(395); END_STATE(); case 374: ACCEPT_TOKEN(anon_sym_register); END_STATE(); case 375: ACCEPT_TOKEN(anon_sym_restrict); END_STATE(); case 376: if (lookahead == 's') ADVANCE(396); END_STATE(); case 377: ACCEPT_TOKEN(anon_sym_template); END_STATE(); case 378: if (lookahead == 'o') ADVANCE(397); END_STATE(); case 379: ACCEPT_TOKEN(anon_sym_typename); END_STATE(); case 380: ACCEPT_TOKEN(anon_sym_unsigned); END_STATE(); case 381: ACCEPT_TOKEN(anon_sym_volatile); END_STATE(); case 382: if (lookahead == 't') ADVANCE(398); END_STATE(); case 383: ACCEPT_TOKEN(anon_sym___clrcall); END_STATE(); case 384: if (lookahead == 'c') ADVANCE(399); END_STATE(); case 385: if (lookahead == 'l') ADVANCE(400); END_STATE(); case 386: if (lookahead == 't') ADVANCE(401); END_STATE(); case 387: ACCEPT_TOKEN(anon_sym___stdcall); END_STATE(); case 388: if (lookahead == 'l') ADVANCE(402); END_STATE(); case 389: if (lookahead == 'e') ADVANCE(403); END_STATE(); case 390: if (lookahead == 'a') ADVANCE(404); END_STATE(); case 391: if (lookahead == 'd') ADVANCE(405); END_STATE(); case 392: ACCEPT_TOKEN(anon_sym_co_return); END_STATE(); case 393: ACCEPT_TOKEN(anon_sym_constexpr); END_STATE(); case 394: ACCEPT_TOKEN(anon_sym_namespace); END_STATE(); case 395: ACCEPT_TOKEN(anon_sym_protected); END_STATE(); case 396: if (lookahead == 's') ADVANCE(406); END_STATE(); case 397: if (lookahead == 'c') ADVANCE(407); END_STATE(); case 398: if (lookahead == 'e') ADVANCE(408); END_STATE(); case 399: ACCEPT_TOKEN(anon_sym___declspec); END_STATE(); case 400: ACCEPT_TOKEN(anon_sym___fastcall); END_STATE(); case 401: ACCEPT_TOKEN(sym_ms_restrict_modifier); END_STATE(); case 402: ACCEPT_TOKEN(anon_sym___thiscall); END_STATE(); case 403: if (lookahead == 'd') ADVANCE(409); END_STATE(); case 404: if (lookahead == 'l') ADVANCE(410); END_STATE(); case 405: ACCEPT_TOKEN(anon_sym__unaligned); END_STATE(); case 406: if (lookahead == 'e') ADVANCE(411); END_STATE(); case 407: if (lookahead == 'a') ADVANCE(412); END_STATE(); case 408: if (lookahead == '_') ADVANCE(413); END_STATE(); case 409: ACCEPT_TOKEN(anon_sym___unaligned); END_STATE(); case 410: if (lookahead == 'l') ADVANCE(414); END_STATE(); case 411: if (lookahead == 'r') ADVANCE(415); END_STATE(); case 412: if (lookahead == 'l') ADVANCE(416); END_STATE(); case 413: if (lookahead == '_') ADVANCE(417); END_STATE(); case 414: ACCEPT_TOKEN(anon_sym___vectorcall); END_STATE(); case 415: if (lookahead == 't') ADVANCE(418); END_STATE(); case 416: ACCEPT_TOKEN(anon_sym_thread_local); END_STATE(); case 417: ACCEPT_TOKEN(anon_sym___attribute__); END_STATE(); case 418: ACCEPT_TOKEN(anon_sym_static_assert); END_STATE(); default: return false; } } static const TSLexMode ts_lex_modes[STATE_COUNT] = { [0] = {.lex_state = 0, .external_lex_state = 1}, [1] = {.lex_state = 204, .external_lex_state = 1}, [2] = {.lex_state = 204, .external_lex_state = 1}, [3] = {.lex_state = 204, .external_lex_state = 1}, [4] = {.lex_state = 204, .external_lex_state = 1}, [5] = {.lex_state = 204, .external_lex_state = 1}, [6] = {.lex_state = 204, .external_lex_state = 1}, [7] = {.lex_state = 204, .external_lex_state = 1}, [8] = {.lex_state = 204, .external_lex_state = 1}, [9] = {.lex_state = 204, .external_lex_state = 1}, [10] = {.lex_state = 105, .external_lex_state = 1}, [11] = {.lex_state = 105, .external_lex_state = 1}, [12] = {.lex_state = 105, .external_lex_state = 1}, [13] = {.lex_state = 105, .external_lex_state = 1}, [14] = {.lex_state = 105, .external_lex_state = 1}, [15] = {.lex_state = 105, .external_lex_state = 1}, [16] = {.lex_state = 105, .external_lex_state = 1}, [17] = {.lex_state = 105, .external_lex_state = 1}, [18] = {.lex_state = 105, .external_lex_state = 1}, [19] = {.lex_state = 105, .external_lex_state = 1}, [20] = {.lex_state = 105, .external_lex_state = 1}, [21] = {.lex_state = 105, .external_lex_state = 1}, [22] = {.lex_state = 105, .external_lex_state = 1}, [23] = {.lex_state = 105, .external_lex_state = 1}, [24] = {.lex_state = 105, .external_lex_state = 1}, [25] = {.lex_state = 105, .external_lex_state = 1}, [26] = {.lex_state = 105, .external_lex_state = 1}, [27] = {.lex_state = 105, .external_lex_state = 1}, [28] = {.lex_state = 105, .external_lex_state = 1}, [29] = {.lex_state = 204, .external_lex_state = 1}, [30] = {.lex_state = 204, .external_lex_state = 1}, [31] = {.lex_state = 204, .external_lex_state = 1}, [32] = {.lex_state = 204, .external_lex_state = 1}, [33] = {.lex_state = 204, .external_lex_state = 1}, [34] = {.lex_state = 204, .external_lex_state = 1}, [35] = {.lex_state = 204, .external_lex_state = 1}, [36] = {.lex_state = 204, .external_lex_state = 1}, [37] = {.lex_state = 204, .external_lex_state = 1}, [38] = {.lex_state = 204, .external_lex_state = 1}, [39] = {.lex_state = 204, .external_lex_state = 1}, [40] = {.lex_state = 204, .external_lex_state = 1}, [41] = {.lex_state = 204, .external_lex_state = 1}, [42] = {.lex_state = 204, .external_lex_state = 1}, [43] = {.lex_state = 204, .external_lex_state = 1}, [44] = {.lex_state = 204, .external_lex_state = 1}, [45] = {.lex_state = 204, .external_lex_state = 1}, [46] = {.lex_state = 204, .external_lex_state = 1}, [47] = {.lex_state = 204, .external_lex_state = 1}, [48] = {.lex_state = 204, .external_lex_state = 1}, [49] = {.lex_state = 204, .external_lex_state = 1}, [50] = {.lex_state = 204, .external_lex_state = 1}, [51] = {.lex_state = 204, .external_lex_state = 1}, [52] = {.lex_state = 204, .external_lex_state = 1}, [53] = {.lex_state = 204, .external_lex_state = 1}, [54] = {.lex_state = 204, .external_lex_state = 1}, [55] = {.lex_state = 107, .external_lex_state = 1}, [56] = {.lex_state = 204, .external_lex_state = 1}, [57] = {.lex_state = 107, .external_lex_state = 1}, [58] = {.lex_state = 204, .external_lex_state = 1}, [59] = {.lex_state = 204, .external_lex_state = 1}, [60] = {.lex_state = 204, .external_lex_state = 1}, [61] = {.lex_state = 204, .external_lex_state = 1}, [62] = {.lex_state = 204, .external_lex_state = 1}, [63] = {.lex_state = 204, .external_lex_state = 1}, [64] = {.lex_state = 204, .external_lex_state = 1}, [65] = {.lex_state = 107, .external_lex_state = 1}, [66] = {.lex_state = 204, .external_lex_state = 1}, [67] = {.lex_state = 105, .external_lex_state = 1}, [68] = {.lex_state = 105, .external_lex_state = 1}, [69] = {.lex_state = 105, .external_lex_state = 1}, [70] = {.lex_state = 105, .external_lex_state = 1}, [71] = {.lex_state = 105, .external_lex_state = 1}, [72] = {.lex_state = 107, .external_lex_state = 1}, [73] = {.lex_state = 204, .external_lex_state = 1}, [74] = {.lex_state = 204, .external_lex_state = 1}, [75] = {.lex_state = 204, .external_lex_state = 1}, [76] = {.lex_state = 204, .external_lex_state = 1}, [77] = {.lex_state = 204, .external_lex_state = 1}, [78] = {.lex_state = 204, .external_lex_state = 1}, [79] = {.lex_state = 107, .external_lex_state = 1}, [80] = {.lex_state = 107, .external_lex_state = 1}, [81] = {.lex_state = 204, .external_lex_state = 1}, [82] = {.lex_state = 107, .external_lex_state = 1}, [83] = {.lex_state = 204, .external_lex_state = 1}, [84] = {.lex_state = 204, .external_lex_state = 1}, [85] = {.lex_state = 204, .external_lex_state = 1}, [86] = {.lex_state = 107, .external_lex_state = 1}, [87] = {.lex_state = 106, .external_lex_state = 1}, [88] = {.lex_state = 106, .external_lex_state = 1}, [89] = {.lex_state = 106, .external_lex_state = 1}, [90] = {.lex_state = 106, .external_lex_state = 1}, [91] = {.lex_state = 106, .external_lex_state = 1}, [92] = {.lex_state = 106, .external_lex_state = 1}, [93] = {.lex_state = 147}, [94] = {.lex_state = 147}, [95] = {.lex_state = 147}, [96] = {.lex_state = 147}, [97] = {.lex_state = 147}, [98] = {.lex_state = 147}, [99] = {.lex_state = 147}, [100] = {.lex_state = 147}, [101] = {.lex_state = 147}, [102] = {.lex_state = 147}, [103] = {.lex_state = 147}, [104] = {.lex_state = 147}, [105] = {.lex_state = 147}, [106] = {.lex_state = 147}, [107] = {.lex_state = 106, .external_lex_state = 1}, [108] = {.lex_state = 106, .external_lex_state = 1}, [109] = {.lex_state = 147}, [110] = {.lex_state = 106, .external_lex_state = 1}, [111] = {.lex_state = 106, .external_lex_state = 1}, [112] = {.lex_state = 106, .external_lex_state = 1}, [113] = {.lex_state = 106, .external_lex_state = 1}, [114] = {.lex_state = 106, .external_lex_state = 1}, [115] = {.lex_state = 106, .external_lex_state = 1}, [116] = {.lex_state = 119}, [117] = {.lex_state = 119}, [118] = {.lex_state = 119}, [119] = {.lex_state = 119}, [120] = {.lex_state = 119}, [121] = {.lex_state = 119}, [122] = {.lex_state = 120}, [123] = {.lex_state = 120}, [124] = {.lex_state = 119}, [125] = {.lex_state = 120}, [126] = {.lex_state = 119}, [127] = {.lex_state = 119}, [128] = {.lex_state = 119}, [129] = {.lex_state = 119}, [130] = {.lex_state = 119}, [131] = {.lex_state = 119}, [132] = {.lex_state = 119}, [133] = {.lex_state = 119}, [134] = {.lex_state = 108, .external_lex_state = 1}, [135] = {.lex_state = 108, .external_lex_state = 1}, [136] = {.lex_state = 106, .external_lex_state = 1}, [137] = {.lex_state = 105, .external_lex_state = 1}, [138] = {.lex_state = 105, .external_lex_state = 1}, [139] = {.lex_state = 106, .external_lex_state = 1}, [140] = {.lex_state = 106, .external_lex_state = 1}, [141] = {.lex_state = 106, .external_lex_state = 1}, [142] = {.lex_state = 105, .external_lex_state = 1}, [143] = {.lex_state = 204, .external_lex_state = 1}, [144] = {.lex_state = 105, .external_lex_state = 1}, [145] = {.lex_state = 204, .external_lex_state = 1}, [146] = {.lex_state = 105, .external_lex_state = 1}, [147] = {.lex_state = 107, .external_lex_state = 1}, [148] = {.lex_state = 107, .external_lex_state = 1}, [149] = {.lex_state = 204, .external_lex_state = 1}, [150] = {.lex_state = 204, .external_lex_state = 1}, [151] = {.lex_state = 109, .external_lex_state = 1}, [152] = {.lex_state = 105, .external_lex_state = 1}, [153] = {.lex_state = 109, .external_lex_state = 1}, [154] = {.lex_state = 109, .external_lex_state = 1}, [155] = {.lex_state = 109, .external_lex_state = 1}, [156] = {.lex_state = 109, .external_lex_state = 1}, [157] = {.lex_state = 109, .external_lex_state = 1}, [158] = {.lex_state = 109, .external_lex_state = 1}, [159] = {.lex_state = 109, .external_lex_state = 1}, [160] = {.lex_state = 109, .external_lex_state = 1}, [161] = {.lex_state = 109, .external_lex_state = 1}, [162] = {.lex_state = 109, .external_lex_state = 1}, [163] = {.lex_state = 109, .external_lex_state = 1}, [164] = {.lex_state = 109, .external_lex_state = 1}, [165] = {.lex_state = 109, .external_lex_state = 1}, [166] = {.lex_state = 109, .external_lex_state = 1}, [167] = {.lex_state = 109, .external_lex_state = 1}, [168] = {.lex_state = 109, .external_lex_state = 1}, [169] = {.lex_state = 109, .external_lex_state = 1}, [170] = {.lex_state = 109, .external_lex_state = 1}, [171] = {.lex_state = 109, .external_lex_state = 1}, [172] = {.lex_state = 109, .external_lex_state = 1}, [173] = {.lex_state = 109, .external_lex_state = 1}, [174] = {.lex_state = 109, .external_lex_state = 1}, [175] = {.lex_state = 109, .external_lex_state = 1}, [176] = {.lex_state = 109, .external_lex_state = 1}, [177] = {.lex_state = 109, .external_lex_state = 1}, [178] = {.lex_state = 109, .external_lex_state = 1}, [179] = {.lex_state = 109, .external_lex_state = 1}, [180] = {.lex_state = 109, .external_lex_state = 1}, [181] = {.lex_state = 109, .external_lex_state = 1}, [182] = {.lex_state = 109, .external_lex_state = 1}, [183] = {.lex_state = 109, .external_lex_state = 1}, [184] = {.lex_state = 109, .external_lex_state = 1}, [185] = {.lex_state = 106, .external_lex_state = 1}, [186] = {.lex_state = 109, .external_lex_state = 1}, [187] = {.lex_state = 106, .external_lex_state = 1}, [188] = {.lex_state = 109, .external_lex_state = 1}, [189] = {.lex_state = 109, .external_lex_state = 1}, [190] = {.lex_state = 109, .external_lex_state = 1}, [191] = {.lex_state = 109, .external_lex_state = 1}, [192] = {.lex_state = 109, .external_lex_state = 1}, [193] = {.lex_state = 109, .external_lex_state = 1}, [194] = {.lex_state = 109, .external_lex_state = 1}, [195] = {.lex_state = 109, .external_lex_state = 1}, [196] = {.lex_state = 105, .external_lex_state = 1}, [197] = {.lex_state = 109, .external_lex_state = 1}, [198] = {.lex_state = 109, .external_lex_state = 1}, [199] = {.lex_state = 109, .external_lex_state = 1}, [200] = {.lex_state = 109, .external_lex_state = 1}, [201] = {.lex_state = 109, .external_lex_state = 1}, [202] = {.lex_state = 106, .external_lex_state = 1}, [203] = {.lex_state = 109, .external_lex_state = 1}, [204] = {.lex_state = 106, .external_lex_state = 1}, [205] = {.lex_state = 109, .external_lex_state = 1}, [206] = {.lex_state = 105, .external_lex_state = 1}, [207] = {.lex_state = 105, .external_lex_state = 1}, [208] = {.lex_state = 105, .external_lex_state = 1}, [209] = {.lex_state = 105, .external_lex_state = 1}, [210] = {.lex_state = 105, .external_lex_state = 1}, [211] = {.lex_state = 105, .external_lex_state = 1}, [212] = {.lex_state = 105, .external_lex_state = 1}, [213] = {.lex_state = 105, .external_lex_state = 1}, [214] = {.lex_state = 105, .external_lex_state = 1}, [215] = {.lex_state = 105, .external_lex_state = 1}, [216] = {.lex_state = 105, .external_lex_state = 1}, [217] = {.lex_state = 105, .external_lex_state = 1}, [218] = {.lex_state = 109, .external_lex_state = 1}, [219] = {.lex_state = 109, .external_lex_state = 1}, [220] = {.lex_state = 105, .external_lex_state = 1}, [221] = {.lex_state = 105, .external_lex_state = 1}, [222] = {.lex_state = 109, .external_lex_state = 1}, [223] = {.lex_state = 105, .external_lex_state = 1}, [224] = {.lex_state = 105, .external_lex_state = 1}, [225] = {.lex_state = 109, .external_lex_state = 1}, [226] = {.lex_state = 109, .external_lex_state = 1}, [227] = {.lex_state = 105, .external_lex_state = 1}, [228] = {.lex_state = 105, .external_lex_state = 1}, [229] = {.lex_state = 105, .external_lex_state = 1}, [230] = {.lex_state = 109, .external_lex_state = 1}, [231] = {.lex_state = 109, .external_lex_state = 1}, [232] = {.lex_state = 109, .external_lex_state = 1}, [233] = {.lex_state = 109, .external_lex_state = 1}, [234] = {.lex_state = 105, .external_lex_state = 1}, [235] = {.lex_state = 105, .external_lex_state = 1}, [236] = {.lex_state = 105, .external_lex_state = 1}, [237] = {.lex_state = 105, .external_lex_state = 1}, [238] = {.lex_state = 109, .external_lex_state = 1}, [239] = {.lex_state = 109, .external_lex_state = 1}, [240] = {.lex_state = 109, .external_lex_state = 1}, [241] = {.lex_state = 109, .external_lex_state = 1}, [242] = {.lex_state = 109, .external_lex_state = 1}, [243] = {.lex_state = 105, .external_lex_state = 1}, [244] = {.lex_state = 109, .external_lex_state = 1}, [245] = {.lex_state = 109, .external_lex_state = 1}, [246] = {.lex_state = 109, .external_lex_state = 1}, [247] = {.lex_state = 105, .external_lex_state = 1}, [248] = {.lex_state = 109, .external_lex_state = 1}, [249] = {.lex_state = 109, .external_lex_state = 1}, [250] = {.lex_state = 109, .external_lex_state = 1}, [251] = {.lex_state = 105, .external_lex_state = 1}, [252] = {.lex_state = 105, .external_lex_state = 1}, [253] = {.lex_state = 109, .external_lex_state = 1}, [254] = {.lex_state = 105, .external_lex_state = 1}, [255] = {.lex_state = 105, .external_lex_state = 1}, [256] = {.lex_state = 105, .external_lex_state = 1}, [257] = {.lex_state = 105, .external_lex_state = 1}, [258] = {.lex_state = 105, .external_lex_state = 1}, [259] = {.lex_state = 109, .external_lex_state = 1}, [260] = {.lex_state = 109, .external_lex_state = 1}, [261] = {.lex_state = 109, .external_lex_state = 1}, [262] = {.lex_state = 105, .external_lex_state = 1}, [263] = {.lex_state = 105, .external_lex_state = 1}, [264] = {.lex_state = 105, .external_lex_state = 1}, [265] = {.lex_state = 105, .external_lex_state = 1}, [266] = {.lex_state = 105, .external_lex_state = 1}, [267] = {.lex_state = 105, .external_lex_state = 1}, [268] = {.lex_state = 109, .external_lex_state = 1}, [269] = {.lex_state = 109, .external_lex_state = 1}, [270] = {.lex_state = 109, .external_lex_state = 1}, [271] = {.lex_state = 109, .external_lex_state = 1}, [272] = {.lex_state = 109, .external_lex_state = 1}, [273] = {.lex_state = 109, .external_lex_state = 1}, [274] = {.lex_state = 109, .external_lex_state = 1}, [275] = {.lex_state = 109, .external_lex_state = 1}, [276] = {.lex_state = 109, .external_lex_state = 1}, [277] = {.lex_state = 109, .external_lex_state = 1}, [278] = {.lex_state = 109, .external_lex_state = 1}, [279] = {.lex_state = 105, .external_lex_state = 1}, [280] = {.lex_state = 109, .external_lex_state = 1}, [281] = {.lex_state = 109, .external_lex_state = 1}, [282] = {.lex_state = 109, .external_lex_state = 1}, [283] = {.lex_state = 105, .external_lex_state = 1}, [284] = {.lex_state = 109, .external_lex_state = 1}, [285] = {.lex_state = 109, .external_lex_state = 1}, [286] = {.lex_state = 109, .external_lex_state = 1}, [287] = {.lex_state = 109, .external_lex_state = 1}, [288] = {.lex_state = 105, .external_lex_state = 1}, [289] = {.lex_state = 105, .external_lex_state = 1}, [290] = {.lex_state = 105, .external_lex_state = 1}, [291] = {.lex_state = 109, .external_lex_state = 1}, [292] = {.lex_state = 105, .external_lex_state = 1}, [293] = {.lex_state = 105, .external_lex_state = 1}, [294] = {.lex_state = 109, .external_lex_state = 1}, [295] = {.lex_state = 109, .external_lex_state = 1}, [296] = {.lex_state = 105, .external_lex_state = 1}, [297] = {.lex_state = 109, .external_lex_state = 1}, [298] = {.lex_state = 109, .external_lex_state = 1}, [299] = {.lex_state = 105, .external_lex_state = 1}, [300] = {.lex_state = 105, .external_lex_state = 1}, [301] = {.lex_state = 109, .external_lex_state = 1}, [302] = {.lex_state = 105, .external_lex_state = 1}, [303] = {.lex_state = 105, .external_lex_state = 1}, [304] = {.lex_state = 105, .external_lex_state = 1}, [305] = {.lex_state = 105, .external_lex_state = 1}, [306] = {.lex_state = 105, .external_lex_state = 1}, [307] = {.lex_state = 105, .external_lex_state = 1}, [308] = {.lex_state = 105, .external_lex_state = 1}, [309] = {.lex_state = 109, .external_lex_state = 1}, [310] = {.lex_state = 109, .external_lex_state = 1}, [311] = {.lex_state = 105, .external_lex_state = 1}, [312] = {.lex_state = 109, .external_lex_state = 1}, [313] = {.lex_state = 105, .external_lex_state = 1}, [314] = {.lex_state = 109, .external_lex_state = 1}, [315] = {.lex_state = 105, .external_lex_state = 1}, [316] = {.lex_state = 105, .external_lex_state = 1}, [317] = {.lex_state = 109, .external_lex_state = 1}, [318] = {.lex_state = 105, .external_lex_state = 1}, [319] = {.lex_state = 105, .external_lex_state = 1}, [320] = {.lex_state = 109, .external_lex_state = 1}, [321] = {.lex_state = 109, .external_lex_state = 1}, [322] = {.lex_state = 99, .external_lex_state = 1}, [323] = {.lex_state = 105, .external_lex_state = 1}, [324] = {.lex_state = 105, .external_lex_state = 1}, [325] = {.lex_state = 109, .external_lex_state = 1}, [326] = {.lex_state = 109, .external_lex_state = 1}, [327] = {.lex_state = 105, .external_lex_state = 1}, [328] = {.lex_state = 109, .external_lex_state = 1}, [329] = {.lex_state = 109, .external_lex_state = 1}, [330] = {.lex_state = 109, .external_lex_state = 1}, [331] = {.lex_state = 109, .external_lex_state = 1}, [332] = {.lex_state = 109, .external_lex_state = 1}, [333] = {.lex_state = 105, .external_lex_state = 1}, [334] = {.lex_state = 105, .external_lex_state = 1}, [335] = {.lex_state = 109, .external_lex_state = 1}, [336] = {.lex_state = 105, .external_lex_state = 1}, [337] = {.lex_state = 109, .external_lex_state = 1}, [338] = {.lex_state = 109, .external_lex_state = 1}, [339] = {.lex_state = 109, .external_lex_state = 1}, [340] = {.lex_state = 109, .external_lex_state = 1}, [341] = {.lex_state = 109, .external_lex_state = 1}, [342] = {.lex_state = 105, .external_lex_state = 1}, [343] = {.lex_state = 109, .external_lex_state = 1}, [344] = {.lex_state = 109, .external_lex_state = 1}, [345] = {.lex_state = 109, .external_lex_state = 1}, [346] = {.lex_state = 105, .external_lex_state = 1}, [347] = {.lex_state = 109, .external_lex_state = 1}, [348] = {.lex_state = 109, .external_lex_state = 1}, [349] = {.lex_state = 106, .external_lex_state = 1}, [350] = {.lex_state = 105, .external_lex_state = 1}, [351] = {.lex_state = 105, .external_lex_state = 1}, [352] = {.lex_state = 105, .external_lex_state = 1}, [353] = {.lex_state = 109, .external_lex_state = 1}, [354] = {.lex_state = 105, .external_lex_state = 1}, [355] = {.lex_state = 105, .external_lex_state = 1}, [356] = {.lex_state = 105, .external_lex_state = 1}, [357] = {.lex_state = 105, .external_lex_state = 1}, [358] = {.lex_state = 109, .external_lex_state = 1}, [359] = {.lex_state = 109, .external_lex_state = 1}, [360] = {.lex_state = 109, .external_lex_state = 1}, [361] = {.lex_state = 105, .external_lex_state = 1}, [362] = {.lex_state = 105, .external_lex_state = 1}, [363] = {.lex_state = 105, .external_lex_state = 1}, [364] = {.lex_state = 105, .external_lex_state = 1}, [365] = {.lex_state = 105, .external_lex_state = 1}, [366] = {.lex_state = 105, .external_lex_state = 1}, [367] = {.lex_state = 105, .external_lex_state = 1}, [368] = {.lex_state = 105, .external_lex_state = 1}, [369] = {.lex_state = 105, .external_lex_state = 1}, [370] = {.lex_state = 105, .external_lex_state = 1}, [371] = {.lex_state = 105, .external_lex_state = 1}, [372] = {.lex_state = 105, .external_lex_state = 1}, [373] = {.lex_state = 107, .external_lex_state = 1}, [374] = {.lex_state = 105, .external_lex_state = 1}, [375] = {.lex_state = 105, .external_lex_state = 1}, [376] = {.lex_state = 105, .external_lex_state = 1}, [377] = {.lex_state = 204, .external_lex_state = 1}, [378] = {.lex_state = 105, .external_lex_state = 1}, [379] = {.lex_state = 105, .external_lex_state = 1}, [380] = {.lex_state = 105, .external_lex_state = 1}, [381] = {.lex_state = 105, .external_lex_state = 1}, [382] = {.lex_state = 105, .external_lex_state = 1}, [383] = {.lex_state = 105, .external_lex_state = 1}, [384] = {.lex_state = 105, .external_lex_state = 1}, [385] = {.lex_state = 105, .external_lex_state = 1}, [386] = {.lex_state = 105, .external_lex_state = 1}, [387] = {.lex_state = 105, .external_lex_state = 1}, [388] = {.lex_state = 105, .external_lex_state = 1}, [389] = {.lex_state = 105, .external_lex_state = 1}, [390] = {.lex_state = 204, .external_lex_state = 1}, [391] = {.lex_state = 105, .external_lex_state = 1}, [392] = {.lex_state = 105, .external_lex_state = 1}, [393] = {.lex_state = 105, .external_lex_state = 1}, [394] = {.lex_state = 105, .external_lex_state = 1}, [395] = {.lex_state = 105, .external_lex_state = 1}, [396] = {.lex_state = 105, .external_lex_state = 1}, [397] = {.lex_state = 105, .external_lex_state = 1}, [398] = {.lex_state = 105, .external_lex_state = 1}, [399] = {.lex_state = 105, .external_lex_state = 1}, [400] = {.lex_state = 105, .external_lex_state = 1}, [401] = {.lex_state = 105, .external_lex_state = 1}, [402] = {.lex_state = 105, .external_lex_state = 1}, [403] = {.lex_state = 105, .external_lex_state = 1}, [404] = {.lex_state = 107, .external_lex_state = 1}, [405] = {.lex_state = 105, .external_lex_state = 1}, [406] = {.lex_state = 105, .external_lex_state = 1}, [407] = {.lex_state = 105, .external_lex_state = 1}, [408] = {.lex_state = 105, .external_lex_state = 1}, [409] = {.lex_state = 105, .external_lex_state = 1}, [410] = {.lex_state = 105, .external_lex_state = 1}, [411] = {.lex_state = 204, .external_lex_state = 1}, [412] = {.lex_state = 105, .external_lex_state = 1}, [413] = {.lex_state = 107, .external_lex_state = 1}, [414] = {.lex_state = 105, .external_lex_state = 1}, [415] = {.lex_state = 105, .external_lex_state = 1}, [416] = {.lex_state = 204, .external_lex_state = 1}, [417] = {.lex_state = 105, .external_lex_state = 1}, [418] = {.lex_state = 105, .external_lex_state = 1}, [419] = {.lex_state = 204, .external_lex_state = 1}, [420] = {.lex_state = 204, .external_lex_state = 1}, [421] = {.lex_state = 204, .external_lex_state = 1}, [422] = {.lex_state = 204, .external_lex_state = 1}, [423] = {.lex_state = 107, .external_lex_state = 1}, [424] = {.lex_state = 107, .external_lex_state = 1}, [425] = {.lex_state = 204, .external_lex_state = 1}, [426] = {.lex_state = 204, .external_lex_state = 1}, [427] = {.lex_state = 107, .external_lex_state = 1}, [428] = {.lex_state = 204, .external_lex_state = 1}, [429] = {.lex_state = 204, .external_lex_state = 1}, [430] = {.lex_state = 204, .external_lex_state = 1}, [431] = {.lex_state = 107, .external_lex_state = 1}, [432] = {.lex_state = 107, .external_lex_state = 1}, [433] = {.lex_state = 107, .external_lex_state = 1}, [434] = {.lex_state = 107, .external_lex_state = 1}, [435] = {.lex_state = 107, .external_lex_state = 1}, [436] = {.lex_state = 204, .external_lex_state = 1}, [437] = {.lex_state = 204, .external_lex_state = 1}, [438] = {.lex_state = 107, .external_lex_state = 1}, [439] = {.lex_state = 107, .external_lex_state = 1}, [440] = {.lex_state = 107, .external_lex_state = 1}, [441] = {.lex_state = 204, .external_lex_state = 1}, [442] = {.lex_state = 107, .external_lex_state = 1}, [443] = {.lex_state = 107, .external_lex_state = 1}, [444] = {.lex_state = 107, .external_lex_state = 1}, [445] = {.lex_state = 204, .external_lex_state = 1}, [446] = {.lex_state = 204, .external_lex_state = 1}, [447] = {.lex_state = 107, .external_lex_state = 1}, [448] = {.lex_state = 204, .external_lex_state = 1}, [449] = {.lex_state = 204, .external_lex_state = 1}, [450] = {.lex_state = 107, .external_lex_state = 1}, [451] = {.lex_state = 107, .external_lex_state = 1}, [452] = {.lex_state = 107, .external_lex_state = 1}, [453] = {.lex_state = 204, .external_lex_state = 1}, [454] = {.lex_state = 204, .external_lex_state = 1}, [455] = {.lex_state = 107, .external_lex_state = 1}, [456] = {.lex_state = 204, .external_lex_state = 1}, [457] = {.lex_state = 204, .external_lex_state = 1}, [458] = {.lex_state = 204, .external_lex_state = 1}, [459] = {.lex_state = 204, .external_lex_state = 1}, [460] = {.lex_state = 204, .external_lex_state = 1}, [461] = {.lex_state = 204, .external_lex_state = 1}, [462] = {.lex_state = 107, .external_lex_state = 1}, [463] = {.lex_state = 204, .external_lex_state = 1}, [464] = {.lex_state = 204, .external_lex_state = 1}, [465] = {.lex_state = 107, .external_lex_state = 1}, [466] = {.lex_state = 204, .external_lex_state = 1}, [467] = {.lex_state = 107, .external_lex_state = 1}, [468] = {.lex_state = 204, .external_lex_state = 1}, [469] = {.lex_state = 204, .external_lex_state = 1}, [470] = {.lex_state = 204, .external_lex_state = 1}, [471] = {.lex_state = 107, .external_lex_state = 1}, [472] = {.lex_state = 204, .external_lex_state = 1}, [473] = {.lex_state = 204, .external_lex_state = 1}, [474] = {.lex_state = 204, .external_lex_state = 1}, [475] = {.lex_state = 107, .external_lex_state = 1}, [476] = {.lex_state = 107, .external_lex_state = 1}, [477] = {.lex_state = 107, .external_lex_state = 1}, [478] = {.lex_state = 204, .external_lex_state = 1}, [479] = {.lex_state = 204, .external_lex_state = 1}, [480] = {.lex_state = 204, .external_lex_state = 1}, [481] = {.lex_state = 204, .external_lex_state = 1}, [482] = {.lex_state = 204, .external_lex_state = 1}, [483] = {.lex_state = 204, .external_lex_state = 1}, [484] = {.lex_state = 204, .external_lex_state = 1}, [485] = {.lex_state = 204, .external_lex_state = 1}, [486] = {.lex_state = 107, .external_lex_state = 1}, [487] = {.lex_state = 107, .external_lex_state = 1}, [488] = {.lex_state = 204, .external_lex_state = 1}, [489] = {.lex_state = 107, .external_lex_state = 1}, [490] = {.lex_state = 107, .external_lex_state = 1}, [491] = {.lex_state = 107, .external_lex_state = 1}, [492] = {.lex_state = 204, .external_lex_state = 1}, [493] = {.lex_state = 204, .external_lex_state = 1}, [494] = {.lex_state = 107, .external_lex_state = 1}, [495] = {.lex_state = 204, .external_lex_state = 1}, [496] = {.lex_state = 204, .external_lex_state = 1}, [497] = {.lex_state = 204, .external_lex_state = 1}, [498] = {.lex_state = 204, .external_lex_state = 1}, [499] = {.lex_state = 204, .external_lex_state = 1}, [500] = {.lex_state = 107, .external_lex_state = 1}, [501] = {.lex_state = 204, .external_lex_state = 1}, [502] = {.lex_state = 204, .external_lex_state = 1}, [503] = {.lex_state = 107, .external_lex_state = 1}, [504] = {.lex_state = 204, .external_lex_state = 1}, [505] = {.lex_state = 107, .external_lex_state = 1}, [506] = {.lex_state = 204, .external_lex_state = 1}, [507] = {.lex_state = 107, .external_lex_state = 1}, [508] = {.lex_state = 204, .external_lex_state = 1}, [509] = {.lex_state = 204, .external_lex_state = 1}, [510] = {.lex_state = 204, .external_lex_state = 1}, [511] = {.lex_state = 204, .external_lex_state = 1}, [512] = {.lex_state = 204, .external_lex_state = 1}, [513] = {.lex_state = 204, .external_lex_state = 1}, [514] = {.lex_state = 204, .external_lex_state = 1}, [515] = {.lex_state = 204, .external_lex_state = 1}, [516] = {.lex_state = 107, .external_lex_state = 1}, [517] = {.lex_state = 204, .external_lex_state = 1}, [518] = {.lex_state = 204, .external_lex_state = 1}, [519] = {.lex_state = 204, .external_lex_state = 1}, [520] = {.lex_state = 204, .external_lex_state = 1}, [521] = {.lex_state = 204, .external_lex_state = 1}, [522] = {.lex_state = 204, .external_lex_state = 1}, [523] = {.lex_state = 204, .external_lex_state = 1}, [524] = {.lex_state = 204, .external_lex_state = 1}, [525] = {.lex_state = 204, .external_lex_state = 1}, [526] = {.lex_state = 204, .external_lex_state = 1}, [527] = {.lex_state = 204, .external_lex_state = 1}, [528] = {.lex_state = 204, .external_lex_state = 1}, [529] = {.lex_state = 204, .external_lex_state = 1}, [530] = {.lex_state = 107, .external_lex_state = 1}, [531] = {.lex_state = 107, .external_lex_state = 1}, [532] = {.lex_state = 204, .external_lex_state = 1}, [533] = {.lex_state = 204, .external_lex_state = 1}, [534] = {.lex_state = 204, .external_lex_state = 1}, [535] = {.lex_state = 204, .external_lex_state = 1}, [536] = {.lex_state = 204, .external_lex_state = 1}, [537] = {.lex_state = 204, .external_lex_state = 1}, [538] = {.lex_state = 204, .external_lex_state = 1}, [539] = {.lex_state = 204, .external_lex_state = 1}, [540] = {.lex_state = 204, .external_lex_state = 1}, [541] = {.lex_state = 107, .external_lex_state = 1}, [542] = {.lex_state = 204, .external_lex_state = 1}, [543] = {.lex_state = 204, .external_lex_state = 1}, [544] = {.lex_state = 204, .external_lex_state = 1}, [545] = {.lex_state = 204, .external_lex_state = 1}, [546] = {.lex_state = 107, .external_lex_state = 1}, [547] = {.lex_state = 107, .external_lex_state = 1}, [548] = {.lex_state = 204, .external_lex_state = 1}, [549] = {.lex_state = 204, .external_lex_state = 1}, [550] = {.lex_state = 204, .external_lex_state = 1}, [551] = {.lex_state = 107, .external_lex_state = 1}, [552] = {.lex_state = 107, .external_lex_state = 1}, [553] = {.lex_state = 107, .external_lex_state = 1}, [554] = {.lex_state = 204, .external_lex_state = 1}, [555] = {.lex_state = 204, .external_lex_state = 1}, [556] = {.lex_state = 204, .external_lex_state = 1}, [557] = {.lex_state = 204, .external_lex_state = 1}, [558] = {.lex_state = 204, .external_lex_state = 1}, [559] = {.lex_state = 107, .external_lex_state = 1}, [560] = {.lex_state = 204, .external_lex_state = 1}, [561] = {.lex_state = 107, .external_lex_state = 1}, [562] = {.lex_state = 204, .external_lex_state = 1}, [563] = {.lex_state = 107, .external_lex_state = 1}, [564] = {.lex_state = 204, .external_lex_state = 1}, [565] = {.lex_state = 204, .external_lex_state = 1}, [566] = {.lex_state = 204, .external_lex_state = 1}, [567] = {.lex_state = 107, .external_lex_state = 1}, [568] = {.lex_state = 204, .external_lex_state = 1}, [569] = {.lex_state = 107, .external_lex_state = 1}, [570] = {.lex_state = 107, .external_lex_state = 1}, [571] = {.lex_state = 204, .external_lex_state = 1}, [572] = {.lex_state = 107, .external_lex_state = 1}, [573] = {.lex_state = 204, .external_lex_state = 1}, [574] = {.lex_state = 204, .external_lex_state = 1}, [575] = {.lex_state = 107, .external_lex_state = 1}, [576] = {.lex_state = 204, .external_lex_state = 1}, [577] = {.lex_state = 204, .external_lex_state = 1}, [578] = {.lex_state = 204, .external_lex_state = 1}, [579] = {.lex_state = 107, .external_lex_state = 1}, [580] = {.lex_state = 204, .external_lex_state = 1}, [581] = {.lex_state = 107, .external_lex_state = 1}, [582] = {.lex_state = 204, .external_lex_state = 1}, [583] = {.lex_state = 204, .external_lex_state = 1}, [584] = {.lex_state = 204, .external_lex_state = 1}, [585] = {.lex_state = 107, .external_lex_state = 1}, [586] = {.lex_state = 204, .external_lex_state = 1}, [587] = {.lex_state = 204, .external_lex_state = 1}, [588] = {.lex_state = 204, .external_lex_state = 1}, [589] = {.lex_state = 204, .external_lex_state = 1}, [590] = {.lex_state = 107, .external_lex_state = 1}, [591] = {.lex_state = 107, .external_lex_state = 1}, [592] = {.lex_state = 107, .external_lex_state = 1}, [593] = {.lex_state = 204, .external_lex_state = 1}, [594] = {.lex_state = 107, .external_lex_state = 1}, [595] = {.lex_state = 204, .external_lex_state = 1}, [596] = {.lex_state = 107, .external_lex_state = 1}, [597] = {.lex_state = 204, .external_lex_state = 1}, [598] = {.lex_state = 204, .external_lex_state = 1}, [599] = {.lex_state = 204, .external_lex_state = 1}, [600] = {.lex_state = 204, .external_lex_state = 1}, [601] = {.lex_state = 204, .external_lex_state = 1}, [602] = {.lex_state = 204, .external_lex_state = 1}, [603] = {.lex_state = 204, .external_lex_state = 1}, [604] = {.lex_state = 204, .external_lex_state = 1}, [605] = {.lex_state = 204, .external_lex_state = 1}, [606] = {.lex_state = 204, .external_lex_state = 1}, [607] = {.lex_state = 204, .external_lex_state = 1}, [608] = {.lex_state = 204, .external_lex_state = 1}, [609] = {.lex_state = 204, .external_lex_state = 1}, [610] = {.lex_state = 204, .external_lex_state = 1}, [611] = {.lex_state = 204, .external_lex_state = 1}, [612] = {.lex_state = 204, .external_lex_state = 1}, [613] = {.lex_state = 204, .external_lex_state = 1}, [614] = {.lex_state = 204, .external_lex_state = 1}, [615] = {.lex_state = 204, .external_lex_state = 1}, [616] = {.lex_state = 204, .external_lex_state = 1}, [617] = {.lex_state = 107, .external_lex_state = 1}, [618] = {.lex_state = 107, .external_lex_state = 1}, [619] = {.lex_state = 204, .external_lex_state = 1}, [620] = {.lex_state = 107, .external_lex_state = 1}, [621] = {.lex_state = 107, .external_lex_state = 1}, [622] = {.lex_state = 107, .external_lex_state = 1}, [623] = {.lex_state = 107, .external_lex_state = 1}, [624] = {.lex_state = 107, .external_lex_state = 1}, [625] = {.lex_state = 204, .external_lex_state = 1}, [626] = {.lex_state = 204, .external_lex_state = 1}, [627] = {.lex_state = 107, .external_lex_state = 1}, [628] = {.lex_state = 107, .external_lex_state = 1}, [629] = {.lex_state = 204, .external_lex_state = 1}, [630] = {.lex_state = 204, .external_lex_state = 1}, [631] = {.lex_state = 204, .external_lex_state = 1}, [632] = {.lex_state = 107, .external_lex_state = 1}, [633] = {.lex_state = 107, .external_lex_state = 1}, [634] = {.lex_state = 204, .external_lex_state = 1}, [635] = {.lex_state = 204, .external_lex_state = 1}, [636] = {.lex_state = 107, .external_lex_state = 1}, [637] = {.lex_state = 204, .external_lex_state = 1}, [638] = {.lex_state = 107, .external_lex_state = 1}, [639] = {.lex_state = 204, .external_lex_state = 1}, [640] = {.lex_state = 204, .external_lex_state = 1}, [641] = {.lex_state = 107, .external_lex_state = 1}, [642] = {.lex_state = 204, .external_lex_state = 1}, [643] = {.lex_state = 107, .external_lex_state = 1}, [644] = {.lex_state = 204, .external_lex_state = 1}, [645] = {.lex_state = 204, .external_lex_state = 1}, [646] = {.lex_state = 204, .external_lex_state = 1}, [647] = {.lex_state = 107, .external_lex_state = 1}, [648] = {.lex_state = 204, .external_lex_state = 1}, [649] = {.lex_state = 204, .external_lex_state = 1}, [650] = {.lex_state = 107, .external_lex_state = 1}, [651] = {.lex_state = 204, .external_lex_state = 1}, [652] = {.lex_state = 204, .external_lex_state = 1}, [653] = {.lex_state = 204, .external_lex_state = 1}, [654] = {.lex_state = 204, .external_lex_state = 1}, [655] = {.lex_state = 204, .external_lex_state = 1}, [656] = {.lex_state = 204, .external_lex_state = 1}, [657] = {.lex_state = 204, .external_lex_state = 1}, [658] = {.lex_state = 107, .external_lex_state = 1}, [659] = {.lex_state = 107, .external_lex_state = 1}, [660] = {.lex_state = 204, .external_lex_state = 1}, [661] = {.lex_state = 107, .external_lex_state = 1}, [662] = {.lex_state = 107, .external_lex_state = 1}, [663] = {.lex_state = 107, .external_lex_state = 1}, [664] = {.lex_state = 107, .external_lex_state = 1}, [665] = {.lex_state = 107, .external_lex_state = 1}, [666] = {.lex_state = 107, .external_lex_state = 1}, [667] = {.lex_state = 107, .external_lex_state = 1}, [668] = {.lex_state = 107, .external_lex_state = 1}, [669] = {.lex_state = 204, .external_lex_state = 1}, [670] = {.lex_state = 107, .external_lex_state = 1}, [671] = {.lex_state = 204, .external_lex_state = 1}, [672] = {.lex_state = 107, .external_lex_state = 1}, [673] = {.lex_state = 107, .external_lex_state = 1}, [674] = {.lex_state = 107, .external_lex_state = 1}, [675] = {.lex_state = 204, .external_lex_state = 1}, [676] = {.lex_state = 204, .external_lex_state = 1}, [677] = {.lex_state = 204, .external_lex_state = 1}, [678] = {.lex_state = 107, .external_lex_state = 1}, [679] = {.lex_state = 204, .external_lex_state = 1}, [680] = {.lex_state = 204, .external_lex_state = 1}, [681] = {.lex_state = 204, .external_lex_state = 1}, [682] = {.lex_state = 204, .external_lex_state = 1}, [683] = {.lex_state = 204, .external_lex_state = 1}, [684] = {.lex_state = 204, .external_lex_state = 1}, [685] = {.lex_state = 204, .external_lex_state = 1}, [686] = {.lex_state = 204, .external_lex_state = 1}, [687] = {.lex_state = 204, .external_lex_state = 1}, [688] = {.lex_state = 204, .external_lex_state = 1}, [689] = {.lex_state = 204, .external_lex_state = 1}, [690] = {.lex_state = 204, .external_lex_state = 1}, [691] = {.lex_state = 204, .external_lex_state = 1}, [692] = {.lex_state = 204, .external_lex_state = 1}, [693] = {.lex_state = 204, .external_lex_state = 1}, [694] = {.lex_state = 204, .external_lex_state = 1}, [695] = {.lex_state = 107, .external_lex_state = 1}, [696] = {.lex_state = 204, .external_lex_state = 1}, [697] = {.lex_state = 204, .external_lex_state = 1}, [698] = {.lex_state = 204, .external_lex_state = 1}, [699] = {.lex_state = 204, .external_lex_state = 1}, [700] = {.lex_state = 204, .external_lex_state = 1}, [701] = {.lex_state = 204, .external_lex_state = 1}, [702] = {.lex_state = 204, .external_lex_state = 1}, [703] = {.lex_state = 204, .external_lex_state = 1}, [704] = {.lex_state = 204, .external_lex_state = 1}, [705] = {.lex_state = 204, .external_lex_state = 1}, [706] = {.lex_state = 107, .external_lex_state = 1}, [707] = {.lex_state = 204, .external_lex_state = 1}, [708] = {.lex_state = 204, .external_lex_state = 1}, [709] = {.lex_state = 204, .external_lex_state = 1}, [710] = {.lex_state = 107, .external_lex_state = 1}, [711] = {.lex_state = 107, .external_lex_state = 1}, [712] = {.lex_state = 204, .external_lex_state = 1}, [713] = {.lex_state = 107, .external_lex_state = 1}, [714] = {.lex_state = 204, .external_lex_state = 1}, [715] = {.lex_state = 107, .external_lex_state = 1}, [716] = {.lex_state = 107, .external_lex_state = 1}, [717] = {.lex_state = 107, .external_lex_state = 1}, [718] = {.lex_state = 204, .external_lex_state = 1}, [719] = {.lex_state = 107, .external_lex_state = 1}, [720] = {.lex_state = 204, .external_lex_state = 1}, [721] = {.lex_state = 107, .external_lex_state = 1}, [722] = {.lex_state = 107, .external_lex_state = 1}, [723] = {.lex_state = 107, .external_lex_state = 1}, [724] = {.lex_state = 204, .external_lex_state = 1}, [725] = {.lex_state = 107, .external_lex_state = 1}, [726] = {.lex_state = 107, .external_lex_state = 1}, [727] = {.lex_state = 204, .external_lex_state = 1}, [728] = {.lex_state = 204, .external_lex_state = 1}, [729] = {.lex_state = 107, .external_lex_state = 1}, [730] = {.lex_state = 204, .external_lex_state = 1}, [731] = {.lex_state = 204, .external_lex_state = 1}, [732] = {.lex_state = 204, .external_lex_state = 1}, [733] = {.lex_state = 204, .external_lex_state = 1}, [734] = {.lex_state = 107, .external_lex_state = 1}, [735] = {.lex_state = 204, .external_lex_state = 1}, [736] = {.lex_state = 204, .external_lex_state = 1}, [737] = {.lex_state = 204, .external_lex_state = 1}, [738] = {.lex_state = 204, .external_lex_state = 1}, [739] = {.lex_state = 204, .external_lex_state = 1}, [740] = {.lex_state = 107, .external_lex_state = 1}, [741] = {.lex_state = 204, .external_lex_state = 1}, [742] = {.lex_state = 107, .external_lex_state = 1}, [743] = {.lex_state = 204, .external_lex_state = 1}, [744] = {.lex_state = 204, .external_lex_state = 1}, [745] = {.lex_state = 107, .external_lex_state = 1}, [746] = {.lex_state = 204, .external_lex_state = 1}, [747] = {.lex_state = 107, .external_lex_state = 1}, [748] = {.lex_state = 204, .external_lex_state = 1}, [749] = {.lex_state = 204, .external_lex_state = 1}, [750] = {.lex_state = 204, .external_lex_state = 1}, [751] = {.lex_state = 204, .external_lex_state = 1}, [752] = {.lex_state = 204, .external_lex_state = 1}, [753] = {.lex_state = 204, .external_lex_state = 1}, [754] = {.lex_state = 107, .external_lex_state = 1}, [755] = {.lex_state = 204, .external_lex_state = 1}, [756] = {.lex_state = 204, .external_lex_state = 1}, [757] = {.lex_state = 107, .external_lex_state = 1}, [758] = {.lex_state = 204, .external_lex_state = 1}, [759] = {.lex_state = 107, .external_lex_state = 1}, [760] = {.lex_state = 204, .external_lex_state = 1}, [761] = {.lex_state = 204, .external_lex_state = 1}, [762] = {.lex_state = 204, .external_lex_state = 1}, [763] = {.lex_state = 204, .external_lex_state = 1}, [764] = {.lex_state = 107, .external_lex_state = 1}, [765] = {.lex_state = 107, .external_lex_state = 1}, [766] = {.lex_state = 204, .external_lex_state = 1}, [767] = {.lex_state = 204, .external_lex_state = 1}, [768] = {.lex_state = 107, .external_lex_state = 1}, [769] = {.lex_state = 107, .external_lex_state = 1}, [770] = {.lex_state = 107, .external_lex_state = 1}, [771] = {.lex_state = 204, .external_lex_state = 1}, [772] = {.lex_state = 107, .external_lex_state = 1}, [773] = {.lex_state = 204, .external_lex_state = 1}, [774] = {.lex_state = 204, .external_lex_state = 1}, [775] = {.lex_state = 204, .external_lex_state = 1}, [776] = {.lex_state = 107, .external_lex_state = 1}, [777] = {.lex_state = 204, .external_lex_state = 1}, [778] = {.lex_state = 204, .external_lex_state = 1}, [779] = {.lex_state = 204, .external_lex_state = 1}, [780] = {.lex_state = 204, .external_lex_state = 1}, [781] = {.lex_state = 204, .external_lex_state = 1}, [782] = {.lex_state = 107, .external_lex_state = 1}, [783] = {.lex_state = 107, .external_lex_state = 1}, [784] = {.lex_state = 204, .external_lex_state = 1}, [785] = {.lex_state = 107, .external_lex_state = 1}, [786] = {.lex_state = 204, .external_lex_state = 1}, [787] = {.lex_state = 204, .external_lex_state = 1}, [788] = {.lex_state = 204, .external_lex_state = 1}, [789] = {.lex_state = 204, .external_lex_state = 1}, [790] = {.lex_state = 204, .external_lex_state = 1}, [791] = {.lex_state = 204, .external_lex_state = 1}, [792] = {.lex_state = 204, .external_lex_state = 1}, [793] = {.lex_state = 204, .external_lex_state = 1}, [794] = {.lex_state = 204, .external_lex_state = 1}, [795] = {.lex_state = 204, .external_lex_state = 1}, [796] = {.lex_state = 107, .external_lex_state = 1}, [797] = {.lex_state = 204, .external_lex_state = 1}, [798] = {.lex_state = 204, .external_lex_state = 1}, [799] = {.lex_state = 107, .external_lex_state = 1}, [800] = {.lex_state = 204, .external_lex_state = 1}, [801] = {.lex_state = 204, .external_lex_state = 1}, [802] = {.lex_state = 107, .external_lex_state = 1}, [803] = {.lex_state = 204, .external_lex_state = 1}, [804] = {.lex_state = 100, .external_lex_state = 1}, [805] = {.lex_state = 204, .external_lex_state = 1}, [806] = {.lex_state = 204, .external_lex_state = 1}, [807] = {.lex_state = 204, .external_lex_state = 1}, [808] = {.lex_state = 204, .external_lex_state = 1}, [809] = {.lex_state = 204, .external_lex_state = 1}, [810] = {.lex_state = 99, .external_lex_state = 1}, [811] = {.lex_state = 109, .external_lex_state = 1}, [812] = {.lex_state = 109, .external_lex_state = 1}, [813] = {.lex_state = 109, .external_lex_state = 1}, [814] = {.lex_state = 109, .external_lex_state = 1}, [815] = {.lex_state = 109, .external_lex_state = 1}, [816] = {.lex_state = 109, .external_lex_state = 1}, [817] = {.lex_state = 109, .external_lex_state = 1}, [818] = {.lex_state = 109, .external_lex_state = 1}, [819] = {.lex_state = 109, .external_lex_state = 1}, [820] = {.lex_state = 109, .external_lex_state = 1}, [821] = {.lex_state = 147}, [822] = {.lex_state = 109, .external_lex_state = 1}, [823] = {.lex_state = 109, .external_lex_state = 1}, [824] = {.lex_state = 109, .external_lex_state = 1}, [825] = {.lex_state = 109, .external_lex_state = 1}, [826] = {.lex_state = 109, .external_lex_state = 1}, [827] = {.lex_state = 147}, [828] = {.lex_state = 109, .external_lex_state = 1}, [829] = {.lex_state = 109, .external_lex_state = 1}, [830] = {.lex_state = 109, .external_lex_state = 1}, [831] = {.lex_state = 109, .external_lex_state = 1}, [832] = {.lex_state = 109, .external_lex_state = 1}, [833] = {.lex_state = 109, .external_lex_state = 1}, [834] = {.lex_state = 147}, [835] = {.lex_state = 147}, [836] = {.lex_state = 109, .external_lex_state = 1}, [837] = {.lex_state = 147}, [838] = {.lex_state = 109, .external_lex_state = 1}, [839] = {.lex_state = 147}, [840] = {.lex_state = 109, .external_lex_state = 1}, [841] = {.lex_state = 108, .external_lex_state = 1}, [842] = {.lex_state = 147}, [843] = {.lex_state = 109, .external_lex_state = 1}, [844] = {.lex_state = 103}, [845] = {.lex_state = 103}, [846] = {.lex_state = 101, .external_lex_state = 1}, [847] = {.lex_state = 101, .external_lex_state = 1}, [848] = {.lex_state = 102, .external_lex_state = 1}, [849] = {.lex_state = 101, .external_lex_state = 1}, [850] = {.lex_state = 147}, [851] = {.lex_state = 204, .external_lex_state = 1}, [852] = {.lex_state = 204, .external_lex_state = 1}, [853] = {.lex_state = 204, .external_lex_state = 1}, [854] = {.lex_state = 106, .external_lex_state = 1}, [855] = {.lex_state = 106, .external_lex_state = 1}, [856] = {.lex_state = 108, .external_lex_state = 1}, [857] = {.lex_state = 106, .external_lex_state = 1}, [858] = {.lex_state = 106, .external_lex_state = 1}, [859] = {.lex_state = 106, .external_lex_state = 1}, [860] = {.lex_state = 106, .external_lex_state = 1}, [861] = {.lex_state = 106, .external_lex_state = 1}, [862] = {.lex_state = 106, .external_lex_state = 1}, [863] = {.lex_state = 106, .external_lex_state = 1}, [864] = {.lex_state = 106, .external_lex_state = 1}, [865] = {.lex_state = 106, .external_lex_state = 1}, [866] = {.lex_state = 106, .external_lex_state = 1}, [867] = {.lex_state = 106, .external_lex_state = 1}, [868] = {.lex_state = 106, .external_lex_state = 1}, [869] = {.lex_state = 106, .external_lex_state = 1}, [870] = {.lex_state = 106, .external_lex_state = 1}, [871] = {.lex_state = 106, .external_lex_state = 1}, [872] = {.lex_state = 106, .external_lex_state = 1}, [873] = {.lex_state = 106, .external_lex_state = 1}, [874] = {.lex_state = 106, .external_lex_state = 1}, [875] = {.lex_state = 106, .external_lex_state = 1}, [876] = {.lex_state = 106, .external_lex_state = 1}, [877] = {.lex_state = 106, .external_lex_state = 1}, [878] = {.lex_state = 106, .external_lex_state = 1}, [879] = {.lex_state = 106, .external_lex_state = 1}, [880] = {.lex_state = 106, .external_lex_state = 1}, [881] = {.lex_state = 106, .external_lex_state = 1}, [882] = {.lex_state = 106, .external_lex_state = 1}, [883] = {.lex_state = 106, .external_lex_state = 1}, [884] = {.lex_state = 106, .external_lex_state = 1}, [885] = {.lex_state = 106, .external_lex_state = 1}, [886] = {.lex_state = 106, .external_lex_state = 1}, [887] = {.lex_state = 106, .external_lex_state = 1}, [888] = {.lex_state = 106, .external_lex_state = 1}, [889] = {.lex_state = 106, .external_lex_state = 1}, [890] = {.lex_state = 106, .external_lex_state = 1}, [891] = {.lex_state = 106, .external_lex_state = 1}, [892] = {.lex_state = 106, .external_lex_state = 1}, [893] = {.lex_state = 106, .external_lex_state = 1}, [894] = {.lex_state = 106, .external_lex_state = 1}, [895] = {.lex_state = 106, .external_lex_state = 1}, [896] = {.lex_state = 106, .external_lex_state = 1}, [897] = {.lex_state = 106, .external_lex_state = 1}, [898] = {.lex_state = 106, .external_lex_state = 1}, [899] = {.lex_state = 106, .external_lex_state = 1}, [900] = {.lex_state = 106, .external_lex_state = 1}, [901] = {.lex_state = 106, .external_lex_state = 1}, [902] = {.lex_state = 106, .external_lex_state = 1}, [903] = {.lex_state = 106, .external_lex_state = 1}, [904] = {.lex_state = 106, .external_lex_state = 1}, [905] = {.lex_state = 106, .external_lex_state = 1}, [906] = {.lex_state = 106, .external_lex_state = 1}, [907] = {.lex_state = 106, .external_lex_state = 1}, [908] = {.lex_state = 106, .external_lex_state = 1}, [909] = {.lex_state = 106, .external_lex_state = 1}, [910] = {.lex_state = 106, .external_lex_state = 1}, [911] = {.lex_state = 106, .external_lex_state = 1}, [912] = {.lex_state = 106, .external_lex_state = 1}, [913] = {.lex_state = 106, .external_lex_state = 1}, [914] = {.lex_state = 106, .external_lex_state = 1}, [915] = {.lex_state = 106, .external_lex_state = 1}, [916] = {.lex_state = 106, .external_lex_state = 1}, [917] = {.lex_state = 106, .external_lex_state = 1}, [918] = {.lex_state = 106, .external_lex_state = 1}, [919] = {.lex_state = 106, .external_lex_state = 1}, [920] = {.lex_state = 106, .external_lex_state = 1}, [921] = {.lex_state = 106, .external_lex_state = 1}, [922] = {.lex_state = 106, .external_lex_state = 1}, [923] = {.lex_state = 106, .external_lex_state = 1}, [924] = {.lex_state = 106, .external_lex_state = 1}, [925] = {.lex_state = 106, .external_lex_state = 1}, [926] = {.lex_state = 106, .external_lex_state = 1}, [927] = {.lex_state = 106, .external_lex_state = 1}, [928] = {.lex_state = 106, .external_lex_state = 1}, [929] = {.lex_state = 106, .external_lex_state = 1}, [930] = {.lex_state = 106, .external_lex_state = 1}, [931] = {.lex_state = 106, .external_lex_state = 1}, [932] = {.lex_state = 106, .external_lex_state = 1}, [933] = {.lex_state = 106, .external_lex_state = 1}, [934] = {.lex_state = 106, .external_lex_state = 1}, [935] = {.lex_state = 106, .external_lex_state = 1}, [936] = {.lex_state = 106, .external_lex_state = 1}, [937] = {.lex_state = 106, .external_lex_state = 1}, [938] = {.lex_state = 106, .external_lex_state = 1}, [939] = {.lex_state = 106, .external_lex_state = 1}, [940] = {.lex_state = 109, .external_lex_state = 1}, [941] = {.lex_state = 147}, [942] = {.lex_state = 109, .external_lex_state = 1}, [943] = {.lex_state = 109, .external_lex_state = 1}, [944] = {.lex_state = 109, .external_lex_state = 1}, [945] = {.lex_state = 109, .external_lex_state = 1}, [946] = {.lex_state = 109, .external_lex_state = 1}, [947] = {.lex_state = 109, .external_lex_state = 1}, [948] = {.lex_state = 109, .external_lex_state = 1}, [949] = {.lex_state = 109, .external_lex_state = 1}, [950] = {.lex_state = 109, .external_lex_state = 1}, [951] = {.lex_state = 109, .external_lex_state = 1}, [952] = {.lex_state = 109, .external_lex_state = 1}, [953] = {.lex_state = 147}, [954] = {.lex_state = 109, .external_lex_state = 1}, [955] = {.lex_state = 109, .external_lex_state = 1}, [956] = {.lex_state = 109, .external_lex_state = 1}, [957] = {.lex_state = 109, .external_lex_state = 1}, [958] = {.lex_state = 109, .external_lex_state = 1}, [959] = {.lex_state = 147}, [960] = {.lex_state = 109, .external_lex_state = 1}, [961] = {.lex_state = 109, .external_lex_state = 1}, [962] = {.lex_state = 147}, [963] = {.lex_state = 109, .external_lex_state = 1}, [964] = {.lex_state = 109, .external_lex_state = 1}, [965] = {.lex_state = 109, .external_lex_state = 1}, [966] = {.lex_state = 109, .external_lex_state = 1}, [967] = {.lex_state = 109, .external_lex_state = 1}, [968] = {.lex_state = 109, .external_lex_state = 1}, [969] = {.lex_state = 109, .external_lex_state = 1}, [970] = {.lex_state = 109, .external_lex_state = 1}, [971] = {.lex_state = 109, .external_lex_state = 1}, [972] = {.lex_state = 109, .external_lex_state = 1}, [973] = {.lex_state = 109, .external_lex_state = 1}, [974] = {.lex_state = 109, .external_lex_state = 1}, [975] = {.lex_state = 109, .external_lex_state = 1}, [976] = {.lex_state = 109, .external_lex_state = 1}, [977] = {.lex_state = 109, .external_lex_state = 1}, [978] = {.lex_state = 109, .external_lex_state = 1}, [979] = {.lex_state = 109, .external_lex_state = 1}, [980] = {.lex_state = 109, .external_lex_state = 1}, [981] = {.lex_state = 109, .external_lex_state = 1}, [982] = {.lex_state = 109, .external_lex_state = 1}, [983] = {.lex_state = 147}, [984] = {.lex_state = 109, .external_lex_state = 1}, [985] = {.lex_state = 109, .external_lex_state = 1}, [986] = {.lex_state = 109, .external_lex_state = 1}, [987] = {.lex_state = 109, .external_lex_state = 1}, [988] = {.lex_state = 109, .external_lex_state = 1}, [989] = {.lex_state = 109, .external_lex_state = 1}, [990] = {.lex_state = 109, .external_lex_state = 1}, [991] = {.lex_state = 109, .external_lex_state = 1}, [992] = {.lex_state = 109, .external_lex_state = 1}, [993] = {.lex_state = 109, .external_lex_state = 1}, [994] = {.lex_state = 109, .external_lex_state = 1}, [995] = {.lex_state = 109, .external_lex_state = 1}, [996] = {.lex_state = 109, .external_lex_state = 1}, [997] = {.lex_state = 109, .external_lex_state = 1}, [998] = {.lex_state = 109, .external_lex_state = 1}, [999] = {.lex_state = 147}, [1000] = {.lex_state = 109, .external_lex_state = 1}, [1001] = {.lex_state = 109, .external_lex_state = 1}, [1002] = {.lex_state = 109, .external_lex_state = 1}, [1003] = {.lex_state = 109, .external_lex_state = 1}, [1004] = {.lex_state = 109, .external_lex_state = 1}, [1005] = {.lex_state = 109, .external_lex_state = 1}, [1006] = {.lex_state = 109, .external_lex_state = 1}, [1007] = {.lex_state = 109, .external_lex_state = 1}, [1008] = {.lex_state = 109, .external_lex_state = 1}, [1009] = {.lex_state = 109, .external_lex_state = 1}, [1010] = {.lex_state = 109, .external_lex_state = 1}, [1011] = {.lex_state = 109, .external_lex_state = 1}, [1012] = {.lex_state = 109, .external_lex_state = 1}, [1013] = {.lex_state = 109, .external_lex_state = 1}, [1014] = {.lex_state = 109, .external_lex_state = 1}, [1015] = {.lex_state = 108, .external_lex_state = 1}, [1016] = {.lex_state = 109, .external_lex_state = 1}, [1017] = {.lex_state = 109, .external_lex_state = 1}, [1018] = {.lex_state = 109, .external_lex_state = 1}, [1019] = {.lex_state = 109, .external_lex_state = 1}, [1020] = {.lex_state = 109, .external_lex_state = 1}, [1021] = {.lex_state = 108, .external_lex_state = 1}, [1022] = {.lex_state = 109, .external_lex_state = 1}, [1023] = {.lex_state = 109, .external_lex_state = 1}, [1024] = {.lex_state = 109, .external_lex_state = 1}, [1025] = {.lex_state = 109, .external_lex_state = 1}, [1026] = {.lex_state = 108, .external_lex_state = 1}, [1027] = {.lex_state = 109, .external_lex_state = 1}, [1028] = {.lex_state = 108, .external_lex_state = 1}, [1029] = {.lex_state = 109, .external_lex_state = 1}, [1030] = {.lex_state = 109, .external_lex_state = 1}, [1031] = {.lex_state = 109, .external_lex_state = 1}, [1032] = {.lex_state = 109, .external_lex_state = 1}, [1033] = {.lex_state = 109, .external_lex_state = 1}, [1034] = {.lex_state = 109, .external_lex_state = 1}, [1035] = {.lex_state = 108, .external_lex_state = 1}, [1036] = {.lex_state = 109, .external_lex_state = 1}, [1037] = {.lex_state = 109, .external_lex_state = 1}, [1038] = {.lex_state = 108, .external_lex_state = 1}, [1039] = {.lex_state = 109, .external_lex_state = 1}, [1040] = {.lex_state = 109, .external_lex_state = 1}, [1041] = {.lex_state = 109, .external_lex_state = 1}, [1042] = {.lex_state = 109, .external_lex_state = 1}, [1043] = {.lex_state = 109, .external_lex_state = 1}, [1044] = {.lex_state = 109, .external_lex_state = 1}, [1045] = {.lex_state = 109, .external_lex_state = 1}, [1046] = {.lex_state = 108, .external_lex_state = 1}, [1047] = {.lex_state = 109, .external_lex_state = 1}, [1048] = {.lex_state = 109, .external_lex_state = 1}, [1049] = {.lex_state = 109, .external_lex_state = 1}, [1050] = {.lex_state = 109, .external_lex_state = 1}, [1051] = {.lex_state = 108, .external_lex_state = 1}, [1052] = {.lex_state = 109, .external_lex_state = 1}, [1053] = {.lex_state = 109, .external_lex_state = 1}, [1054] = {.lex_state = 109, .external_lex_state = 1}, [1055] = {.lex_state = 109, .external_lex_state = 1}, [1056] = {.lex_state = 109, .external_lex_state = 1}, [1057] = {.lex_state = 109, .external_lex_state = 1}, [1058] = {.lex_state = 108, .external_lex_state = 1}, [1059] = {.lex_state = 109, .external_lex_state = 1}, [1060] = {.lex_state = 109, .external_lex_state = 1}, [1061] = {.lex_state = 109, .external_lex_state = 1}, [1062] = {.lex_state = 109, .external_lex_state = 1}, [1063] = {.lex_state = 109, .external_lex_state = 1}, [1064] = {.lex_state = 109, .external_lex_state = 1}, [1065] = {.lex_state = 109, .external_lex_state = 1}, [1066] = {.lex_state = 108, .external_lex_state = 1}, [1067] = {.lex_state = 109, .external_lex_state = 1}, [1068] = {.lex_state = 109, .external_lex_state = 1}, [1069] = {.lex_state = 109, .external_lex_state = 1}, [1070] = {.lex_state = 108, .external_lex_state = 1}, [1071] = {.lex_state = 109, .external_lex_state = 1}, [1072] = {.lex_state = 109, .external_lex_state = 1}, [1073] = {.lex_state = 109, .external_lex_state = 1}, [1074] = {.lex_state = 109, .external_lex_state = 1}, [1075] = {.lex_state = 109, .external_lex_state = 1}, [1076] = {.lex_state = 109, .external_lex_state = 1}, [1077] = {.lex_state = 108, .external_lex_state = 1}, [1078] = {.lex_state = 109, .external_lex_state = 1}, [1079] = {.lex_state = 109, .external_lex_state = 1}, [1080] = {.lex_state = 108, .external_lex_state = 1}, [1081] = {.lex_state = 109, .external_lex_state = 1}, [1082] = {.lex_state = 109, .external_lex_state = 1}, [1083] = {.lex_state = 108, .external_lex_state = 1}, [1084] = {.lex_state = 109, .external_lex_state = 1}, [1085] = {.lex_state = 109, .external_lex_state = 1}, [1086] = {.lex_state = 109, .external_lex_state = 1}, [1087] = {.lex_state = 109, .external_lex_state = 1}, [1088] = {.lex_state = 109, .external_lex_state = 1}, [1089] = {.lex_state = 109, .external_lex_state = 1}, [1090] = {.lex_state = 109, .external_lex_state = 1}, [1091] = {.lex_state = 109, .external_lex_state = 1}, [1092] = {.lex_state = 109, .external_lex_state = 1}, [1093] = {.lex_state = 109, .external_lex_state = 1}, [1094] = {.lex_state = 109, .external_lex_state = 1}, [1095] = {.lex_state = 109, .external_lex_state = 1}, [1096] = {.lex_state = 109, .external_lex_state = 1}, [1097] = {.lex_state = 109, .external_lex_state = 1}, [1098] = {.lex_state = 109, .external_lex_state = 1}, [1099] = {.lex_state = 109, .external_lex_state = 1}, [1100] = {.lex_state = 109, .external_lex_state = 1}, [1101] = {.lex_state = 109, .external_lex_state = 1}, [1102] = {.lex_state = 109, .external_lex_state = 1}, [1103] = {.lex_state = 109, .external_lex_state = 1}, [1104] = {.lex_state = 109, .external_lex_state = 1}, [1105] = {.lex_state = 109, .external_lex_state = 1}, [1106] = {.lex_state = 109, .external_lex_state = 1}, [1107] = {.lex_state = 109, .external_lex_state = 1}, [1108] = {.lex_state = 109, .external_lex_state = 1}, [1109] = {.lex_state = 109, .external_lex_state = 1}, [1110] = {.lex_state = 109, .external_lex_state = 1}, [1111] = {.lex_state = 109, .external_lex_state = 1}, [1112] = {.lex_state = 109, .external_lex_state = 1}, [1113] = {.lex_state = 109, .external_lex_state = 1}, [1114] = {.lex_state = 109, .external_lex_state = 1}, [1115] = {.lex_state = 109, .external_lex_state = 1}, [1116] = {.lex_state = 109, .external_lex_state = 1}, [1117] = {.lex_state = 109, .external_lex_state = 1}, [1118] = {.lex_state = 109, .external_lex_state = 1}, [1119] = {.lex_state = 109, .external_lex_state = 1}, [1120] = {.lex_state = 109, .external_lex_state = 1}, [1121] = {.lex_state = 109, .external_lex_state = 1}, [1122] = {.lex_state = 109, .external_lex_state = 1}, [1123] = {.lex_state = 109, .external_lex_state = 1}, [1124] = {.lex_state = 109, .external_lex_state = 1}, [1125] = {.lex_state = 109, .external_lex_state = 1}, [1126] = {.lex_state = 109, .external_lex_state = 1}, [1127] = {.lex_state = 109, .external_lex_state = 1}, [1128] = {.lex_state = 109, .external_lex_state = 1}, [1129] = {.lex_state = 109, .external_lex_state = 1}, [1130] = {.lex_state = 109, .external_lex_state = 1}, [1131] = {.lex_state = 109, .external_lex_state = 1}, [1132] = {.lex_state = 109, .external_lex_state = 1}, [1133] = {.lex_state = 109, .external_lex_state = 1}, [1134] = {.lex_state = 109, .external_lex_state = 1}, [1135] = {.lex_state = 109, .external_lex_state = 1}, [1136] = {.lex_state = 109, .external_lex_state = 1}, [1137] = {.lex_state = 109, .external_lex_state = 1}, [1138] = {.lex_state = 109, .external_lex_state = 1}, [1139] = {.lex_state = 109, .external_lex_state = 1}, [1140] = {.lex_state = 109, .external_lex_state = 1}, [1141] = {.lex_state = 109, .external_lex_state = 1}, [1142] = {.lex_state = 109, .external_lex_state = 1}, [1143] = {.lex_state = 109, .external_lex_state = 1}, [1144] = {.lex_state = 109, .external_lex_state = 1}, [1145] = {.lex_state = 109, .external_lex_state = 1}, [1146] = {.lex_state = 109, .external_lex_state = 1}, [1147] = {.lex_state = 109, .external_lex_state = 1}, [1148] = {.lex_state = 109, .external_lex_state = 1}, [1149] = {.lex_state = 109, .external_lex_state = 1}, [1150] = {.lex_state = 109, .external_lex_state = 1}, [1151] = {.lex_state = 109, .external_lex_state = 1}, [1152] = {.lex_state = 109, .external_lex_state = 1}, [1153] = {.lex_state = 109, .external_lex_state = 1}, [1154] = {.lex_state = 109, .external_lex_state = 1}, [1155] = {.lex_state = 109, .external_lex_state = 1}, [1156] = {.lex_state = 109, .external_lex_state = 1}, [1157] = {.lex_state = 109, .external_lex_state = 1}, [1158] = {.lex_state = 109, .external_lex_state = 1}, [1159] = {.lex_state = 109, .external_lex_state = 1}, [1160] = {.lex_state = 109, .external_lex_state = 1}, [1161] = {.lex_state = 109, .external_lex_state = 1}, [1162] = {.lex_state = 109, .external_lex_state = 1}, [1163] = {.lex_state = 109, .external_lex_state = 1}, [1164] = {.lex_state = 109, .external_lex_state = 1}, [1165] = {.lex_state = 109, .external_lex_state = 1}, [1166] = {.lex_state = 109, .external_lex_state = 1}, [1167] = {.lex_state = 109, .external_lex_state = 1}, [1168] = {.lex_state = 109, .external_lex_state = 1}, [1169] = {.lex_state = 109, .external_lex_state = 1}, [1170] = {.lex_state = 109, .external_lex_state = 1}, [1171] = {.lex_state = 109, .external_lex_state = 1}, [1172] = {.lex_state = 109, .external_lex_state = 1}, [1173] = {.lex_state = 109, .external_lex_state = 1}, [1174] = {.lex_state = 109, .external_lex_state = 1}, [1175] = {.lex_state = 109, .external_lex_state = 1}, [1176] = {.lex_state = 109, .external_lex_state = 1}, [1177] = {.lex_state = 109, .external_lex_state = 1}, [1178] = {.lex_state = 109, .external_lex_state = 1}, [1179] = {.lex_state = 109, .external_lex_state = 1}, [1180] = {.lex_state = 109, .external_lex_state = 1}, [1181] = {.lex_state = 109, .external_lex_state = 1}, [1182] = {.lex_state = 109, .external_lex_state = 1}, [1183] = {.lex_state = 109, .external_lex_state = 1}, [1184] = {.lex_state = 109, .external_lex_state = 1}, [1185] = {.lex_state = 109, .external_lex_state = 1}, [1186] = {.lex_state = 109, .external_lex_state = 1}, [1187] = {.lex_state = 109, .external_lex_state = 1}, [1188] = {.lex_state = 109, .external_lex_state = 1}, [1189] = {.lex_state = 109, .external_lex_state = 1}, [1190] = {.lex_state = 109, .external_lex_state = 1}, [1191] = {.lex_state = 109, .external_lex_state = 1}, [1192] = {.lex_state = 109, .external_lex_state = 1}, [1193] = {.lex_state = 109, .external_lex_state = 1}, [1194] = {.lex_state = 109, .external_lex_state = 1}, [1195] = {.lex_state = 109, .external_lex_state = 1}, [1196] = {.lex_state = 109, .external_lex_state = 1}, [1197] = {.lex_state = 109, .external_lex_state = 1}, [1198] = {.lex_state = 109, .external_lex_state = 1}, [1199] = {.lex_state = 109, .external_lex_state = 1}, [1200] = {.lex_state = 109, .external_lex_state = 1}, [1201] = {.lex_state = 109, .external_lex_state = 1}, [1202] = {.lex_state = 109, .external_lex_state = 1}, [1203] = {.lex_state = 109, .external_lex_state = 1}, [1204] = {.lex_state = 109, .external_lex_state = 1}, [1205] = {.lex_state = 109, .external_lex_state = 1}, [1206] = {.lex_state = 109, .external_lex_state = 1}, [1207] = {.lex_state = 109, .external_lex_state = 1}, [1208] = {.lex_state = 109, .external_lex_state = 1}, [1209] = {.lex_state = 109, .external_lex_state = 1}, [1210] = {.lex_state = 109, .external_lex_state = 1}, [1211] = {.lex_state = 109, .external_lex_state = 1}, [1212] = {.lex_state = 109, .external_lex_state = 1}, [1213] = {.lex_state = 109, .external_lex_state = 1}, [1214] = {.lex_state = 109, .external_lex_state = 1}, [1215] = {.lex_state = 109, .external_lex_state = 1}, [1216] = {.lex_state = 109, .external_lex_state = 1}, [1217] = {.lex_state = 109, .external_lex_state = 1}, [1218] = {.lex_state = 109, .external_lex_state = 1}, [1219] = {.lex_state = 109, .external_lex_state = 1}, [1220] = {.lex_state = 109, .external_lex_state = 1}, [1221] = {.lex_state = 109, .external_lex_state = 1}, [1222] = {.lex_state = 109, .external_lex_state = 1}, [1223] = {.lex_state = 109, .external_lex_state = 1}, [1224] = {.lex_state = 109, .external_lex_state = 1}, [1225] = {.lex_state = 109, .external_lex_state = 1}, [1226] = {.lex_state = 109, .external_lex_state = 1}, [1227] = {.lex_state = 109, .external_lex_state = 1}, [1228] = {.lex_state = 109, .external_lex_state = 1}, [1229] = {.lex_state = 109, .external_lex_state = 1}, [1230] = {.lex_state = 109, .external_lex_state = 1}, [1231] = {.lex_state = 109, .external_lex_state = 1}, [1232] = {.lex_state = 109, .external_lex_state = 1}, [1233] = {.lex_state = 109, .external_lex_state = 1}, [1234] = {.lex_state = 109, .external_lex_state = 1}, [1235] = {.lex_state = 109, .external_lex_state = 1}, [1236] = {.lex_state = 109, .external_lex_state = 1}, [1237] = {.lex_state = 109, .external_lex_state = 1}, [1238] = {.lex_state = 109, .external_lex_state = 1}, [1239] = {.lex_state = 109, .external_lex_state = 1}, [1240] = {.lex_state = 109, .external_lex_state = 1}, [1241] = {.lex_state = 109, .external_lex_state = 1}, [1242] = {.lex_state = 109, .external_lex_state = 1}, [1243] = {.lex_state = 109, .external_lex_state = 1}, [1244] = {.lex_state = 109, .external_lex_state = 1}, [1245] = {.lex_state = 109, .external_lex_state = 1}, [1246] = {.lex_state = 109, .external_lex_state = 1}, [1247] = {.lex_state = 109, .external_lex_state = 1}, [1248] = {.lex_state = 109, .external_lex_state = 1}, [1249] = {.lex_state = 109, .external_lex_state = 1}, [1250] = {.lex_state = 109, .external_lex_state = 1}, [1251] = {.lex_state = 109, .external_lex_state = 1}, [1252] = {.lex_state = 109, .external_lex_state = 1}, [1253] = {.lex_state = 109, .external_lex_state = 1}, [1254] = {.lex_state = 109, .external_lex_state = 1}, [1255] = {.lex_state = 109, .external_lex_state = 1}, [1256] = {.lex_state = 109, .external_lex_state = 1}, [1257] = {.lex_state = 109, .external_lex_state = 1}, [1258] = {.lex_state = 109, .external_lex_state = 1}, [1259] = {.lex_state = 109, .external_lex_state = 1}, [1260] = {.lex_state = 109, .external_lex_state = 1}, [1261] = {.lex_state = 109, .external_lex_state = 1}, [1262] = {.lex_state = 109, .external_lex_state = 1}, [1263] = {.lex_state = 109, .external_lex_state = 1}, [1264] = {.lex_state = 109, .external_lex_state = 1}, [1265] = {.lex_state = 109, .external_lex_state = 1}, [1266] = {.lex_state = 109, .external_lex_state = 1}, [1267] = {.lex_state = 109, .external_lex_state = 1}, [1268] = {.lex_state = 109, .external_lex_state = 1}, [1269] = {.lex_state = 109, .external_lex_state = 1}, [1270] = {.lex_state = 109, .external_lex_state = 1}, [1271] = {.lex_state = 109, .external_lex_state = 1}, [1272] = {.lex_state = 109, .external_lex_state = 1}, [1273] = {.lex_state = 109, .external_lex_state = 1}, [1274] = {.lex_state = 109, .external_lex_state = 1}, [1275] = {.lex_state = 109, .external_lex_state = 1}, [1276] = {.lex_state = 109, .external_lex_state = 1}, [1277] = {.lex_state = 109, .external_lex_state = 1}, [1278] = {.lex_state = 109, .external_lex_state = 1}, [1279] = {.lex_state = 109, .external_lex_state = 1}, [1280] = {.lex_state = 109, .external_lex_state = 1}, [1281] = {.lex_state = 109, .external_lex_state = 1}, [1282] = {.lex_state = 109, .external_lex_state = 1}, [1283] = {.lex_state = 109, .external_lex_state = 1}, [1284] = {.lex_state = 109, .external_lex_state = 1}, [1285] = {.lex_state = 109, .external_lex_state = 1}, [1286] = {.lex_state = 109, .external_lex_state = 1}, [1287] = {.lex_state = 109, .external_lex_state = 1}, [1288] = {.lex_state = 109, .external_lex_state = 1}, [1289] = {.lex_state = 109, .external_lex_state = 1}, [1290] = {.lex_state = 109, .external_lex_state = 1}, [1291] = {.lex_state = 109, .external_lex_state = 1}, [1292] = {.lex_state = 109, .external_lex_state = 1}, [1293] = {.lex_state = 109, .external_lex_state = 1}, [1294] = {.lex_state = 109, .external_lex_state = 1}, [1295] = {.lex_state = 109, .external_lex_state = 1}, [1296] = {.lex_state = 109, .external_lex_state = 1}, [1297] = {.lex_state = 109, .external_lex_state = 1}, [1298] = {.lex_state = 109, .external_lex_state = 1}, [1299] = {.lex_state = 109, .external_lex_state = 1}, [1300] = {.lex_state = 109, .external_lex_state = 1}, [1301] = {.lex_state = 109, .external_lex_state = 1}, [1302] = {.lex_state = 109, .external_lex_state = 1}, [1303] = {.lex_state = 109, .external_lex_state = 1}, [1304] = {.lex_state = 109, .external_lex_state = 1}, [1305] = {.lex_state = 109, .external_lex_state = 1}, [1306] = {.lex_state = 109, .external_lex_state = 1}, [1307] = {.lex_state = 109, .external_lex_state = 1}, [1308] = {.lex_state = 109, .external_lex_state = 1}, [1309] = {.lex_state = 109, .external_lex_state = 1}, [1310] = {.lex_state = 109, .external_lex_state = 1}, [1311] = {.lex_state = 109, .external_lex_state = 1}, [1312] = {.lex_state = 109, .external_lex_state = 1}, [1313] = {.lex_state = 109, .external_lex_state = 1}, [1314] = {.lex_state = 109, .external_lex_state = 1}, [1315] = {.lex_state = 109, .external_lex_state = 1}, [1316] = {.lex_state = 109, .external_lex_state = 1}, [1317] = {.lex_state = 109, .external_lex_state = 1}, [1318] = {.lex_state = 109, .external_lex_state = 1}, [1319] = {.lex_state = 109, .external_lex_state = 1}, [1320] = {.lex_state = 109, .external_lex_state = 1}, [1321] = {.lex_state = 109, .external_lex_state = 1}, [1322] = {.lex_state = 109, .external_lex_state = 1}, [1323] = {.lex_state = 109, .external_lex_state = 1}, [1324] = {.lex_state = 109, .external_lex_state = 1}, [1325] = {.lex_state = 109, .external_lex_state = 1}, [1326] = {.lex_state = 109, .external_lex_state = 1}, [1327] = {.lex_state = 109, .external_lex_state = 1}, [1328] = {.lex_state = 121}, [1329] = {.lex_state = 121}, [1330] = {.lex_state = 121}, [1331] = {.lex_state = 147}, [1332] = {.lex_state = 147}, [1333] = {.lex_state = 121}, [1334] = {.lex_state = 147}, [1335] = {.lex_state = 121}, [1336] = {.lex_state = 121}, [1337] = {.lex_state = 121}, [1338] = {.lex_state = 121}, [1339] = {.lex_state = 121}, [1340] = {.lex_state = 121}, [1341] = {.lex_state = 121}, [1342] = {.lex_state = 121}, [1343] = {.lex_state = 121}, [1344] = {.lex_state = 121}, [1345] = {.lex_state = 147}, [1346] = {.lex_state = 121}, [1347] = {.lex_state = 121}, [1348] = {.lex_state = 121}, [1349] = {.lex_state = 121}, [1350] = {.lex_state = 121}, [1351] = {.lex_state = 147}, [1352] = {.lex_state = 147}, [1353] = {.lex_state = 121}, [1354] = {.lex_state = 121}, [1355] = {.lex_state = 147}, [1356] = {.lex_state = 121}, [1357] = {.lex_state = 121}, [1358] = {.lex_state = 121}, [1359] = {.lex_state = 147}, [1360] = {.lex_state = 147}, [1361] = {.lex_state = 131}, [1362] = {.lex_state = 131}, [1363] = {.lex_state = 131}, [1364] = {.lex_state = 131}, [1365] = {.lex_state = 131}, [1366] = {.lex_state = 131}, [1367] = {.lex_state = 131}, [1368] = {.lex_state = 147}, [1369] = {.lex_state = 147}, [1370] = {.lex_state = 147}, [1371] = {.lex_state = 147}, [1372] = {.lex_state = 131}, [1373] = {.lex_state = 131}, [1374] = {.lex_state = 131}, [1375] = {.lex_state = 131}, [1376] = {.lex_state = 106, .external_lex_state = 1}, [1377] = {.lex_state = 131}, [1378] = {.lex_state = 131}, [1379] = {.lex_state = 131}, [1380] = {.lex_state = 131}, [1381] = {.lex_state = 131}, [1382] = {.lex_state = 131}, [1383] = {.lex_state = 131}, [1384] = {.lex_state = 147}, [1385] = {.lex_state = 147}, [1386] = {.lex_state = 147}, [1387] = {.lex_state = 119}, [1388] = {.lex_state = 147}, [1389] = {.lex_state = 147}, [1390] = {.lex_state = 147}, [1391] = {.lex_state = 147}, [1392] = {.lex_state = 147}, [1393] = {.lex_state = 147}, [1394] = {.lex_state = 147}, [1395] = {.lex_state = 147}, [1396] = {.lex_state = 147}, [1397] = {.lex_state = 147}, [1398] = {.lex_state = 147}, [1399] = {.lex_state = 147}, [1400] = {.lex_state = 147}, [1401] = {.lex_state = 147}, [1402] = {.lex_state = 147}, [1403] = {.lex_state = 147}, [1404] = {.lex_state = 147}, [1405] = {.lex_state = 147}, [1406] = {.lex_state = 147}, [1407] = {.lex_state = 147}, [1408] = {.lex_state = 147}, [1409] = {.lex_state = 147}, [1410] = {.lex_state = 147}, [1411] = {.lex_state = 147}, [1412] = {.lex_state = 147}, [1413] = {.lex_state = 147}, [1414] = {.lex_state = 147}, [1415] = {.lex_state = 147}, [1416] = {.lex_state = 147}, [1417] = {.lex_state = 147}, [1418] = {.lex_state = 147}, [1419] = {.lex_state = 147}, [1420] = {.lex_state = 147}, [1421] = {.lex_state = 147}, [1422] = {.lex_state = 147}, [1423] = {.lex_state = 147}, [1424] = {.lex_state = 147}, [1425] = {.lex_state = 147}, [1426] = {.lex_state = 147}, [1427] = {.lex_state = 147}, [1428] = {.lex_state = 147}, [1429] = {.lex_state = 147}, [1430] = {.lex_state = 147}, [1431] = {.lex_state = 147}, [1432] = {.lex_state = 147}, [1433] = {.lex_state = 147}, [1434] = {.lex_state = 147}, [1435] = {.lex_state = 147}, [1436] = {.lex_state = 147}, [1437] = {.lex_state = 147}, [1438] = {.lex_state = 147}, [1439] = {.lex_state = 147}, [1440] = {.lex_state = 147}, [1441] = {.lex_state = 147}, [1442] = {.lex_state = 147}, [1443] = {.lex_state = 147}, [1444] = {.lex_state = 147}, [1445] = {.lex_state = 147}, [1446] = {.lex_state = 147}, [1447] = {.lex_state = 147}, [1448] = {.lex_state = 147}, [1449] = {.lex_state = 147}, [1450] = {.lex_state = 147}, [1451] = {.lex_state = 147}, [1452] = {.lex_state = 147}, [1453] = {.lex_state = 147}, [1454] = {.lex_state = 147}, [1455] = {.lex_state = 147}, [1456] = {.lex_state = 147}, [1457] = {.lex_state = 147}, [1458] = {.lex_state = 120}, [1459] = {.lex_state = 122}, [1460] = {.lex_state = 122}, [1461] = {.lex_state = 122}, [1462] = {.lex_state = 122}, [1463] = {.lex_state = 122}, [1464] = {.lex_state = 122}, [1465] = {.lex_state = 122}, [1466] = {.lex_state = 120}, [1467] = {.lex_state = 119}, [1468] = {.lex_state = 119}, [1469] = {.lex_state = 119}, [1470] = {.lex_state = 119}, [1471] = {.lex_state = 120}, [1472] = {.lex_state = 120}, [1473] = {.lex_state = 119}, [1474] = {.lex_state = 119}, [1475] = {.lex_state = 120}, [1476] = {.lex_state = 120}, [1477] = {.lex_state = 120}, [1478] = {.lex_state = 119}, [1479] = {.lex_state = 120}, [1480] = {.lex_state = 120}, [1481] = {.lex_state = 120}, [1482] = {.lex_state = 120}, [1483] = {.lex_state = 119}, [1484] = {.lex_state = 120}, [1485] = {.lex_state = 120}, [1486] = {.lex_state = 120}, [1487] = {.lex_state = 119}, [1488] = {.lex_state = 119}, [1489] = {.lex_state = 111, .external_lex_state = 1}, [1490] = {.lex_state = 119}, [1491] = {.lex_state = 119}, [1492] = {.lex_state = 119}, [1493] = {.lex_state = 119}, [1494] = {.lex_state = 120}, [1495] = {.lex_state = 120}, [1496] = {.lex_state = 119}, [1497] = {.lex_state = 147}, [1498] = {.lex_state = 147}, [1499] = {.lex_state = 119}, [1500] = {.lex_state = 119}, [1501] = {.lex_state = 149}, [1502] = {.lex_state = 119}, [1503] = {.lex_state = 119}, [1504] = {.lex_state = 119}, [1505] = {.lex_state = 147}, [1506] = {.lex_state = 120}, [1507] = {.lex_state = 120}, [1508] = {.lex_state = 119}, [1509] = {.lex_state = 120}, [1510] = {.lex_state = 120}, [1511] = {.lex_state = 119}, [1512] = {.lex_state = 120}, [1513] = {.lex_state = 119}, [1514] = {.lex_state = 120}, [1515] = {.lex_state = 120}, [1516] = {.lex_state = 120}, [1517] = {.lex_state = 120}, [1518] = {.lex_state = 119}, [1519] = {.lex_state = 120}, [1520] = {.lex_state = 120}, [1521] = {.lex_state = 120}, [1522] = {.lex_state = 119}, [1523] = {.lex_state = 147}, [1524] = {.lex_state = 120}, [1525] = {.lex_state = 119}, [1526] = {.lex_state = 119}, [1527] = {.lex_state = 119}, [1528] = {.lex_state = 119}, [1529] = {.lex_state = 120}, [1530] = {.lex_state = 119}, [1531] = {.lex_state = 120}, [1532] = {.lex_state = 120}, [1533] = {.lex_state = 120}, [1534] = {.lex_state = 119}, [1535] = {.lex_state = 119}, [1536] = {.lex_state = 119}, [1537] = {.lex_state = 119}, [1538] = {.lex_state = 120}, [1539] = {.lex_state = 119}, [1540] = {.lex_state = 120}, [1541] = {.lex_state = 120}, [1542] = {.lex_state = 120}, [1543] = {.lex_state = 119}, [1544] = {.lex_state = 120}, [1545] = {.lex_state = 120}, [1546] = {.lex_state = 120}, [1547] = {.lex_state = 119}, [1548] = {.lex_state = 119}, [1549] = {.lex_state = 119}, [1550] = {.lex_state = 120}, [1551] = {.lex_state = 119}, [1552] = {.lex_state = 119}, [1553] = {.lex_state = 119}, [1554] = {.lex_state = 120}, [1555] = {.lex_state = 147}, [1556] = {.lex_state = 120}, [1557] = {.lex_state = 120}, [1558] = {.lex_state = 120}, [1559] = {.lex_state = 120}, [1560] = {.lex_state = 120}, [1561] = {.lex_state = 120}, [1562] = {.lex_state = 119}, [1563] = {.lex_state = 120}, [1564] = {.lex_state = 120}, [1565] = {.lex_state = 120}, [1566] = {.lex_state = 120}, [1567] = {.lex_state = 120}, [1568] = {.lex_state = 120}, [1569] = {.lex_state = 109, .external_lex_state = 1}, [1570] = {.lex_state = 120}, [1571] = {.lex_state = 120}, [1572] = {.lex_state = 120}, [1573] = {.lex_state = 119}, [1574] = {.lex_state = 119}, [1575] = {.lex_state = 119}, [1576] = {.lex_state = 119}, [1577] = {.lex_state = 119}, [1578] = {.lex_state = 111, .external_lex_state = 1}, [1579] = {.lex_state = 119}, [1580] = {.lex_state = 119}, [1581] = {.lex_state = 119}, [1582] = {.lex_state = 149}, [1583] = {.lex_state = 119}, [1584] = {.lex_state = 119}, [1585] = {.lex_state = 119}, [1586] = {.lex_state = 119}, [1587] = {.lex_state = 119}, [1588] = {.lex_state = 119}, [1589] = {.lex_state = 119}, [1590] = {.lex_state = 119}, [1591] = {.lex_state = 147}, [1592] = {.lex_state = 119}, [1593] = {.lex_state = 119}, [1594] = {.lex_state = 119}, [1595] = {.lex_state = 119}, [1596] = {.lex_state = 120}, [1597] = {.lex_state = 120}, [1598] = {.lex_state = 120}, [1599] = {.lex_state = 120}, [1600] = {.lex_state = 120}, [1601] = {.lex_state = 120}, [1602] = {.lex_state = 120}, [1603] = {.lex_state = 120}, [1604] = {.lex_state = 120}, [1605] = {.lex_state = 120}, [1606] = {.lex_state = 119}, [1607] = {.lex_state = 119}, [1608] = {.lex_state = 120}, [1609] = {.lex_state = 120}, [1610] = {.lex_state = 120}, [1611] = {.lex_state = 120}, [1612] = {.lex_state = 120}, [1613] = {.lex_state = 119}, [1614] = {.lex_state = 119}, [1615] = {.lex_state = 119}, [1616] = {.lex_state = 120}, [1617] = {.lex_state = 111, .external_lex_state = 1}, [1618] = {.lex_state = 119}, [1619] = {.lex_state = 147}, [1620] = {.lex_state = 120}, [1621] = {.lex_state = 119}, [1622] = {.lex_state = 109, .external_lex_state = 1}, [1623] = {.lex_state = 119}, [1624] = {.lex_state = 119}, [1625] = {.lex_state = 119}, [1626] = {.lex_state = 123}, [1627] = {.lex_state = 123}, [1628] = {.lex_state = 131}, [1629] = {.lex_state = 147}, [1630] = {.lex_state = 131}, [1631] = {.lex_state = 147}, [1632] = {.lex_state = 149}, [1633] = {.lex_state = 131}, [1634] = {.lex_state = 147}, [1635] = {.lex_state = 147}, [1636] = {.lex_state = 127}, [1637] = {.lex_state = 127}, [1638] = {.lex_state = 127}, [1639] = {.lex_state = 127}, [1640] = {.lex_state = 127}, [1641] = {.lex_state = 111, .external_lex_state = 1}, [1642] = {.lex_state = 127}, [1643] = {.lex_state = 127}, [1644] = {.lex_state = 147}, [1645] = {.lex_state = 147}, [1646] = {.lex_state = 111, .external_lex_state = 1}, [1647] = {.lex_state = 121}, [1648] = {.lex_state = 124}, [1649] = {.lex_state = 124}, [1650] = {.lex_state = 124}, [1651] = {.lex_state = 124}, [1652] = {.lex_state = 121}, [1653] = {.lex_state = 124}, [1654] = {.lex_state = 124}, [1655] = {.lex_state = 124}, [1656] = {.lex_state = 124}, [1657] = {.lex_state = 124}, [1658] = {.lex_state = 121}, [1659] = {.lex_state = 122}, [1660] = {.lex_state = 113, .external_lex_state = 1}, [1661] = {.lex_state = 127}, [1662] = {.lex_state = 122}, [1663] = {.lex_state = 122}, [1664] = {.lex_state = 113, .external_lex_state = 1}, [1665] = {.lex_state = 122}, [1666] = {.lex_state = 127}, [1667] = {.lex_state = 113, .external_lex_state = 1}, [1668] = {.lex_state = 111}, [1669] = {.lex_state = 129}, [1670] = {.lex_state = 122}, [1671] = {.lex_state = 122}, [1672] = {.lex_state = 111}, [1673] = {.lex_state = 111}, [1674] = {.lex_state = 122}, [1675] = {.lex_state = 122}, [1676] = {.lex_state = 122}, [1677] = {.lex_state = 111}, [1678] = {.lex_state = 127}, [1679] = {.lex_state = 122}, [1680] = {.lex_state = 129}, [1681] = {.lex_state = 128}, [1682] = {.lex_state = 128}, [1683] = {.lex_state = 147}, [1684] = {.lex_state = 111}, [1685] = {.lex_state = 133}, [1686] = {.lex_state = 111}, [1687] = {.lex_state = 133}, [1688] = {.lex_state = 122}, [1689] = {.lex_state = 111}, [1690] = {.lex_state = 122}, [1691] = {.lex_state = 122}, [1692] = {.lex_state = 134}, [1693] = {.lex_state = 113, .external_lex_state = 1}, [1694] = {.lex_state = 111}, [1695] = {.lex_state = 111}, [1696] = {.lex_state = 128}, [1697] = {.lex_state = 134}, [1698] = {.lex_state = 147}, [1699] = {.lex_state = 128}, [1700] = {.lex_state = 128}, [1701] = {.lex_state = 124}, [1702] = {.lex_state = 113, .external_lex_state = 1}, [1703] = {.lex_state = 128}, [1704] = {.lex_state = 133}, [1705] = {.lex_state = 111}, [1706] = {.lex_state = 128}, [1707] = {.lex_state = 128}, [1708] = {.lex_state = 147}, [1709] = {.lex_state = 122}, [1710] = {.lex_state = 128}, [1711] = {.lex_state = 139}, [1712] = {.lex_state = 127}, [1713] = {.lex_state = 121}, [1714] = {.lex_state = 111}, [1715] = {.lex_state = 122}, [1716] = {.lex_state = 111}, [1717] = {.lex_state = 122}, [1718] = {.lex_state = 121}, [1719] = {.lex_state = 121}, [1720] = {.lex_state = 139}, [1721] = {.lex_state = 127}, [1722] = {.lex_state = 121}, [1723] = {.lex_state = 111}, [1724] = {.lex_state = 139}, [1725] = {.lex_state = 139}, [1726] = {.lex_state = 109, .external_lex_state = 1}, [1727] = {.lex_state = 111}, [1728] = {.lex_state = 111}, [1729] = {.lex_state = 111}, [1730] = {.lex_state = 121}, [1731] = {.lex_state = 111}, [1732] = {.lex_state = 111}, [1733] = {.lex_state = 111}, [1734] = {.lex_state = 111}, [1735] = {.lex_state = 111}, [1736] = {.lex_state = 111}, [1737] = {.lex_state = 111}, [1738] = {.lex_state = 111}, [1739] = {.lex_state = 111}, [1740] = {.lex_state = 111}, [1741] = {.lex_state = 111}, [1742] = {.lex_state = 111}, [1743] = {.lex_state = 111}, [1744] = {.lex_state = 111}, [1745] = {.lex_state = 111}, [1746] = {.lex_state = 111}, [1747] = {.lex_state = 111}, [1748] = {.lex_state = 135}, [1749] = {.lex_state = 111}, [1750] = {.lex_state = 111}, [1751] = {.lex_state = 111}, [1752] = {.lex_state = 111}, [1753] = {.lex_state = 111}, [1754] = {.lex_state = 111}, [1755] = {.lex_state = 111}, [1756] = {.lex_state = 111}, [1757] = {.lex_state = 111}, [1758] = {.lex_state = 111}, [1759] = {.lex_state = 127}, [1760] = {.lex_state = 111}, [1761] = {.lex_state = 111}, [1762] = {.lex_state = 111}, [1763] = {.lex_state = 111}, [1764] = {.lex_state = 111}, [1765] = {.lex_state = 111}, [1766] = {.lex_state = 122}, [1767] = {.lex_state = 135}, [1768] = {.lex_state = 111}, [1769] = {.lex_state = 147}, [1770] = {.lex_state = 111}, [1771] = {.lex_state = 111}, [1772] = {.lex_state = 111}, [1773] = {.lex_state = 135}, [1774] = {.lex_state = 111}, [1775] = {.lex_state = 111}, [1776] = {.lex_state = 135}, [1777] = {.lex_state = 111}, [1778] = {.lex_state = 111}, [1779] = {.lex_state = 111}, [1780] = {.lex_state = 149}, [1781] = {.lex_state = 135}, [1782] = {.lex_state = 111}, [1783] = {.lex_state = 135}, [1784] = {.lex_state = 135}, [1785] = {.lex_state = 135}, [1786] = {.lex_state = 111}, [1787] = {.lex_state = 111}, [1788] = {.lex_state = 111}, [1789] = {.lex_state = 135}, [1790] = {.lex_state = 111}, [1791] = {.lex_state = 111}, [1792] = {.lex_state = 111}, [1793] = {.lex_state = 111}, [1794] = {.lex_state = 111}, [1795] = {.lex_state = 111}, [1796] = {.lex_state = 125}, [1797] = {.lex_state = 111}, [1798] = {.lex_state = 111}, [1799] = {.lex_state = 111}, [1800] = {.lex_state = 111}, [1801] = {.lex_state = 127}, [1802] = {.lex_state = 127}, [1803] = {.lex_state = 111}, [1804] = {.lex_state = 111}, [1805] = {.lex_state = 111}, [1806] = {.lex_state = 111}, [1807] = {.lex_state = 149}, [1808] = {.lex_state = 127}, [1809] = {.lex_state = 127}, [1810] = {.lex_state = 111}, [1811] = {.lex_state = 111}, [1812] = {.lex_state = 122}, [1813] = {.lex_state = 122}, [1814] = {.lex_state = 149}, [1815] = {.lex_state = 122}, [1816] = {.lex_state = 122}, [1817] = {.lex_state = 127}, [1818] = {.lex_state = 111}, [1819] = {.lex_state = 111}, [1820] = {.lex_state = 111}, [1821] = {.lex_state = 111}, [1822] = {.lex_state = 121}, [1823] = {.lex_state = 111}, [1824] = {.lex_state = 127}, [1825] = {.lex_state = 111}, [1826] = {.lex_state = 122}, [1827] = {.lex_state = 122}, [1828] = {.lex_state = 149}, [1829] = {.lex_state = 128}, [1830] = {.lex_state = 111}, [1831] = {.lex_state = 149}, [1832] = {.lex_state = 122}, [1833] = {.lex_state = 122}, [1834] = {.lex_state = 111}, [1835] = {.lex_state = 149}, [1836] = {.lex_state = 127}, [1837] = {.lex_state = 122}, [1838] = {.lex_state = 122}, [1839] = {.lex_state = 122}, [1840] = {.lex_state = 149}, [1841] = {.lex_state = 149}, [1842] = {.lex_state = 111}, [1843] = {.lex_state = 111}, [1844] = {.lex_state = 122}, [1845] = {.lex_state = 122}, [1846] = {.lex_state = 127}, [1847] = {.lex_state = 126}, [1848] = {.lex_state = 111}, [1849] = {.lex_state = 111}, [1850] = {.lex_state = 149}, [1851] = {.lex_state = 149}, [1852] = {.lex_state = 149}, [1853] = {.lex_state = 122}, [1854] = {.lex_state = 122}, [1855] = {.lex_state = 149}, [1856] = {.lex_state = 149}, [1857] = {.lex_state = 121}, [1858] = {.lex_state = 121}, [1859] = {.lex_state = 121}, [1860] = {.lex_state = 121}, [1861] = {.lex_state = 122}, [1862] = {.lex_state = 121}, [1863] = {.lex_state = 111}, [1864] = {.lex_state = 111}, [1865] = {.lex_state = 149}, [1866] = {.lex_state = 122}, [1867] = {.lex_state = 111}, [1868] = {.lex_state = 111}, [1869] = {.lex_state = 122}, [1870] = {.lex_state = 111}, [1871] = {.lex_state = 149}, [1872] = {.lex_state = 111}, [1873] = {.lex_state = 122}, [1874] = {.lex_state = 122}, [1875] = {.lex_state = 111}, [1876] = {.lex_state = 149}, [1877] = {.lex_state = 111}, [1878] = {.lex_state = 149}, [1879] = {.lex_state = 149}, [1880] = {.lex_state = 122}, [1881] = {.lex_state = 111}, [1882] = {.lex_state = 111}, [1883] = {.lex_state = 122}, [1884] = {.lex_state = 122}, [1885] = {.lex_state = 111}, [1886] = {.lex_state = 149}, [1887] = {.lex_state = 111}, [1888] = {.lex_state = 122}, [1889] = {.lex_state = 149}, [1890] = {.lex_state = 113}, [1891] = {.lex_state = 111}, [1892] = {.lex_state = 111}, [1893] = {.lex_state = 113}, [1894] = {.lex_state = 111}, [1895] = {.lex_state = 135}, [1896] = {.lex_state = 111}, [1897] = {.lex_state = 122}, [1898] = {.lex_state = 122}, [1899] = {.lex_state = 149}, [1900] = {.lex_state = 149}, [1901] = {.lex_state = 111}, [1902] = {.lex_state = 111}, [1903] = {.lex_state = 149}, [1904] = {.lex_state = 111}, [1905] = {.lex_state = 111}, [1906] = {.lex_state = 122}, [1907] = {.lex_state = 111}, [1908] = {.lex_state = 122}, [1909] = {.lex_state = 111}, [1910] = {.lex_state = 111}, [1911] = {.lex_state = 122}, [1912] = {.lex_state = 111}, [1913] = {.lex_state = 122}, [1914] = {.lex_state = 111}, [1915] = {.lex_state = 122}, [1916] = {.lex_state = 111}, [1917] = {.lex_state = 111}, [1918] = {.lex_state = 111}, [1919] = {.lex_state = 111}, [1920] = {.lex_state = 111}, [1921] = {.lex_state = 104}, [1922] = {.lex_state = 127}, [1923] = {.lex_state = 121}, [1924] = {.lex_state = 121}, [1925] = {.lex_state = 104}, [1926] = {.lex_state = 127}, [1927] = {.lex_state = 132}, [1928] = {.lex_state = 132}, [1929] = {.lex_state = 132}, [1930] = {.lex_state = 127}, [1931] = {.lex_state = 127}, [1932] = {.lex_state = 127}, [1933] = {.lex_state = 132}, [1934] = {.lex_state = 132}, [1935] = {.lex_state = 132}, [1936] = {.lex_state = 121}, [1937] = {.lex_state = 127}, [1938] = {.lex_state = 127}, [1939] = {.lex_state = 121}, [1940] = {.lex_state = 127}, [1941] = {.lex_state = 132}, [1942] = {.lex_state = 109, .external_lex_state = 1}, [1943] = {.lex_state = 137}, [1944] = {.lex_state = 104}, [1945] = {.lex_state = 132}, [1946] = {.lex_state = 127}, [1947] = {.lex_state = 132}, [1948] = {.lex_state = 121}, [1949] = {.lex_state = 121}, [1950] = {.lex_state = 122}, [1951] = {.lex_state = 132}, [1952] = {.lex_state = 104}, [1953] = {.lex_state = 137}, [1954] = {.lex_state = 132}, [1955] = {.lex_state = 132}, [1956] = {.lex_state = 138}, [1957] = {.lex_state = 138}, [1958] = {.lex_state = 115, .external_lex_state = 1}, [1959] = {.lex_state = 127}, [1960] = {.lex_state = 127}, [1961] = {.lex_state = 115, .external_lex_state = 1}, [1962] = {.lex_state = 122}, [1963] = {.lex_state = 138}, [1964] = {.lex_state = 122}, [1965] = {.lex_state = 148}, [1966] = {.lex_state = 138}, [1967] = {.lex_state = 138}, [1968] = {.lex_state = 138}, [1969] = {.lex_state = 148}, [1970] = {.lex_state = 138}, [1971] = {.lex_state = 111}, [1972] = {.lex_state = 138}, [1973] = {.lex_state = 111}, [1974] = {.lex_state = 148}, [1975] = {.lex_state = 115, .external_lex_state = 1}, [1976] = {.lex_state = 127}, [1977] = {.lex_state = 138}, [1978] = {.lex_state = 148}, [1979] = {.lex_state = 127}, [1980] = {.lex_state = 127}, [1981] = {.lex_state = 127}, [1982] = {.lex_state = 113}, [1983] = {.lex_state = 127}, [1984] = {.lex_state = 127}, [1985] = {.lex_state = 127}, [1986] = {.lex_state = 127}, [1987] = {.lex_state = 127}, [1988] = {.lex_state = 127}, [1989] = {.lex_state = 127}, [1990] = {.lex_state = 127}, [1991] = {.lex_state = 127}, [1992] = {.lex_state = 127}, [1993] = {.lex_state = 127}, [1994] = {.lex_state = 127}, [1995] = {.lex_state = 127}, [1996] = {.lex_state = 127}, [1997] = {.lex_state = 127}, [1998] = {.lex_state = 127}, [1999] = {.lex_state = 127}, [2000] = {.lex_state = 149}, [2001] = {.lex_state = 130}, [2002] = {.lex_state = 127}, [2003] = {.lex_state = 127}, [2004] = {.lex_state = 127}, [2005] = {.lex_state = 149}, [2006] = {.lex_state = 127}, [2007] = {.lex_state = 127}, [2008] = {.lex_state = 127}, [2009] = {.lex_state = 127}, [2010] = {.lex_state = 127}, [2011] = {.lex_state = 127}, [2012] = {.lex_state = 127}, [2013] = {.lex_state = 127}, [2014] = {.lex_state = 127}, [2015] = {.lex_state = 127}, [2016] = {.lex_state = 127}, [2017] = {.lex_state = 127}, [2018] = {.lex_state = 127}, [2019] = {.lex_state = 127}, [2020] = {.lex_state = 127}, [2021] = {.lex_state = 127}, [2022] = {.lex_state = 127}, [2023] = {.lex_state = 127}, [2024] = {.lex_state = 127}, [2025] = {.lex_state = 127}, [2026] = {.lex_state = 127}, [2027] = {.lex_state = 127}, [2028] = {.lex_state = 127}, [2029] = {.lex_state = 127}, [2030] = {.lex_state = 127}, [2031] = {.lex_state = 127}, [2032] = {.lex_state = 127}, [2033] = {.lex_state = 127}, [2034] = {.lex_state = 127}, [2035] = {.lex_state = 127}, [2036] = {.lex_state = 127}, [2037] = {.lex_state = 127}, [2038] = {.lex_state = 127}, [2039] = {.lex_state = 127}, [2040] = {.lex_state = 127}, [2041] = {.lex_state = 127}, [2042] = {.lex_state = 127}, [2043] = {.lex_state = 127}, [2044] = {.lex_state = 127}, [2045] = {.lex_state = 127}, [2046] = {.lex_state = 127}, [2047] = {.lex_state = 127}, [2048] = {.lex_state = 127}, [2049] = {.lex_state = 127}, [2050] = {.lex_state = 127}, [2051] = {.lex_state = 127}, [2052] = {.lex_state = 127}, [2053] = {.lex_state = 127}, [2054] = {.lex_state = 127}, [2055] = {.lex_state = 127}, [2056] = {.lex_state = 127}, [2057] = {.lex_state = 127}, [2058] = {.lex_state = 127}, [2059] = {.lex_state = 127}, [2060] = {.lex_state = 127}, [2061] = {.lex_state = 127}, [2062] = {.lex_state = 127}, [2063] = {.lex_state = 127}, [2064] = {.lex_state = 127}, [2065] = {.lex_state = 127}, [2066] = {.lex_state = 132}, [2067] = {.lex_state = 127}, [2068] = {.lex_state = 127}, [2069] = {.lex_state = 127}, [2070] = {.lex_state = 127}, [2071] = {.lex_state = 113}, [2072] = {.lex_state = 148}, [2073] = {.lex_state = 135}, [2074] = {.lex_state = 148}, [2075] = {.lex_state = 148}, [2076] = {.lex_state = 127}, [2077] = {.lex_state = 135}, [2078] = {.lex_state = 148}, [2079] = {.lex_state = 127}, [2080] = {.lex_state = 148}, [2081] = {.lex_state = 147}, [2082] = {.lex_state = 135}, [2083] = {.lex_state = 147}, [2084] = {.lex_state = 135}, [2085] = {.lex_state = 135}, [2086] = {.lex_state = 127}, [2087] = {.lex_state = 127}, [2088] = {.lex_state = 127}, [2089] = {.lex_state = 148}, [2090] = {.lex_state = 148}, [2091] = {.lex_state = 127}, [2092] = {.lex_state = 148}, [2093] = {.lex_state = 148}, [2094] = {.lex_state = 127}, [2095] = {.lex_state = 127}, [2096] = {.lex_state = 127}, [2097] = {.lex_state = 127}, [2098] = {.lex_state = 127}, [2099] = {.lex_state = 135}, [2100] = {.lex_state = 135}, [2101] = {.lex_state = 135}, [2102] = {.lex_state = 148}, [2103] = {.lex_state = 127}, [2104] = {.lex_state = 135}, [2105] = {.lex_state = 135}, [2106] = {.lex_state = 135}, [2107] = {.lex_state = 136}, [2108] = {.lex_state = 136}, [2109] = {.lex_state = 136}, [2110] = {.lex_state = 135}, [2111] = {.lex_state = 148}, [2112] = {.lex_state = 148}, [2113] = {.lex_state = 148}, [2114] = {.lex_state = 135}, [2115] = {.lex_state = 135}, [2116] = {.lex_state = 135}, [2117] = {.lex_state = 135}, [2118] = {.lex_state = 127}, [2119] = {.lex_state = 135}, [2120] = {.lex_state = 135}, [2121] = {.lex_state = 127}, [2122] = {.lex_state = 136}, [2123] = {.lex_state = 136}, [2124] = {.lex_state = 136}, [2125] = {.lex_state = 135}, [2126] = {.lex_state = 148}, [2127] = {.lex_state = 135}, [2128] = {.lex_state = 135}, [2129] = {.lex_state = 135}, [2130] = {.lex_state = 135}, [2131] = {.lex_state = 135}, [2132] = {.lex_state = 135}, [2133] = {.lex_state = 135}, [2134] = {.lex_state = 136}, [2135] = {.lex_state = 135}, [2136] = {.lex_state = 147}, [2137] = {.lex_state = 135}, [2138] = {.lex_state = 115, .external_lex_state = 1}, [2139] = {.lex_state = 135}, [2140] = {.lex_state = 135}, [2141] = {.lex_state = 135}, [2142] = {.lex_state = 135}, [2143] = {.lex_state = 135}, [2144] = {.lex_state = 135}, [2145] = {.lex_state = 111}, [2146] = {.lex_state = 147}, [2147] = {.lex_state = 148}, [2148] = {.lex_state = 136}, [2149] = {.lex_state = 127}, [2150] = {.lex_state = 135}, [2151] = {.lex_state = 135}, [2152] = {.lex_state = 135}, [2153] = {.lex_state = 111}, [2154] = {.lex_state = 148}, [2155] = {.lex_state = 111}, [2156] = {.lex_state = 111}, [2157] = {.lex_state = 111}, [2158] = {.lex_state = 111}, [2159] = {.lex_state = 111}, [2160] = {.lex_state = 111}, [2161] = {.lex_state = 111}, [2162] = {.lex_state = 111}, [2163] = {.lex_state = 148}, [2164] = {.lex_state = 148}, [2165] = {.lex_state = 148}, [2166] = {.lex_state = 127}, [2167] = {.lex_state = 111}, [2168] = {.lex_state = 135}, [2169] = {.lex_state = 148}, [2170] = {.lex_state = 135}, [2171] = {.lex_state = 127}, [2172] = {.lex_state = 136}, [2173] = {.lex_state = 111}, [2174] = {.lex_state = 111}, [2175] = {.lex_state = 111}, [2176] = {.lex_state = 136}, [2177] = {.lex_state = 111}, [2178] = {.lex_state = 111}, [2179] = {.lex_state = 111}, [2180] = {.lex_state = 127}, [2181] = {.lex_state = 111}, [2182] = {.lex_state = 111}, [2183] = {.lex_state = 135}, [2184] = {.lex_state = 127}, [2185] = {.lex_state = 111}, [2186] = {.lex_state = 148}, [2187] = {.lex_state = 111}, [2188] = {.lex_state = 135}, [2189] = {.lex_state = 127}, [2190] = {.lex_state = 147}, [2191] = {.lex_state = 127}, [2192] = {.lex_state = 127}, [2193] = {.lex_state = 148}, [2194] = {.lex_state = 127}, [2195] = {.lex_state = 135}, [2196] = {.lex_state = 127}, [2197] = {.lex_state = 111}, [2198] = {.lex_state = 136}, [2199] = {.lex_state = 135}, [2200] = {.lex_state = 148}, [2201] = {.lex_state = 127}, [2202] = {.lex_state = 136}, [2203] = {.lex_state = 111}, [2204] = {.lex_state = 115, .external_lex_state = 1}, [2205] = {.lex_state = 127}, [2206] = {.lex_state = 135}, [2207] = {.lex_state = 135}, [2208] = {.lex_state = 135}, [2209] = {.lex_state = 148}, [2210] = {.lex_state = 147}, [2211] = {.lex_state = 148}, [2212] = {.lex_state = 127}, [2213] = {.lex_state = 135}, [2214] = {.lex_state = 135}, [2215] = {.lex_state = 135}, [2216] = {.lex_state = 127}, [2217] = {.lex_state = 148}, [2218] = {.lex_state = 148}, [2219] = {.lex_state = 127}, [2220] = {.lex_state = 135}, [2221] = {.lex_state = 135}, [2222] = {.lex_state = 127}, [2223] = {.lex_state = 135}, [2224] = {.lex_state = 135}, [2225] = {.lex_state = 127}, [2226] = {.lex_state = 135}, [2227] = {.lex_state = 135}, [2228] = {.lex_state = 127}, [2229] = {.lex_state = 135}, [2230] = {.lex_state = 135}, [2231] = {.lex_state = 127}, [2232] = {.lex_state = 135}, [2233] = {.lex_state = 148}, [2234] = {.lex_state = 148}, [2235] = {.lex_state = 148}, [2236] = {.lex_state = 122}, [2237] = {.lex_state = 148}, [2238] = {.lex_state = 150}, [2239] = {.lex_state = 127}, [2240] = {.lex_state = 127}, [2241] = {.lex_state = 147}, [2242] = {.lex_state = 127}, [2243] = {.lex_state = 127}, [2244] = {.lex_state = 127}, [2245] = {.lex_state = 148}, [2246] = {.lex_state = 127}, [2247] = {.lex_state = 127}, [2248] = {.lex_state = 127}, [2249] = {.lex_state = 135}, [2250] = {.lex_state = 135}, [2251] = {.lex_state = 135}, [2252] = {.lex_state = 127}, [2253] = {.lex_state = 127}, [2254] = {.lex_state = 127}, [2255] = {.lex_state = 148}, [2256] = {.lex_state = 148}, [2257] = {.lex_state = 131}, [2258] = {.lex_state = 148}, [2259] = {.lex_state = 148}, [2260] = {.lex_state = 148}, [2261] = {.lex_state = 148}, [2262] = {.lex_state = 148}, [2263] = {.lex_state = 148}, [2264] = {.lex_state = 148}, [2265] = {.lex_state = 148}, [2266] = {.lex_state = 148}, [2267] = {.lex_state = 111}, [2268] = {.lex_state = 111}, [2269] = {.lex_state = 111}, [2270] = {.lex_state = 148}, [2271] = {.lex_state = 111}, [2272] = {.lex_state = 148}, [2273] = {.lex_state = 148}, [2274] = {.lex_state = 148}, [2275] = {.lex_state = 149}, [2276] = {.lex_state = 148}, [2277] = {.lex_state = 148}, [2278] = {.lex_state = 148}, [2279] = {.lex_state = 148}, [2280] = {.lex_state = 148}, [2281] = {.lex_state = 148}, [2282] = {.lex_state = 148}, [2283] = {.lex_state = 148}, [2284] = {.lex_state = 148}, [2285] = {.lex_state = 148}, [2286] = {.lex_state = 148}, [2287] = {.lex_state = 148}, [2288] = {.lex_state = 148}, [2289] = {.lex_state = 148}, [2290] = {.lex_state = 148}, [2291] = {.lex_state = 148}, [2292] = {.lex_state = 148}, [2293] = {.lex_state = 148}, [2294] = {.lex_state = 148}, [2295] = {.lex_state = 148}, [2296] = {.lex_state = 148}, [2297] = {.lex_state = 148}, [2298] = {.lex_state = 111}, [2299] = {.lex_state = 111}, [2300] = {.lex_state = 111}, [2301] = {.lex_state = 148}, [2302] = {.lex_state = 147}, [2303] = {.lex_state = 148}, [2304] = {.lex_state = 148}, [2305] = {.lex_state = 148}, [2306] = {.lex_state = 148}, [2307] = {.lex_state = 149}, [2308] = {.lex_state = 148}, [2309] = {.lex_state = 148}, [2310] = {.lex_state = 148}, [2311] = {.lex_state = 148}, [2312] = {.lex_state = 148}, [2313] = {.lex_state = 148}, [2314] = {.lex_state = 148}, [2315] = {.lex_state = 148}, [2316] = {.lex_state = 148}, [2317] = {.lex_state = 147}, [2318] = {.lex_state = 111}, [2319] = {.lex_state = 148}, [2320] = {.lex_state = 148}, [2321] = {.lex_state = 147}, [2322] = {.lex_state = 138}, [2323] = {.lex_state = 148}, [2324] = {.lex_state = 148}, [2325] = {.lex_state = 148}, [2326] = {.lex_state = 148}, [2327] = {.lex_state = 148}, [2328] = {.lex_state = 148}, [2329] = {.lex_state = 147}, [2330] = {.lex_state = 148}, [2331] = {.lex_state = 148}, [2332] = {.lex_state = 148}, [2333] = {.lex_state = 132}, [2334] = {.lex_state = 147}, [2335] = {.lex_state = 132}, [2336] = {.lex_state = 117, .external_lex_state = 1}, [2337] = {.lex_state = 147}, [2338] = {.lex_state = 147}, [2339] = {.lex_state = 117, .external_lex_state = 1}, [2340] = {.lex_state = 147}, [2341] = {.lex_state = 148}, [2342] = {.lex_state = 147}, [2343] = {.lex_state = 147}, [2344] = {.lex_state = 147}, [2345] = {.lex_state = 147}, [2346] = {.lex_state = 131}, [2347] = {.lex_state = 117, .external_lex_state = 1}, [2348] = {.lex_state = 147}, [2349] = {.lex_state = 147}, [2350] = {.lex_state = 147}, [2351] = {.lex_state = 151}, [2352] = {.lex_state = 151}, [2353] = {.lex_state = 147}, [2354] = {.lex_state = 148}, [2355] = {.lex_state = 151}, [2356] = {.lex_state = 147}, [2357] = {.lex_state = 149}, [2358] = {.lex_state = 147}, [2359] = {.lex_state = 109, .external_lex_state = 1}, [2360] = {.lex_state = 147}, [2361] = {.lex_state = 151}, [2362] = {.lex_state = 147}, [2363] = {.lex_state = 132}, [2364] = {.lex_state = 147}, [2365] = {.lex_state = 147}, [2366] = {.lex_state = 149}, [2367] = {.lex_state = 147}, [2368] = {.lex_state = 148}, [2369] = {.lex_state = 147}, [2370] = {.lex_state = 136}, [2371] = {.lex_state = 136}, [2372] = {.lex_state = 147}, [2373] = {.lex_state = 147}, [2374] = {.lex_state = 109, .external_lex_state = 1}, [2375] = {.lex_state = 147}, [2376] = {.lex_state = 147}, [2377] = {.lex_state = 147}, [2378] = {.lex_state = 109, .external_lex_state = 1}, [2379] = {.lex_state = 147}, [2380] = {.lex_state = 147}, [2381] = {.lex_state = 151}, [2382] = {.lex_state = 151}, [2383] = {.lex_state = 147}, [2384] = {.lex_state = 151}, [2385] = {.lex_state = 109, .external_lex_state = 1}, [2386] = {.lex_state = 148}, [2387] = {.lex_state = 151}, [2388] = {.lex_state = 151}, [2389] = {.lex_state = 138}, [2390] = {.lex_state = 138}, [2391] = {.lex_state = 149}, [2392] = {.lex_state = 149}, [2393] = {.lex_state = 109, .external_lex_state = 1}, [2394] = {.lex_state = 132}, [2395] = {.lex_state = 149}, [2396] = {.lex_state = 151}, [2397] = {.lex_state = 151}, [2398] = {.lex_state = 151}, [2399] = {.lex_state = 149}, [2400] = {.lex_state = 147}, [2401] = {.lex_state = 151}, [2402] = {.lex_state = 131}, [2403] = {.lex_state = 117, .external_lex_state = 1}, [2404] = {.lex_state = 109, .external_lex_state = 1}, [2405] = {.lex_state = 131}, [2406] = {.lex_state = 131}, [2407] = {.lex_state = 147}, [2408] = {.lex_state = 149}, [2409] = {.lex_state = 149}, [2410] = {.lex_state = 151}, [2411] = {.lex_state = 131}, [2412] = {.lex_state = 117, .external_lex_state = 1}, [2413] = {.lex_state = 134}, [2414] = {.lex_state = 149}, [2415] = {.lex_state = 151}, [2416] = {.lex_state = 132}, [2417] = {.lex_state = 147}, [2418] = {.lex_state = 131}, [2419] = {.lex_state = 147}, [2420] = {.lex_state = 135}, [2421] = {.lex_state = 149}, [2422] = {.lex_state = 138}, [2423] = {.lex_state = 138}, [2424] = {.lex_state = 138}, [2425] = {.lex_state = 148}, [2426] = {.lex_state = 138}, [2427] = {.lex_state = 138}, [2428] = {.lex_state = 151}, [2429] = {.lex_state = 138}, [2430] = {.lex_state = 138}, [2431] = {.lex_state = 138}, [2432] = {.lex_state = 138}, [2433] = {.lex_state = 138}, [2434] = {.lex_state = 138}, [2435] = {.lex_state = 138}, [2436] = {.lex_state = 147}, [2437] = {.lex_state = 138}, [2438] = {.lex_state = 138}, [2439] = {.lex_state = 138}, [2440] = {.lex_state = 138}, [2441] = {.lex_state = 138}, [2442] = {.lex_state = 138}, [2443] = {.lex_state = 138}, [2444] = {.lex_state = 138}, [2445] = {.lex_state = 138}, [2446] = {.lex_state = 138}, [2447] = {.lex_state = 138}, [2448] = {.lex_state = 138}, [2449] = {.lex_state = 138}, [2450] = {.lex_state = 138}, [2451] = {.lex_state = 149}, [2452] = {.lex_state = 151}, [2453] = {.lex_state = 148}, [2454] = {.lex_state = 131}, [2455] = {.lex_state = 138}, [2456] = {.lex_state = 149}, [2457] = {.lex_state = 138}, [2458] = {.lex_state = 138}, [2459] = {.lex_state = 138}, [2460] = {.lex_state = 147}, [2461] = {.lex_state = 147}, [2462] = {.lex_state = 138}, [2463] = {.lex_state = 138}, [2464] = {.lex_state = 138}, [2465] = {.lex_state = 138}, [2466] = {.lex_state = 138}, [2467] = {.lex_state = 138}, [2468] = {.lex_state = 138}, [2469] = {.lex_state = 138}, [2470] = {.lex_state = 138}, [2471] = {.lex_state = 138}, [2472] = {.lex_state = 149}, [2473] = {.lex_state = 151}, [2474] = {.lex_state = 151}, [2475] = {.lex_state = 149}, [2476] = {.lex_state = 147}, [2477] = {.lex_state = 147}, [2478] = {.lex_state = 138}, [2479] = {.lex_state = 138}, [2480] = {.lex_state = 138}, [2481] = {.lex_state = 149}, [2482] = {.lex_state = 138}, [2483] = {.lex_state = 138}, [2484] = {.lex_state = 138}, [2485] = {.lex_state = 138}, [2486] = {.lex_state = 138}, [2487] = {.lex_state = 151}, [2488] = {.lex_state = 138}, [2489] = {.lex_state = 138}, [2490] = {.lex_state = 138}, [2491] = {.lex_state = 138}, [2492] = {.lex_state = 138}, [2493] = {.lex_state = 149}, [2494] = {.lex_state = 138}, [2495] = {.lex_state = 138}, [2496] = {.lex_state = 138}, [2497] = {.lex_state = 151}, [2498] = {.lex_state = 138}, [2499] = {.lex_state = 138}, [2500] = {.lex_state = 131}, [2501] = {.lex_state = 138}, [2502] = {.lex_state = 149}, [2503] = {.lex_state = 135}, [2504] = {.lex_state = 149}, [2505] = {.lex_state = 134}, [2506] = {.lex_state = 133}, [2507] = {.lex_state = 133}, [2508] = {.lex_state = 151}, [2509] = {.lex_state = 134}, [2510] = {.lex_state = 151}, [2511] = {.lex_state = 131}, [2512] = {.lex_state = 131}, [2513] = {.lex_state = 133}, [2514] = {.lex_state = 131}, [2515] = {.lex_state = 131}, [2516] = {.lex_state = 151}, [2517] = {.lex_state = 131}, [2518] = {.lex_state = 134}, [2519] = {.lex_state = 136}, [2520] = {.lex_state = 131}, [2521] = {.lex_state = 151}, [2522] = {.lex_state = 151}, [2523] = {.lex_state = 151}, [2524] = {.lex_state = 131}, [2525] = {.lex_state = 131}, [2526] = {.lex_state = 131}, [2527] = {.lex_state = 151}, [2528] = {.lex_state = 136}, [2529] = {.lex_state = 133}, [2530] = {.lex_state = 132}, [2531] = {.lex_state = 134}, [2532] = {.lex_state = 151}, [2533] = {.lex_state = 151}, [2534] = {.lex_state = 151}, [2535] = {.lex_state = 131}, [2536] = {.lex_state = 151}, [2537] = {.lex_state = 134}, [2538] = {.lex_state = 151}, [2539] = {.lex_state = 151}, [2540] = {.lex_state = 131}, [2541] = {.lex_state = 131}, [2542] = {.lex_state = 151}, [2543] = {.lex_state = 151}, [2544] = {.lex_state = 151}, [2545] = {.lex_state = 151}, [2546] = {.lex_state = 134}, [2547] = {.lex_state = 151}, [2548] = {.lex_state = 151}, [2549] = {.lex_state = 131}, [2550] = {.lex_state = 151}, [2551] = {.lex_state = 151}, [2552] = {.lex_state = 151}, [2553] = {.lex_state = 151}, [2554] = {.lex_state = 151}, [2555] = {.lex_state = 151}, [2556] = {.lex_state = 151}, [2557] = {.lex_state = 131}, [2558] = {.lex_state = 151}, [2559] = {.lex_state = 134}, [2560] = {.lex_state = 133}, [2561] = {.lex_state = 151}, [2562] = {.lex_state = 151}, [2563] = {.lex_state = 151}, [2564] = {.lex_state = 151}, [2565] = {.lex_state = 151}, [2566] = {.lex_state = 151}, [2567] = {.lex_state = 151}, [2568] = {.lex_state = 151}, [2569] = {.lex_state = 134}, [2570] = {.lex_state = 151}, [2571] = {.lex_state = 131}, [2572] = {.lex_state = 131}, [2573] = {.lex_state = 151}, [2574] = {.lex_state = 151}, [2575] = {.lex_state = 115}, [2576] = {.lex_state = 131}, [2577] = {.lex_state = 151}, [2578] = {.lex_state = 151}, [2579] = {.lex_state = 133}, [2580] = {.lex_state = 151}, [2581] = {.lex_state = 151}, [2582] = {.lex_state = 151}, [2583] = {.lex_state = 151}, [2584] = {.lex_state = 151}, [2585] = {.lex_state = 151}, [2586] = {.lex_state = 151}, [2587] = {.lex_state = 151}, [2588] = {.lex_state = 151}, [2589] = {.lex_state = 151}, [2590] = {.lex_state = 151}, [2591] = {.lex_state = 151}, [2592] = {.lex_state = 151}, [2593] = {.lex_state = 151}, [2594] = {.lex_state = 151}, [2595] = {.lex_state = 151}, [2596] = {.lex_state = 151}, [2597] = {.lex_state = 151}, [2598] = {.lex_state = 151}, [2599] = {.lex_state = 151}, [2600] = {.lex_state = 151}, [2601] = {.lex_state = 151}, [2602] = {.lex_state = 134}, [2603] = {.lex_state = 151}, [2604] = {.lex_state = 115}, [2605] = {.lex_state = 151}, [2606] = {.lex_state = 133}, [2607] = {.lex_state = 151}, [2608] = {.lex_state = 151}, [2609] = {.lex_state = 133}, [2610] = {.lex_state = 151}, [2611] = {.lex_state = 151}, [2612] = {.lex_state = 151}, [2613] = {.lex_state = 151}, [2614] = {.lex_state = 134}, [2615] = {.lex_state = 134}, [2616] = {.lex_state = 134}, [2617] = {.lex_state = 137}, [2618] = {.lex_state = 134}, [2619] = {.lex_state = 134}, [2620] = {.lex_state = 137}, [2621] = {.lex_state = 134}, [2622] = {.lex_state = 134}, [2623] = {.lex_state = 148}, [2624] = {.lex_state = 148}, [2625] = {.lex_state = 148}, [2626] = {.lex_state = 134}, [2627] = {.lex_state = 137}, [2628] = {.lex_state = 137}, [2629] = {.lex_state = 134}, [2630] = {.lex_state = 134}, [2631] = {.lex_state = 134}, [2632] = {.lex_state = 137}, [2633] = {.lex_state = 148}, [2634] = {.lex_state = 134}, [2635] = {.lex_state = 134}, [2636] = {.lex_state = 134}, [2637] = {.lex_state = 134}, [2638] = {.lex_state = 134}, [2639] = {.lex_state = 134}, [2640] = {.lex_state = 134}, [2641] = {.lex_state = 150}, [2642] = {.lex_state = 147}, [2643] = {.lex_state = 134}, [2644] = {.lex_state = 148}, [2645] = {.lex_state = 148}, [2646] = {.lex_state = 148}, [2647] = {.lex_state = 137}, [2648] = {.lex_state = 134}, [2649] = {.lex_state = 134}, [2650] = {.lex_state = 134}, [2651] = {.lex_state = 134}, [2652] = {.lex_state = 134}, [2653] = {.lex_state = 134}, [2654] = {.lex_state = 148}, [2655] = {.lex_state = 134}, [2656] = {.lex_state = 148}, [2657] = {.lex_state = 134}, [2658] = {.lex_state = 148}, [2659] = {.lex_state = 134}, [2660] = {.lex_state = 134}, [2661] = {.lex_state = 134}, [2662] = {.lex_state = 136}, [2663] = {.lex_state = 133}, [2664] = {.lex_state = 133}, [2665] = {.lex_state = 133}, [2666] = {.lex_state = 151}, [2667] = {.lex_state = 151}, [2668] = {.lex_state = 133}, [2669] = {.lex_state = 133}, [2670] = {.lex_state = 137}, [2671] = {.lex_state = 133}, [2672] = {.lex_state = 148}, [2673] = {.lex_state = 137}, [2674] = {.lex_state = 133}, [2675] = {.lex_state = 137}, [2676] = {.lex_state = 133}, [2677] = {.lex_state = 136}, [2678] = {.lex_state = 133}, [2679] = {.lex_state = 133}, [2680] = {.lex_state = 133}, [2681] = {.lex_state = 133}, [2682] = {.lex_state = 133}, [2683] = {.lex_state = 133}, [2684] = {.lex_state = 151}, [2685] = {.lex_state = 133}, [2686] = {.lex_state = 151}, [2687] = {.lex_state = 131}, [2688] = {.lex_state = 133}, [2689] = {.lex_state = 151}, [2690] = {.lex_state = 151}, [2691] = {.lex_state = 119}, [2692] = {.lex_state = 131}, [2693] = {.lex_state = 137}, [2694] = {.lex_state = 133}, [2695] = {.lex_state = 147}, [2696] = {.lex_state = 137}, [2697] = {.lex_state = 147}, [2698] = {.lex_state = 147}, [2699] = {.lex_state = 147}, [2700] = {.lex_state = 137}, [2701] = {.lex_state = 133}, [2702] = {.lex_state = 137}, [2703] = {.lex_state = 137}, [2704] = {.lex_state = 147}, [2705] = {.lex_state = 147}, [2706] = {.lex_state = 134}, [2707] = {.lex_state = 133}, [2708] = {.lex_state = 133}, [2709] = {.lex_state = 133}, [2710] = {.lex_state = 133}, [2711] = {.lex_state = 137}, [2712] = {.lex_state = 147}, [2713] = {.lex_state = 136}, [2714] = {.lex_state = 137}, [2715] = {.lex_state = 148}, [2716] = {.lex_state = 133}, [2717] = {.lex_state = 133}, [2718] = {.lex_state = 133}, [2719] = {.lex_state = 137}, [2720] = {.lex_state = 137}, [2721] = {.lex_state = 148}, [2722] = {.lex_state = 147}, [2723] = {.lex_state = 133}, [2724] = {.lex_state = 147}, [2725] = {.lex_state = 133}, [2726] = {.lex_state = 147}, [2727] = {.lex_state = 134}, [2728] = {.lex_state = 147}, [2729] = {.lex_state = 147}, [2730] = {.lex_state = 133}, [2731] = {.lex_state = 148}, [2732] = {.lex_state = 147}, [2733] = {.lex_state = 137}, [2734] = {.lex_state = 148}, [2735] = {.lex_state = 133}, [2736] = {.lex_state = 137}, [2737] = {.lex_state = 148}, [2738] = {.lex_state = 147}, [2739] = {.lex_state = 133}, [2740] = {.lex_state = 148}, [2741] = {.lex_state = 133}, [2742] = {.lex_state = 134}, [2743] = {.lex_state = 148}, [2744] = {.lex_state = 137}, [2745] = {.lex_state = 137}, [2746] = {.lex_state = 133}, [2747] = {.lex_state = 148}, [2748] = {.lex_state = 148}, [2749] = {.lex_state = 148}, [2750] = {.lex_state = 137}, [2751] = {.lex_state = 147}, [2752] = {.lex_state = 134}, [2753] = {.lex_state = 134}, [2754] = {.lex_state = 133}, [2755] = {.lex_state = 148}, [2756] = {.lex_state = 133}, [2757] = {.lex_state = 133}, [2758] = {.lex_state = 137}, [2759] = {.lex_state = 133}, [2760] = {.lex_state = 134}, [2761] = {.lex_state = 133}, [2762] = {.lex_state = 133}, [2763] = {.lex_state = 134}, [2764] = {.lex_state = 133}, [2765] = {.lex_state = 133}, [2766] = {.lex_state = 133}, [2767] = {.lex_state = 137}, [2768] = {.lex_state = 134}, [2769] = {.lex_state = 134}, [2770] = {.lex_state = 133}, [2771] = {.lex_state = 150}, [2772] = {.lex_state = 133}, [2773] = {.lex_state = 151}, [2774] = {.lex_state = 133}, [2775] = {.lex_state = 134}, [2776] = {.lex_state = 137}, [2777] = {.lex_state = 134}, [2778] = {.lex_state = 137}, [2779] = {.lex_state = 134}, [2780] = {.lex_state = 137}, [2781] = {.lex_state = 137}, [2782] = {.lex_state = 137}, [2783] = {.lex_state = 133}, [2784] = {.lex_state = 133}, [2785] = {.lex_state = 133}, [2786] = {.lex_state = 133}, [2787] = {.lex_state = 133}, [2788] = {.lex_state = 137}, [2789] = {.lex_state = 133}, [2790] = {.lex_state = 134}, [2791] = {.lex_state = 133}, [2792] = {.lex_state = 133}, [2793] = {.lex_state = 133}, [2794] = {.lex_state = 133}, [2795] = {.lex_state = 133}, [2796] = {.lex_state = 137}, [2797] = {.lex_state = 137}, [2798] = {.lex_state = 133}, [2799] = {.lex_state = 133}, [2800] = {.lex_state = 137}, [2801] = {.lex_state = 134}, [2802] = {.lex_state = 134}, [2803] = {.lex_state = 137}, [2804] = {.lex_state = 117}, [2805] = {.lex_state = 133}, [2806] = {.lex_state = 133}, [2807] = {.lex_state = 133}, [2808] = {.lex_state = 133}, [2809] = {.lex_state = 133}, [2810] = {.lex_state = 137}, [2811] = {.lex_state = 133}, [2812] = {.lex_state = 133}, [2813] = {.lex_state = 151}, [2814] = {.lex_state = 134}, [2815] = {.lex_state = 137}, [2816] = {.lex_state = 133}, [2817] = {.lex_state = 117}, [2818] = {.lex_state = 133}, [2819] = {.lex_state = 137}, [2820] = {.lex_state = 133}, [2821] = {.lex_state = 137}, [2822] = {.lex_state = 137}, [2823] = {.lex_state = 133}, [2824] = {.lex_state = 134}, [2825] = {.lex_state = 133}, [2826] = {.lex_state = 133}, [2827] = {.lex_state = 133}, [2828] = {.lex_state = 137}, [2829] = {.lex_state = 137}, [2830] = {.lex_state = 133}, [2831] = {.lex_state = 134}, [2832] = {.lex_state = 133}, [2833] = {.lex_state = 133}, [2834] = {.lex_state = 134}, [2835] = {.lex_state = 133}, [2836] = {.lex_state = 133}, [2837] = {.lex_state = 137}, [2838] = {.lex_state = 133}, [2839] = {.lex_state = 134}, [2840] = {.lex_state = 148}, [2841] = {.lex_state = 133}, [2842] = {.lex_state = 137}, [2843] = {.lex_state = 133}, [2844] = {.lex_state = 133}, [2845] = {.lex_state = 134}, [2846] = {.lex_state = 133}, [2847] = {.lex_state = 133}, [2848] = {.lex_state = 134}, [2849] = {.lex_state = 134}, [2850] = {.lex_state = 133}, [2851] = {.lex_state = 134}, [2852] = {.lex_state = 133}, [2853] = {.lex_state = 133}, [2854] = {.lex_state = 133}, [2855] = {.lex_state = 137}, [2856] = {.lex_state = 133}, [2857] = {.lex_state = 133}, [2858] = {.lex_state = 133}, [2859] = {.lex_state = 133}, [2860] = {.lex_state = 133}, [2861] = {.lex_state = 133}, [2862] = {.lex_state = 137}, [2863] = {.lex_state = 148}, [2864] = {.lex_state = 133}, [2865] = {.lex_state = 133}, [2866] = {.lex_state = 133}, [2867] = {.lex_state = 133}, [2868] = {.lex_state = 133}, [2869] = {.lex_state = 133}, [2870] = {.lex_state = 137}, [2871] = {.lex_state = 148}, [2872] = {.lex_state = 133}, [2873] = {.lex_state = 133}, [2874] = {.lex_state = 137}, [2875] = {.lex_state = 133}, [2876] = {.lex_state = 148}, [2877] = {.lex_state = 133}, [2878] = {.lex_state = 133}, [2879] = {.lex_state = 151}, [2880] = {.lex_state = 133}, [2881] = {.lex_state = 133}, [2882] = {.lex_state = 134}, [2883] = {.lex_state = 133}, [2884] = {.lex_state = 148}, [2885] = {.lex_state = 137}, [2886] = {.lex_state = 147}, [2887] = {.lex_state = 151}, [2888] = {.lex_state = 147}, [2889] = {.lex_state = 134}, [2890] = {.lex_state = 133}, [2891] = {.lex_state = 134}, [2892] = {.lex_state = 147}, [2893] = {.lex_state = 149}, [2894] = {.lex_state = 147}, [2895] = {.lex_state = 147}, [2896] = {.lex_state = 147}, [2897] = {.lex_state = 133}, [2898] = {.lex_state = 133}, [2899] = {.lex_state = 134}, [2900] = {.lex_state = 133}, [2901] = {.lex_state = 134}, [2902] = {.lex_state = 133}, [2903] = {.lex_state = 134}, [2904] = {.lex_state = 147}, [2905] = {.lex_state = 147}, [2906] = {.lex_state = 133}, [2907] = {.lex_state = 149}, [2908] = {.lex_state = 134}, [2909] = {.lex_state = 147}, [2910] = {.lex_state = 149}, [2911] = {.lex_state = 133}, [2912] = {.lex_state = 133}, [2913] = {.lex_state = 137}, [2914] = {.lex_state = 147}, [2915] = {.lex_state = 134}, [2916] = {.lex_state = 133}, [2917] = {.lex_state = 149}, [2918] = {.lex_state = 133}, [2919] = {.lex_state = 134}, [2920] = {.lex_state = 134}, [2921] = {.lex_state = 134}, [2922] = {.lex_state = 134}, [2923] = {.lex_state = 148}, [2924] = {.lex_state = 134}, [2925] = {.lex_state = 149}, [2926] = {.lex_state = 134}, [2927] = {.lex_state = 133}, [2928] = {.lex_state = 137}, [2929] = {.lex_state = 151}, [2930] = {.lex_state = 147}, [2931] = {.lex_state = 147}, [2932] = {.lex_state = 133}, [2933] = {.lex_state = 147}, [2934] = {.lex_state = 134}, [2935] = {.lex_state = 147}, [2936] = {.lex_state = 133}, [2937] = {.lex_state = 147}, [2938] = {.lex_state = 134}, [2939] = {.lex_state = 149}, [2940] = {.lex_state = 133}, [2941] = {.lex_state = 133}, [2942] = {.lex_state = 149}, [2943] = {.lex_state = 133}, [2944] = {.lex_state = 147}, [2945] = {.lex_state = 134}, [2946] = {.lex_state = 137}, [2947] = {.lex_state = 134}, [2948] = {.lex_state = 133}, [2949] = {.lex_state = 134}, [2950] = {.lex_state = 137}, [2951] = {.lex_state = 149}, [2952] = {.lex_state = 147}, [2953] = {.lex_state = 149}, [2954] = {.lex_state = 133}, [2955] = {.lex_state = 133}, [2956] = {.lex_state = 148}, [2957] = {.lex_state = 134}, [2958] = {.lex_state = 147}, [2959] = {.lex_state = 147}, [2960] = {.lex_state = 133}, [2961] = {.lex_state = 133}, [2962] = {.lex_state = 134}, [2963] = {.lex_state = 133}, [2964] = {.lex_state = 133}, [2965] = {.lex_state = 134}, [2966] = {.lex_state = 137}, [2967] = {.lex_state = 134}, [2968] = {.lex_state = 147}, [2969] = {.lex_state = 133}, [2970] = {.lex_state = 133}, [2971] = {.lex_state = 134}, [2972] = {.lex_state = 133}, [2973] = {.lex_state = 133}, [2974] = {.lex_state = 133}, [2975] = {.lex_state = 148}, [2976] = {.lex_state = 149}, [2977] = {.lex_state = 133}, [2978] = {.lex_state = 133}, [2979] = {.lex_state = 147}, [2980] = {.lex_state = 134}, [2981] = {.lex_state = 147}, [2982] = {.lex_state = 133}, [2983] = {.lex_state = 134}, [2984] = {.lex_state = 137}, [2985] = {.lex_state = 133}, [2986] = {.lex_state = 134}, [2987] = {.lex_state = 134}, [2988] = {.lex_state = 147}, [2989] = {.lex_state = 133}, [2990] = {.lex_state = 149}, [2991] = {.lex_state = 134}, [2992] = {.lex_state = 147}, [2993] = {.lex_state = 133}, [2994] = {.lex_state = 133}, [2995] = {.lex_state = 133}, [2996] = {.lex_state = 149}, [2997] = {.lex_state = 147}, [2998] = {.lex_state = 134}, [2999] = {.lex_state = 134}, [3000] = {.lex_state = 151}, [3001] = {.lex_state = 134}, [3002] = {.lex_state = 151}, [3003] = {.lex_state = 151}, [3004] = {.lex_state = 131}, [3005] = {.lex_state = 133}, [3006] = {.lex_state = 133}, [3007] = {.lex_state = 133}, [3008] = {.lex_state = 147}, [3009] = {.lex_state = 137}, [3010] = {.lex_state = 137}, [3011] = {.lex_state = 133}, [3012] = {.lex_state = 134}, [3013] = {.lex_state = 137}, [3014] = {.lex_state = 134}, [3015] = {.lex_state = 133}, [3016] = {.lex_state = 137}, [3017] = {.lex_state = 148}, [3018] = {.lex_state = 134}, [3019] = {.lex_state = 133}, [3020] = {.lex_state = 133}, [3021] = {.lex_state = 131}, [3022] = {.lex_state = 133}, [3023] = {.lex_state = 133}, [3024] = {.lex_state = 147}, [3025] = {.lex_state = 133}, [3026] = {.lex_state = 131}, [3027] = {.lex_state = 149}, [3028] = {.lex_state = 137}, [3029] = {.lex_state = 133}, [3030] = {.lex_state = 149}, [3031] = {.lex_state = 133}, [3032] = {.lex_state = 133}, [3033] = {.lex_state = 147}, [3034] = {.lex_state = 148}, [3035] = {.lex_state = 133}, [3036] = {.lex_state = 134}, [3037] = {.lex_state = 147}, [3038] = {.lex_state = 149}, [3039] = {.lex_state = 137}, [3040] = {.lex_state = 147}, [3041] = {.lex_state = 133}, [3042] = {.lex_state = 147}, [3043] = {.lex_state = 133}, [3044] = {.lex_state = 149}, [3045] = {.lex_state = 147}, [3046] = {.lex_state = 137}, [3047] = {.lex_state = 134}, [3048] = {.lex_state = 134}, [3049] = {.lex_state = 137}, [3050] = {.lex_state = 131}, [3051] = {.lex_state = 147}, [3052] = {.lex_state = 137}, [3053] = {.lex_state = 131}, [3054] = {.lex_state = 131}, [3055] = {.lex_state = 133}, [3056] = {.lex_state = 147}, [3057] = {.lex_state = 134}, [3058] = {.lex_state = 134}, [3059] = {.lex_state = 133}, [3060] = {.lex_state = 133}, [3061] = {.lex_state = 134}, [3062] = {.lex_state = 147}, [3063] = {.lex_state = 149}, [3064] = {.lex_state = 149}, [3065] = {.lex_state = 137}, [3066] = {.lex_state = 147}, [3067] = {.lex_state = 134}, [3068] = {.lex_state = 131}, [3069] = {.lex_state = 133}, [3070] = {.lex_state = 147}, [3071] = {.lex_state = 134}, [3072] = {.lex_state = 151}, [3073] = {.lex_state = 133}, [3074] = {.lex_state = 134}, [3075] = {.lex_state = 148}, [3076] = {.lex_state = 137}, [3077] = {.lex_state = 133}, [3078] = {.lex_state = 147}, [3079] = {.lex_state = 137}, [3080] = {.lex_state = 133}, [3081] = {.lex_state = 137}, [3082] = {.lex_state = 137}, [3083] = {.lex_state = 149}, [3084] = {.lex_state = 131}, [3085] = {.lex_state = 147}, [3086] = {.lex_state = 147}, [3087] = {.lex_state = 133}, [3088] = {.lex_state = 137}, [3089] = {.lex_state = 133}, [3090] = {.lex_state = 137}, [3091] = {.lex_state = 134}, [3092] = {.lex_state = 134}, [3093] = {.lex_state = 149}, [3094] = {.lex_state = 133}, [3095] = {.lex_state = 134}, [3096] = {.lex_state = 134}, [3097] = {.lex_state = 133}, [3098] = {.lex_state = 133}, [3099] = {.lex_state = 133}, [3100] = {.lex_state = 134}, [3101] = {.lex_state = 133}, [3102] = {.lex_state = 134}, [3103] = {.lex_state = 133}, [3104] = {.lex_state = 137}, [3105] = {.lex_state = 133}, [3106] = {.lex_state = 137}, [3107] = {.lex_state = 134}, [3108] = {.lex_state = 133}, [3109] = {.lex_state = 151}, [3110] = {.lex_state = 133}, [3111] = {.lex_state = 147}, [3112] = {.lex_state = 137}, [3113] = {.lex_state = 134}, [3114] = {.lex_state = 133}, [3115] = {.lex_state = 147}, [3116] = {.lex_state = 133}, [3117] = {.lex_state = 134}, [3118] = {.lex_state = 147}, [3119] = {.lex_state = 134}, [3120] = {.lex_state = 133}, [3121] = {.lex_state = 147}, [3122] = {.lex_state = 133}, [3123] = {.lex_state = 134}, [3124] = {.lex_state = 133}, [3125] = {.lex_state = 131}, [3126] = {.lex_state = 131}, [3127] = {.lex_state = 148}, [3128] = {.lex_state = 149}, [3129] = {.lex_state = 149}, [3130] = {.lex_state = 149}, [3131] = {.lex_state = 149}, [3132] = {.lex_state = 151}, [3133] = {.lex_state = 131}, [3134] = {.lex_state = 131}, [3135] = {.lex_state = 148}, [3136] = {.lex_state = 149}, [3137] = {.lex_state = 148}, [3138] = {.lex_state = 149}, [3139] = {.lex_state = 149}, [3140] = {.lex_state = 148}, [3141] = {.lex_state = 149}, [3142] = {.lex_state = 149}, [3143] = {.lex_state = 149}, [3144] = {.lex_state = 131}, [3145] = {.lex_state = 151}, [3146] = {.lex_state = 149}, [3147] = {.lex_state = 131}, [3148] = {.lex_state = 149}, [3149] = {.lex_state = 148}, [3150] = {.lex_state = 151}, [3151] = {.lex_state = 151}, [3152] = {.lex_state = 149}, [3153] = {.lex_state = 148}, [3154] = {.lex_state = 131}, [3155] = {.lex_state = 131}, [3156] = {.lex_state = 131}, [3157] = {.lex_state = 148}, [3158] = {.lex_state = 149}, [3159] = {.lex_state = 149}, [3160] = {.lex_state = 131}, [3161] = {.lex_state = 131}, [3162] = {.lex_state = 149}, [3163] = {.lex_state = 131}, [3164] = {.lex_state = 149}, [3165] = {.lex_state = 149}, [3166] = {.lex_state = 131}, [3167] = {.lex_state = 131}, [3168] = {.lex_state = 131}, [3169] = {.lex_state = 148}, [3170] = {.lex_state = 151}, [3171] = {.lex_state = 148}, [3172] = {.lex_state = 151}, [3173] = {.lex_state = 151}, [3174] = {.lex_state = 148}, [3175] = {.lex_state = 148}, [3176] = {.lex_state = 148}, [3177] = {.lex_state = 151}, [3178] = {.lex_state = 148}, [3179] = {.lex_state = 131}, [3180] = {.lex_state = 148}, [3181] = {.lex_state = 131}, [3182] = {.lex_state = 131}, [3183] = {.lex_state = 148}, [3184] = {.lex_state = 148}, [3185] = {.lex_state = 131}, [3186] = {.lex_state = 131}, [3187] = {.lex_state = 148}, [3188] = {.lex_state = 131}, [3189] = {.lex_state = 131}, [3190] = {.lex_state = 151}, [3191] = {.lex_state = 149}, [3192] = {.lex_state = 131}, [3193] = {.lex_state = 131}, [3194] = {.lex_state = 151}, [3195] = {.lex_state = 131}, [3196] = {.lex_state = 131}, [3197] = {.lex_state = 131}, [3198] = {.lex_state = 149}, [3199] = {.lex_state = 131}, [3200] = {.lex_state = 131}, [3201] = {.lex_state = 131}, [3202] = {.lex_state = 131}, [3203] = {.lex_state = 131}, [3204] = {.lex_state = 151}, [3205] = {.lex_state = 151}, [3206] = {.lex_state = 131}, [3207] = {.lex_state = 151}, [3208] = {.lex_state = 131}, [3209] = {.lex_state = 151}, [3210] = {.lex_state = 131}, [3211] = {.lex_state = 151}, [3212] = {.lex_state = 131}, [3213] = {.lex_state = 131}, [3214] = {.lex_state = 131}, [3215] = {.lex_state = 131}, [3216] = {.lex_state = 151}, [3217] = {.lex_state = 151}, [3218] = {.lex_state = 151}, [3219] = {.lex_state = 149}, [3220] = {.lex_state = 149}, [3221] = {.lex_state = 151}, [3222] = {.lex_state = 149}, [3223] = {.lex_state = 151}, [3224] = {.lex_state = 151}, [3225] = {.lex_state = 131}, [3226] = {.lex_state = 149}, [3227] = {.lex_state = 151}, [3228] = {.lex_state = 149}, [3229] = {.lex_state = 151}, [3230] = {.lex_state = 151}, [3231] = {.lex_state = 131}, [3232] = {.lex_state = 131}, [3233] = {.lex_state = 149}, [3234] = {.lex_state = 151}, [3235] = {.lex_state = 151}, [3236] = {.lex_state = 151}, [3237] = {.lex_state = 151}, [3238] = {.lex_state = 151}, [3239] = {.lex_state = 151}, [3240] = {.lex_state = 151}, [3241] = {.lex_state = 151}, [3242] = {.lex_state = 151}, [3243] = {.lex_state = 151}, [3244] = {.lex_state = 151}, [3245] = {.lex_state = 151}, [3246] = {.lex_state = 131}, [3247] = {.lex_state = 151}, [3248] = {.lex_state = 151}, [3249] = {.lex_state = 149}, [3250] = {.lex_state = 151}, [3251] = {.lex_state = 148}, [3252] = {.lex_state = 151}, [3253] = {.lex_state = 147}, [3254] = {.lex_state = 149}, [3255] = {.lex_state = 149}, [3256] = {.lex_state = 149}, [3257] = {.lex_state = 151}, [3258] = {.lex_state = 149}, [3259] = {.lex_state = 151}, [3260] = {.lex_state = 149}, [3261] = {.lex_state = 149}, [3262] = {.lex_state = 149}, [3263] = {.lex_state = 120}, [3264] = {.lex_state = 149}, [3265] = {.lex_state = 149}, [3266] = {.lex_state = 148}, [3267] = {.lex_state = 149}, [3268] = {.lex_state = 149}, [3269] = {.lex_state = 151}, [3270] = {.lex_state = 149}, [3271] = {.lex_state = 149}, [3272] = {.lex_state = 149}, [3273] = {.lex_state = 149}, [3274] = {.lex_state = 151}, [3275] = {.lex_state = 149}, [3276] = {.lex_state = 149}, [3277] = {.lex_state = 149}, [3278] = {.lex_state = 151}, [3279] = {.lex_state = 148}, [3280] = {.lex_state = 149}, [3281] = {.lex_state = 149}, [3282] = {.lex_state = 149}, [3283] = {.lex_state = 151}, [3284] = {.lex_state = 149}, [3285] = {.lex_state = 151}, [3286] = {.lex_state = 151}, [3287] = {.lex_state = 148}, [3288] = {.lex_state = 149}, [3289] = {.lex_state = 110}, [3290] = {.lex_state = 149}, [3291] = {.lex_state = 151}, [3292] = {.lex_state = 148}, [3293] = {.lex_state = 149}, [3294] = {.lex_state = 149}, [3295] = {.lex_state = 148}, [3296] = {.lex_state = 148}, [3297] = {.lex_state = 148}, [3298] = {.lex_state = 148}, [3299] = {.lex_state = 148}, [3300] = {.lex_state = 110}, [3301] = {.lex_state = 149}, [3302] = {.lex_state = 148}, [3303] = {.lex_state = 120}, [3304] = {.lex_state = 61}, [3305] = {.lex_state = 148}, [3306] = {.lex_state = 149}, [3307] = {.lex_state = 148}, [3308] = {.lex_state = 151}, [3309] = {.lex_state = 120}, [3310] = {.lex_state = 149}, [3311] = {.lex_state = 110}, [3312] = {.lex_state = 110}, [3313] = {.lex_state = 120}, [3314] = {.lex_state = 120}, [3315] = {.lex_state = 110}, [3316] = {.lex_state = 120}, [3317] = {.lex_state = 120}, [3318] = {.lex_state = 120}, [3319] = {.lex_state = 120}, [3320] = {.lex_state = 110}, [3321] = {.lex_state = 120}, [3322] = {.lex_state = 120}, [3323] = {.lex_state = 110}, [3324] = {.lex_state = 120}, [3325] = {.lex_state = 120}, [3326] = {.lex_state = 110}, [3327] = {.lex_state = 120}, [3328] = {.lex_state = 120}, [3329] = {.lex_state = 149}, [3330] = {.lex_state = 149}, [3331] = {.lex_state = 120}, [3332] = {.lex_state = 149}, [3333] = {.lex_state = 120}, [3334] = {.lex_state = 149}, [3335] = {.lex_state = 149}, [3336] = {.lex_state = 149}, [3337] = {.lex_state = 149}, [3338] = {.lex_state = 120}, [3339] = {.lex_state = 149}, [3340] = {.lex_state = 149}, [3341] = {.lex_state = 149}, [3342] = {.lex_state = 149}, [3343] = {.lex_state = 110}, [3344] = {.lex_state = 149}, [3345] = {.lex_state = 110}, [3346] = {.lex_state = 110}, [3347] = {.lex_state = 110}, [3348] = {.lex_state = 110}, [3349] = {.lex_state = 110}, [3350] = {.lex_state = 110}, [3351] = {.lex_state = 110}, [3352] = {.lex_state = 110}, [3353] = {.lex_state = 110}, [3354] = {.lex_state = 110}, [3355] = {.lex_state = 110}, [3356] = {.lex_state = 120}, [3357] = {.lex_state = 120}, [3358] = {.lex_state = 120}, [3359] = {.lex_state = 110}, [3360] = {.lex_state = 110}, [3361] = {.lex_state = 110}, [3362] = {.lex_state = 110}, [3363] = {.lex_state = 110}, [3364] = {.lex_state = 110}, [3365] = {.lex_state = 110}, [3366] = {.lex_state = 110}, [3367] = {.lex_state = 110}, [3368] = {.lex_state = 149}, [3369] = {.lex_state = 110}, [3370] = {.lex_state = 110}, [3371] = {.lex_state = 149}, [3372] = {.lex_state = 120}, [3373] = {.lex_state = 149}, [3374] = {.lex_state = 110}, [3375] = {.lex_state = 110}, [3376] = {.lex_state = 110}, [3377] = {.lex_state = 120}, [3378] = {.lex_state = 110}, [3379] = {.lex_state = 110}, [3380] = {.lex_state = 61}, [3381] = {.lex_state = 61}, [3382] = {.lex_state = 121}, [3383] = {.lex_state = 121}, [3384] = {.lex_state = 121}, [3385] = {.lex_state = 121}, [3386] = {.lex_state = 121}, [3387] = {.lex_state = 121}, [3388] = {.lex_state = 121}, [3389] = {.lex_state = 121}, [3390] = {.lex_state = 121}, [3391] = {.lex_state = 121}, [3392] = {.lex_state = 121}, [3393] = {.lex_state = 121}, [3394] = {.lex_state = 121}, [3395] = {.lex_state = 131}, [3396] = {.lex_state = 61}, [3397] = {.lex_state = 61}, [3398] = {.lex_state = 121}, [3399] = {.lex_state = 121}, [3400] = {.lex_state = 61}, [3401] = {.lex_state = 121}, [3402] = {.lex_state = 121}, [3403] = {.lex_state = 121}, [3404] = {.lex_state = 121}, [3405] = {.lex_state = 121}, [3406] = {.lex_state = 121}, [3407] = {.lex_state = 121}, [3408] = {.lex_state = 61}, [3409] = {.lex_state = 121}, [3410] = {.lex_state = 121}, [3411] = {.lex_state = 121}, [3412] = {.lex_state = 61}, [3413] = {.lex_state = 61}, [3414] = {.lex_state = 121}, [3415] = {.lex_state = 121}, [3416] = {.lex_state = 121}, [3417] = {.lex_state = 121}, [3418] = {.lex_state = 121}, [3419] = {.lex_state = 121}, [3420] = {.lex_state = 131}, [3421] = {.lex_state = 121}, [3422] = {.lex_state = 121}, [3423] = {.lex_state = 121}, [3424] = {.lex_state = 121}, [3425] = {.lex_state = 121}, [3426] = {.lex_state = 131}, [3427] = {.lex_state = 61}, [3428] = {.lex_state = 61}, [3429] = {.lex_state = 61}, [3430] = {.lex_state = 61}, [3431] = {.lex_state = 61}, [3432] = {.lex_state = 121}, [3433] = {.lex_state = 121}, [3434] = {.lex_state = 120}, [3435] = {.lex_state = 61}, [3436] = {.lex_state = 61}, [3437] = {.lex_state = 121}, [3438] = {.lex_state = 61}, [3439] = {.lex_state = 61}, [3440] = {.lex_state = 61}, [3441] = {.lex_state = 61}, [3442] = {.lex_state = 121}, [3443] = {.lex_state = 131}, [3444] = {.lex_state = 61}, [3445] = {.lex_state = 131}, [3446] = {.lex_state = 131}, [3447] = {.lex_state = 131}, [3448] = {.lex_state = 121}, [3449] = {.lex_state = 121}, [3450] = {.lex_state = 121}, [3451] = {.lex_state = 121}, [3452] = {.lex_state = 121}, [3453] = {.lex_state = 61}, [3454] = {.lex_state = 120}, [3455] = {.lex_state = 121}, [3456] = {.lex_state = 61}, [3457] = {.lex_state = 121}, [3458] = {.lex_state = 61}, [3459] = {.lex_state = 61}, [3460] = {.lex_state = 131}, [3461] = {.lex_state = 61}, [3462] = {.lex_state = 121}, [3463] = {.lex_state = 61}, [3464] = {.lex_state = 61}, [3465] = {.lex_state = 61}, [3466] = {.lex_state = 135}, [3467] = {.lex_state = 135}, [3468] = {.lex_state = 138}, [3469] = {.lex_state = 138}, [3470] = {.lex_state = 149}, [3471] = {.lex_state = 131}, [3472] = {.lex_state = 131}, [3473] = {.lex_state = 131}, [3474] = {.lex_state = 131}, [3475] = {.lex_state = 131}, [3476] = {.lex_state = 121}, [3477] = {.lex_state = 150}, [3478] = {.lex_state = 150}, [3479] = {.lex_state = 121}, [3480] = {.lex_state = 121}, [3481] = {.lex_state = 121}, [3482] = {.lex_state = 121}, [3483] = {.lex_state = 121}, [3484] = {.lex_state = 121}, [3485] = {.lex_state = 121}, [3486] = {.lex_state = 131}, [3487] = {.lex_state = 121}, [3488] = {.lex_state = 121}, [3489] = {.lex_state = 131}, [3490] = {.lex_state = 121}, [3491] = {.lex_state = 121}, [3492] = {.lex_state = 149}, [3493] = {.lex_state = 121}, [3494] = {.lex_state = 150}, [3495] = {.lex_state = 121}, [3496] = {.lex_state = 121}, [3497] = {.lex_state = 149}, [3498] = {.lex_state = 121}, [3499] = {.lex_state = 121}, [3500] = {.lex_state = 121}, [3501] = {.lex_state = 121}, [3502] = {.lex_state = 121}, [3503] = {.lex_state = 121}, [3504] = {.lex_state = 121}, [3505] = {.lex_state = 131}, [3506] = {.lex_state = 131}, [3507] = {.lex_state = 121}, [3508] = {.lex_state = 121}, [3509] = {.lex_state = 121}, [3510] = {.lex_state = 121}, [3511] = {.lex_state = 121}, [3512] = {.lex_state = 121}, [3513] = {.lex_state = 121}, [3514] = {.lex_state = 121}, [3515] = {.lex_state = 121}, [3516] = {.lex_state = 121}, [3517] = {.lex_state = 121}, [3518] = {.lex_state = 121}, [3519] = {.lex_state = 121}, [3520] = {.lex_state = 121}, [3521] = {.lex_state = 121}, [3522] = {.lex_state = 121}, [3523] = {.lex_state = 121}, [3524] = {.lex_state = 121}, [3525] = {.lex_state = 121}, [3526] = {.lex_state = 149}, [3527] = {.lex_state = 149}, [3528] = {.lex_state = 149}, [3529] = {.lex_state = 121}, [3530] = {.lex_state = 149}, [3531] = {.lex_state = 149}, [3532] = {.lex_state = 121}, [3533] = {.lex_state = 108}, [3534] = {.lex_state = 121}, [3535] = {.lex_state = 121}, [3536] = {.lex_state = 108}, [3537] = {.lex_state = 121}, [3538] = {.lex_state = 121}, [3539] = {.lex_state = 121}, [3540] = {.lex_state = 121}, [3541] = {.lex_state = 121}, [3542] = {.lex_state = 121}, [3543] = {.lex_state = 121}, [3544] = {.lex_state = 121}, [3545] = {.lex_state = 121}, [3546] = {.lex_state = 121}, [3547] = {.lex_state = 108}, [3548] = {.lex_state = 108}, [3549] = {.lex_state = 121}, [3550] = {.lex_state = 121}, [3551] = {.lex_state = 121}, [3552] = {.lex_state = 121}, [3553] = {.lex_state = 121}, [3554] = {.lex_state = 121}, [3555] = {.lex_state = 121}, [3556] = {.lex_state = 121}, [3557] = {.lex_state = 121}, [3558] = {.lex_state = 121}, [3559] = {.lex_state = 121}, [3560] = {.lex_state = 121}, [3561] = {.lex_state = 121}, [3562] = {.lex_state = 121}, [3563] = {.lex_state = 121}, [3564] = {.lex_state = 121}, [3565] = {.lex_state = 121}, [3566] = {.lex_state = 121}, [3567] = {.lex_state = 121}, [3568] = {.lex_state = 121}, [3569] = {.lex_state = 121}, [3570] = {.lex_state = 108}, [3571] = {.lex_state = 108}, [3572] = {.lex_state = 121}, [3573] = {.lex_state = 121}, [3574] = {.lex_state = 108}, [3575] = {.lex_state = 153}, [3576] = {.lex_state = 121}, [3577] = {.lex_state = 121}, [3578] = {.lex_state = 153}, [3579] = {.lex_state = 108}, [3580] = {.lex_state = 121}, [3581] = {.lex_state = 121}, [3582] = {.lex_state = 121}, [3583] = {.lex_state = 121}, [3584] = {.lex_state = 121}, [3585] = {.lex_state = 121}, [3586] = {.lex_state = 121}, [3587] = {.lex_state = 121}, [3588] = {.lex_state = 121}, [3589] = {.lex_state = 121}, [3590] = {.lex_state = 121}, [3591] = {.lex_state = 121}, [3592] = {.lex_state = 121}, [3593] = {.lex_state = 121}, [3594] = {.lex_state = 121}, [3595] = {.lex_state = 121}, [3596] = {.lex_state = 121}, [3597] = {.lex_state = 121}, [3598] = {.lex_state = 121}, [3599] = {.lex_state = 121}, [3600] = {.lex_state = 121}, [3601] = {.lex_state = 108}, [3602] = {.lex_state = 121}, [3603] = {.lex_state = 121}, [3604] = {.lex_state = 121}, [3605] = {.lex_state = 121}, [3606] = {.lex_state = 121}, [3607] = {.lex_state = 121}, [3608] = {.lex_state = 121}, [3609] = {.lex_state = 149}, [3610] = {.lex_state = 121}, [3611] = {.lex_state = 121}, [3612] = {.lex_state = 121}, [3613] = {.lex_state = 121}, [3614] = {.lex_state = 121}, [3615] = {.lex_state = 121}, [3616] = {.lex_state = 121}, [3617] = {.lex_state = 121}, [3618] = {.lex_state = 121}, [3619] = {.lex_state = 121}, [3620] = {.lex_state = 121}, [3621] = {.lex_state = 121}, [3622] = {.lex_state = 121}, [3623] = {.lex_state = 152}, [3624] = {.lex_state = 152}, [3625] = {.lex_state = 108}, [3626] = {.lex_state = 121}, [3627] = {.lex_state = 150}, [3628] = {.lex_state = 204}, [3629] = {.lex_state = 204}, [3630] = {.lex_state = 121}, [3631] = {.lex_state = 121}, [3632] = {.lex_state = 152}, [3633] = {.lex_state = 150}, [3634] = {.lex_state = 121}, [3635] = {.lex_state = 108}, [3636] = {.lex_state = 204}, [3637] = {.lex_state = 121}, [3638] = {.lex_state = 108}, [3639] = {.lex_state = 150}, [3640] = {.lex_state = 149}, [3641] = {.lex_state = 152}, [3642] = {.lex_state = 150}, [3643] = {.lex_state = 149}, [3644] = {.lex_state = 121}, [3645] = {.lex_state = 204}, [3646] = {.lex_state = 121}, [3647] = {.lex_state = 204}, [3648] = {.lex_state = 152}, [3649] = {.lex_state = 204}, [3650] = {.lex_state = 150}, [3651] = {.lex_state = 108}, [3652] = {.lex_state = 152}, [3653] = {.lex_state = 150}, [3654] = {.lex_state = 152}, [3655] = {.lex_state = 121}, [3656] = {.lex_state = 152}, [3657] = {.lex_state = 204}, [3658] = {.lex_state = 152}, [3659] = {.lex_state = 121}, [3660] = {.lex_state = 121}, [3661] = {.lex_state = 121}, [3662] = {.lex_state = 204}, [3663] = {.lex_state = 121}, [3664] = {.lex_state = 204}, [3665] = {.lex_state = 204}, [3666] = {.lex_state = 121}, [3667] = {.lex_state = 121}, [3668] = {.lex_state = 204}, [3669] = {.lex_state = 121}, [3670] = {.lex_state = 108}, [3671] = {.lex_state = 121}, [3672] = {.lex_state = 121}, [3673] = {.lex_state = 121}, [3674] = {.lex_state = 204}, [3675] = {.lex_state = 108}, [3676] = {.lex_state = 121}, [3677] = {.lex_state = 121}, [3678] = {.lex_state = 204}, [3679] = {.lex_state = 121}, [3680] = {.lex_state = 204}, [3681] = {.lex_state = 121}, [3682] = {.lex_state = 108}, [3683] = {.lex_state = 121}, [3684] = {.lex_state = 204}, [3685] = {.lex_state = 149}, [3686] = {.lex_state = 121}, [3687] = {.lex_state = 121}, [3688] = {.lex_state = 121}, [3689] = {.lex_state = 121}, [3690] = {.lex_state = 149}, [3691] = {.lex_state = 121}, [3692] = {.lex_state = 121}, [3693] = {.lex_state = 149}, [3694] = {.lex_state = 121}, [3695] = {.lex_state = 121}, [3696] = {.lex_state = 121}, [3697] = {.lex_state = 121}, [3698] = {.lex_state = 149}, [3699] = {.lex_state = 149}, [3700] = {.lex_state = 149}, [3701] = {.lex_state = 149}, [3702] = {.lex_state = 121}, [3703] = {.lex_state = 121}, [3704] = {.lex_state = 149}, [3705] = {.lex_state = 121}, [3706] = {.lex_state = 121}, [3707] = {.lex_state = 121}, [3708] = {.lex_state = 149}, [3709] = {.lex_state = 149}, [3710] = {.lex_state = 204}, [3711] = {.lex_state = 149}, [3712] = {.lex_state = 149}, [3713] = {.lex_state = 149}, [3714] = {.lex_state = 108}, [3715] = {.lex_state = 121}, [3716] = {.lex_state = 121}, [3717] = {.lex_state = 121}, [3718] = {.lex_state = 121}, [3719] = {.lex_state = 121}, [3720] = {.lex_state = 135}, [3721] = {.lex_state = 150}, [3722] = {.lex_state = 150}, [3723] = {.lex_state = 131}, [3724] = {.lex_state = 131}, [3725] = {.lex_state = 131}, [3726] = {.lex_state = 150}, [3727] = {.lex_state = 150}, [3728] = {.lex_state = 131}, [3729] = {.lex_state = 150}, [3730] = {.lex_state = 131}, [3731] = {.lex_state = 150}, [3732] = {.lex_state = 150}, [3733] = {.lex_state = 150}, [3734] = {.lex_state = 150}, [3735] = {.lex_state = 150}, [3736] = {.lex_state = 131}, [3737] = {.lex_state = 150}, [3738] = {.lex_state = 110}, [3739] = {.lex_state = 150}, [3740] = {.lex_state = 150}, [3741] = {.lex_state = 131}, [3742] = {.lex_state = 150}, [3743] = {.lex_state = 150}, [3744] = {.lex_state = 131}, [3745] = {.lex_state = 110}, [3746] = {.lex_state = 131}, [3747] = {.lex_state = 131}, [3748] = {.lex_state = 108}, [3749] = {.lex_state = 150}, [3750] = {.lex_state = 150}, [3751] = {.lex_state = 150}, [3752] = {.lex_state = 131}, [3753] = {.lex_state = 140}, [3754] = {.lex_state = 135}, [3755] = {.lex_state = 150}, [3756] = {.lex_state = 204}, [3757] = {.lex_state = 131}, [3758] = {.lex_state = 150}, [3759] = {.lex_state = 135}, [3760] = {.lex_state = 150}, [3761] = {.lex_state = 204}, [3762] = {.lex_state = 135}, [3763] = {.lex_state = 150}, [3764] = {.lex_state = 135}, [3765] = {.lex_state = 135}, [3766] = {.lex_state = 131}, [3767] = {.lex_state = 121}, [3768] = {.lex_state = 135}, [3769] = {.lex_state = 150}, [3770] = {.lex_state = 121}, [3771] = {.lex_state = 131}, [3772] = {.lex_state = 135}, [3773] = {.lex_state = 150}, [3774] = {.lex_state = 131}, [3775] = {.lex_state = 152}, [3776] = {.lex_state = 131}, [3777] = {.lex_state = 131}, [3778] = {.lex_state = 135}, [3779] = {.lex_state = 150}, [3780] = {.lex_state = 204}, [3781] = {.lex_state = 131}, [3782] = {.lex_state = 150}, [3783] = {.lex_state = 121}, [3784] = {.lex_state = 150}, [3785] = {.lex_state = 121}, [3786] = {.lex_state = 150}, [3787] = {.lex_state = 121}, [3788] = {.lex_state = 121}, [3789] = {.lex_state = 150}, [3790] = {.lex_state = 150}, [3791] = {.lex_state = 121}, [3792] = {.lex_state = 121}, [3793] = {.lex_state = 121}, [3794] = {.lex_state = 204}, [3795] = {.lex_state = 121}, [3796] = {.lex_state = 121}, [3797] = {.lex_state = 121}, [3798] = {.lex_state = 204}, [3799] = {.lex_state = 121}, [3800] = {.lex_state = 204}, [3801] = {.lex_state = 150}, [3802] = {.lex_state = 150}, [3803] = {.lex_state = 204}, [3804] = {.lex_state = 150}, [3805] = {.lex_state = 204}, [3806] = {.lex_state = 150}, [3807] = {.lex_state = 150}, [3808] = {.lex_state = 121}, [3809] = {.lex_state = 121}, [3810] = {.lex_state = 150}, [3811] = {.lex_state = 150}, [3812] = {.lex_state = 150}, [3813] = {.lex_state = 150}, [3814] = {.lex_state = 150}, [3815] = {.lex_state = 150}, [3816] = {.lex_state = 150}, [3817] = {.lex_state = 150}, [3818] = {.lex_state = 121}, [3819] = {.lex_state = 204}, [3820] = {.lex_state = 150}, [3821] = {.lex_state = 150}, [3822] = {.lex_state = 204}, [3823] = {.lex_state = 150}, [3824] = {.lex_state = 204}, [3825] = {.lex_state = 204}, [3826] = {.lex_state = 150}, [3827] = {.lex_state = 121}, [3828] = {.lex_state = 204}, [3829] = {.lex_state = 150}, [3830] = {.lex_state = 121}, [3831] = {.lex_state = 150}, [3832] = {.lex_state = 150}, [3833] = {.lex_state = 150}, [3834] = {.lex_state = 121}, [3835] = {.lex_state = 150}, [3836] = {.lex_state = 150}, [3837] = {.lex_state = 150}, [3838] = {.lex_state = 121}, [3839] = {.lex_state = 108}, [3840] = {.lex_state = 204}, [3841] = {.lex_state = 140}, [3842] = {.lex_state = 108}, [3843] = {.lex_state = 150}, [3844] = {.lex_state = 204}, [3845] = {.lex_state = 150}, [3846] = {.lex_state = 108}, [3847] = {.lex_state = 0, .external_lex_state = 1}, [3848] = {.lex_state = 150}, [3849] = {.lex_state = 150}, [3850] = {.lex_state = 204}, [3851] = {.lex_state = 108}, [3852] = {.lex_state = 204}, [3853] = {.lex_state = 204}, [3854] = {.lex_state = 108}, [3855] = {.lex_state = 204}, [3856] = {.lex_state = 204}, [3857] = {.lex_state = 0, .external_lex_state = 1}, [3858] = {.lex_state = 108}, [3859] = {.lex_state = 108}, [3860] = {.lex_state = 108}, [3861] = {.lex_state = 204}, [3862] = {.lex_state = 108}, [3863] = {.lex_state = 140}, [3864] = {.lex_state = 0, .external_lex_state = 1}, [3865] = {.lex_state = 108}, [3866] = {.lex_state = 121}, [3867] = {.lex_state = 108}, [3868] = {.lex_state = 204}, [3869] = {.lex_state = 108}, [3870] = {.lex_state = 204}, [3871] = {.lex_state = 140}, [3872] = {.lex_state = 0, .external_lex_state = 1}, [3873] = {.lex_state = 204}, [3874] = {.lex_state = 0, .external_lex_state = 1}, [3875] = {.lex_state = 0, .external_lex_state = 1}, [3876] = {.lex_state = 150}, [3877] = {.lex_state = 121}, [3878] = {.lex_state = 204}, [3879] = {.lex_state = 204}, [3880] = {.lex_state = 204}, [3881] = {.lex_state = 134}, [3882] = {.lex_state = 134}, [3883] = {.lex_state = 204}, [3884] = {.lex_state = 108}, [3885] = {.lex_state = 121}, [3886] = {.lex_state = 140}, [3887] = {.lex_state = 204}, [3888] = {.lex_state = 108}, [3889] = {.lex_state = 108}, [3890] = {.lex_state = 108}, [3891] = {.lex_state = 204}, [3892] = {.lex_state = 108}, [3893] = {.lex_state = 204}, [3894] = {.lex_state = 204}, [3895] = {.lex_state = 204}, [3896] = {.lex_state = 204}, [3897] = {.lex_state = 150}, [3898] = {.lex_state = 150}, [3899] = {.lex_state = 204}, [3900] = {.lex_state = 0, .external_lex_state = 1}, [3901] = {.lex_state = 108}, [3902] = {.lex_state = 108}, [3903] = {.lex_state = 150}, [3904] = {.lex_state = 121}, [3905] = {.lex_state = 204}, [3906] = {.lex_state = 204}, [3907] = {.lex_state = 108}, [3908] = {.lex_state = 204}, [3909] = {.lex_state = 108}, [3910] = {.lex_state = 108}, [3911] = {.lex_state = 150}, [3912] = {.lex_state = 204}, [3913] = {.lex_state = 204}, [3914] = {.lex_state = 0, .external_lex_state = 1}, [3915] = {.lex_state = 108}, [3916] = {.lex_state = 150}, [3917] = {.lex_state = 121}, [3918] = {.lex_state = 108}, [3919] = {.lex_state = 108}, [3920] = {.lex_state = 108}, [3921] = {.lex_state = 204}, [3922] = {.lex_state = 204}, [3923] = {.lex_state = 108}, [3924] = {.lex_state = 150}, [3925] = {.lex_state = 108}, [3926] = {.lex_state = 108}, [3927] = {.lex_state = 108}, [3928] = {.lex_state = 108}, [3929] = {.lex_state = 204}, [3930] = {.lex_state = 108}, [3931] = {.lex_state = 204}, [3932] = {.lex_state = 108}, [3933] = {.lex_state = 108}, [3934] = {.lex_state = 108}, [3935] = {.lex_state = 108}, [3936] = {.lex_state = 0, .external_lex_state = 1}, [3937] = {.lex_state = 108}, [3938] = {.lex_state = 0, .external_lex_state = 1}, [3939] = {.lex_state = 108}, [3940] = {.lex_state = 108}, [3941] = {.lex_state = 108}, [3942] = {.lex_state = 108}, [3943] = {.lex_state = 108}, [3944] = {.lex_state = 108}, [3945] = {.lex_state = 121}, [3946] = {.lex_state = 108}, [3947] = {.lex_state = 108}, [3948] = {.lex_state = 121}, [3949] = {.lex_state = 108}, [3950] = {.lex_state = 108}, [3951] = {.lex_state = 204}, [3952] = {.lex_state = 108}, [3953] = {.lex_state = 135}, [3954] = {.lex_state = 121}, [3955] = {.lex_state = 108}, [3956] = {.lex_state = 121}, [3957] = {.lex_state = 108}, [3958] = {.lex_state = 0, .external_lex_state = 1}, [3959] = {.lex_state = 108}, [3960] = {.lex_state = 204}, [3961] = {.lex_state = 108}, [3962] = {.lex_state = 204}, [3963] = {.lex_state = 108}, [3964] = {.lex_state = 108}, [3965] = {.lex_state = 150}, [3966] = {.lex_state = 204}, [3967] = {.lex_state = 150}, [3968] = {.lex_state = 150}, [3969] = {.lex_state = 108}, [3970] = {.lex_state = 108}, [3971] = {.lex_state = 108}, [3972] = {.lex_state = 204}, [3973] = {.lex_state = 121}, [3974] = {.lex_state = 108}, [3975] = {.lex_state = 150}, [3976] = {.lex_state = 121}, [3977] = {.lex_state = 0, .external_lex_state = 1}, [3978] = {.lex_state = 108}, [3979] = {.lex_state = 108}, [3980] = {.lex_state = 108}, [3981] = {.lex_state = 204}, [3982] = {.lex_state = 108}, [3983] = {.lex_state = 108}, [3984] = {.lex_state = 108}, [3985] = {.lex_state = 108}, [3986] = {.lex_state = 108}, [3987] = {.lex_state = 108}, [3988] = {.lex_state = 150}, [3989] = {.lex_state = 108}, [3990] = {.lex_state = 108}, [3991] = {.lex_state = 108}, [3992] = {.lex_state = 108}, [3993] = {.lex_state = 108}, [3994] = {.lex_state = 0, .external_lex_state = 1}, [3995] = {.lex_state = 121}, [3996] = {.lex_state = 108}, [3997] = {.lex_state = 150}, [3998] = {.lex_state = 108}, [3999] = {.lex_state = 135}, [4000] = {.lex_state = 0, .external_lex_state = 1}, [4001] = {.lex_state = 108}, [4002] = {.lex_state = 108}, [4003] = {.lex_state = 108}, [4004] = {.lex_state = 108}, [4005] = {.lex_state = 204}, [4006] = {.lex_state = 108}, [4007] = {.lex_state = 204}, [4008] = {.lex_state = 121}, [4009] = {.lex_state = 204}, [4010] = {.lex_state = 204}, [4011] = {.lex_state = 121}, [4012] = {.lex_state = 204}, [4013] = {.lex_state = 121}, [4014] = {.lex_state = 121}, [4015] = {.lex_state = 121}, [4016] = {.lex_state = 121}, [4017] = {.lex_state = 204}, [4018] = {.lex_state = 121}, [4019] = {.lex_state = 121}, [4020] = {.lex_state = 204}, [4021] = {.lex_state = 121}, [4022] = {.lex_state = 204}, [4023] = {.lex_state = 121}, [4024] = {.lex_state = 121}, [4025] = {.lex_state = 204}, [4026] = {.lex_state = 204}, [4027] = {.lex_state = 121}, [4028] = {.lex_state = 121}, [4029] = {.lex_state = 121}, [4030] = {.lex_state = 121}, [4031] = {.lex_state = 204}, [4032] = {.lex_state = 121}, [4033] = {.lex_state = 121}, [4034] = {.lex_state = 204}, [4035] = {.lex_state = 121}, [4036] = {.lex_state = 204}, [4037] = {.lex_state = 204}, [4038] = {.lex_state = 204}, [4039] = {.lex_state = 204}, [4040] = {.lex_state = 204}, [4041] = {.lex_state = 121}, [4042] = {.lex_state = 121}, [4043] = {.lex_state = 121}, [4044] = {.lex_state = 121}, [4045] = {.lex_state = 204}, [4046] = {.lex_state = 204}, [4047] = {.lex_state = 204}, [4048] = {.lex_state = 121}, [4049] = {.lex_state = 121}, [4050] = {.lex_state = 121}, [4051] = {.lex_state = 204}, [4052] = {.lex_state = 121}, [4053] = {.lex_state = 204}, [4054] = {.lex_state = 121}, [4055] = {.lex_state = 121}, [4056] = {.lex_state = 204}, [4057] = {.lex_state = 204}, [4058] = {.lex_state = 121}, [4059] = {.lex_state = 204}, [4060] = {.lex_state = 121}, [4061] = {.lex_state = 108}, [4062] = {.lex_state = 108}, [4063] = {.lex_state = 204}, [4064] = {.lex_state = 108}, [4065] = {.lex_state = 204}, [4066] = {.lex_state = 108}, [4067] = {.lex_state = 108}, [4068] = {.lex_state = 108}, [4069] = {.lex_state = 108}, [4070] = {.lex_state = 108}, [4071] = {.lex_state = 108}, [4072] = {.lex_state = 108}, [4073] = {.lex_state = 108}, [4074] = {.lex_state = 204}, [4075] = {.lex_state = 108}, [4076] = {.lex_state = 108}, [4077] = {.lex_state = 121}, [4078] = {.lex_state = 108}, [4079] = {.lex_state = 204}, [4080] = {.lex_state = 108}, [4081] = {.lex_state = 108}, [4082] = {.lex_state = 121}, [4083] = {.lex_state = 108}, [4084] = {.lex_state = 108}, [4085] = {.lex_state = 204}, [4086] = {.lex_state = 121}, [4087] = {.lex_state = 204}, [4088] = {.lex_state = 204}, [4089] = {.lex_state = 108}, [4090] = {.lex_state = 108}, [4091] = {.lex_state = 108}, [4092] = {.lex_state = 108}, [4093] = {.lex_state = 108}, [4094] = {.lex_state = 108}, [4095] = {.lex_state = 204}, [4096] = {.lex_state = 108}, [4097] = {.lex_state = 108}, [4098] = {.lex_state = 204}, [4099] = {.lex_state = 204}, [4100] = {.lex_state = 204}, [4101] = {.lex_state = 108}, [4102] = {.lex_state = 150}, [4103] = {.lex_state = 108}, [4104] = {.lex_state = 108}, [4105] = {.lex_state = 108}, [4106] = {.lex_state = 108}, [4107] = {.lex_state = 121}, [4108] = {.lex_state = 204}, [4109] = {.lex_state = 204}, [4110] = {.lex_state = 204}, [4111] = {.lex_state = 204}, [4112] = {.lex_state = 121}, [4113] = {.lex_state = 121}, [4114] = {.lex_state = 149}, [4115] = {.lex_state = 204}, [4116] = {.lex_state = 108}, [4117] = {.lex_state = 204}, [4118] = {.lex_state = 204}, [4119] = {.lex_state = 204}, [4120] = {.lex_state = 204}, [4121] = {.lex_state = 204}, [4122] = {.lex_state = 204}, [4123] = {.lex_state = 204}, [4124] = {.lex_state = 204}, [4125] = {.lex_state = 108}, [4126] = {.lex_state = 204}, [4127] = {.lex_state = 204}, [4128] = {.lex_state = 204}, [4129] = {.lex_state = 204}, [4130] = {.lex_state = 204}, [4131] = {.lex_state = 204}, [4132] = {.lex_state = 121}, [4133] = {.lex_state = 204}, [4134] = {.lex_state = 204}, [4135] = {.lex_state = 204}, [4136] = {.lex_state = 121}, [4137] = {.lex_state = 204}, [4138] = {.lex_state = 111}, [4139] = {.lex_state = 0}, [4140] = {.lex_state = 68}, [4141] = {.lex_state = 111}, [4142] = {.lex_state = 111}, [4143] = {.lex_state = 111}, [4144] = {.lex_state = 121}, [4145] = {.lex_state = 111}, [4146] = {.lex_state = 204}, [4147] = {.lex_state = 111}, [4148] = {.lex_state = 111}, [4149] = {.lex_state = 111}, [4150] = {.lex_state = 111}, [4151] = {.lex_state = 111}, [4152] = {.lex_state = 108}, [4153] = {.lex_state = 111}, [4154] = {.lex_state = 204}, [4155] = {.lex_state = 111}, [4156] = {.lex_state = 111}, [4157] = {.lex_state = 204}, [4158] = {.lex_state = 111}, [4159] = {.lex_state = 111}, [4160] = {.lex_state = 70}, [4161] = {.lex_state = 111}, [4162] = {.lex_state = 70}, [4163] = {.lex_state = 204}, [4164] = {.lex_state = 204}, [4165] = {.lex_state = 111}, [4166] = {.lex_state = 0}, [4167] = {.lex_state = 111}, [4168] = {.lex_state = 204}, [4169] = {.lex_state = 111}, [4170] = {.lex_state = 111}, [4171] = {.lex_state = 111}, [4172] = {.lex_state = 204}, [4173] = {.lex_state = 111}, [4174] = {.lex_state = 121}, [4175] = {.lex_state = 111}, [4176] = {.lex_state = 111}, [4177] = {.lex_state = 111}, [4178] = {.lex_state = 121}, [4179] = {.lex_state = 111}, [4180] = {.lex_state = 111}, [4181] = {.lex_state = 111}, [4182] = {.lex_state = 149}, [4183] = {.lex_state = 111}, [4184] = {.lex_state = 68}, [4185] = {.lex_state = 111}, [4186] = {.lex_state = 111}, [4187] = {.lex_state = 111}, [4188] = {.lex_state = 111}, [4189] = {.lex_state = 111}, [4190] = {.lex_state = 111}, [4191] = {.lex_state = 111}, [4192] = {.lex_state = 111}, [4193] = {.lex_state = 68}, [4194] = {.lex_state = 111}, [4195] = {.lex_state = 108}, [4196] = {.lex_state = 111}, [4197] = {.lex_state = 111}, [4198] = {.lex_state = 204}, [4199] = {.lex_state = 204}, [4200] = {.lex_state = 111}, [4201] = {.lex_state = 111}, [4202] = {.lex_state = 0}, [4203] = {.lex_state = 111}, [4204] = {.lex_state = 204}, [4205] = {.lex_state = 0}, [4206] = {.lex_state = 111}, [4207] = {.lex_state = 111}, [4208] = {.lex_state = 108}, [4209] = {.lex_state = 204}, [4210] = {.lex_state = 111}, [4211] = {.lex_state = 121}, [4212] = {.lex_state = 108}, [4213] = {.lex_state = 70}, [4214] = {.lex_state = 204}, [4215] = {.lex_state = 68}, [4216] = {.lex_state = 204}, [4217] = {.lex_state = 0}, [4218] = {.lex_state = 204}, [4219] = {.lex_state = 0}, [4220] = {.lex_state = 111}, [4221] = {.lex_state = 204}, [4222] = {.lex_state = 111}, [4223] = {.lex_state = 68}, [4224] = {.lex_state = 111}, [4225] = {.lex_state = 108}, [4226] = {.lex_state = 68}, [4227] = {.lex_state = 111}, [4228] = {.lex_state = 108}, [4229] = {.lex_state = 204}, [4230] = {.lex_state = 70}, [4231] = {.lex_state = 111}, [4232] = {.lex_state = 111}, [4233] = {.lex_state = 111}, [4234] = {.lex_state = 111}, [4235] = {.lex_state = 111}, [4236] = {.lex_state = 111}, [4237] = {.lex_state = 121}, [4238] = {.lex_state = 111}, [4239] = {.lex_state = 111}, [4240] = {.lex_state = 111}, [4241] = {.lex_state = 111}, [4242] = {.lex_state = 111}, [4243] = {.lex_state = 111}, [4244] = {.lex_state = 111}, [4245] = {.lex_state = 108}, [4246] = {.lex_state = 111}, [4247] = {.lex_state = 111}, [4248] = {.lex_state = 111}, [4249] = {.lex_state = 111}, [4250] = {.lex_state = 111}, [4251] = {.lex_state = 111}, [4252] = {.lex_state = 111}, [4253] = {.lex_state = 111}, [4254] = {.lex_state = 111}, [4255] = {.lex_state = 68}, [4256] = {.lex_state = 121}, [4257] = {.lex_state = 111}, [4258] = {.lex_state = 149}, [4259] = {.lex_state = 204}, [4260] = {.lex_state = 111}, [4261] = {.lex_state = 0}, [4262] = {.lex_state = 111}, [4263] = {.lex_state = 149}, [4264] = {.lex_state = 111}, [4265] = {.lex_state = 111}, [4266] = {.lex_state = 108}, [4267] = {.lex_state = 111}, [4268] = {.lex_state = 204}, [4269] = {.lex_state = 111}, [4270] = {.lex_state = 111}, [4271] = {.lex_state = 121}, [4272] = {.lex_state = 204}, [4273] = {.lex_state = 0}, [4274] = {.lex_state = 204}, [4275] = {.lex_state = 0}, [4276] = {.lex_state = 204}, [4277] = {.lex_state = 0}, [4278] = {.lex_state = 111}, [4279] = {.lex_state = 111}, [4280] = {.lex_state = 111}, [4281] = {.lex_state = 111}, [4282] = {.lex_state = 111}, [4283] = {.lex_state = 111}, [4284] = {.lex_state = 111}, [4285] = {.lex_state = 111}, [4286] = {.lex_state = 111}, [4287] = {.lex_state = 111}, [4288] = {.lex_state = 111}, [4289] = {.lex_state = 111}, [4290] = {.lex_state = 111}, [4291] = {.lex_state = 111}, [4292] = {.lex_state = 111}, [4293] = {.lex_state = 111}, [4294] = {.lex_state = 111}, [4295] = {.lex_state = 111}, [4296] = {.lex_state = 70}, [4297] = {.lex_state = 0}, [4298] = {.lex_state = 111}, [4299] = {.lex_state = 111}, [4300] = {.lex_state = 204}, [4301] = {.lex_state = 111}, [4302] = {.lex_state = 149}, [4303] = {.lex_state = 111}, [4304] = {.lex_state = 204}, [4305] = {.lex_state = 204}, [4306] = {.lex_state = 204}, [4307] = {.lex_state = 68}, [4308] = {.lex_state = 0}, [4309] = {.lex_state = 204}, [4310] = {.lex_state = 204}, [4311] = {.lex_state = 111}, [4312] = {.lex_state = 204}, [4313] = {.lex_state = 149}, [4314] = {.lex_state = 204}, [4315] = {.lex_state = 68}, [4316] = {.lex_state = 204}, [4317] = {.lex_state = 121}, [4318] = {.lex_state = 111}, [4319] = {.lex_state = 149}, [4320] = {.lex_state = 111}, [4321] = {.lex_state = 111}, [4322] = {.lex_state = 204}, [4323] = {.lex_state = 111}, [4324] = {.lex_state = 108}, [4325] = {.lex_state = 111}, [4326] = {.lex_state = 111}, [4327] = {.lex_state = 149}, [4328] = {.lex_state = 111}, [4329] = {.lex_state = 111}, [4330] = {.lex_state = 111}, [4331] = {.lex_state = 111}, [4332] = {.lex_state = 111}, [4333] = {.lex_state = 121}, [4334] = {.lex_state = 204}, [4335] = {.lex_state = 68}, [4336] = {.lex_state = 204}, [4337] = {.lex_state = 111}, [4338] = {.lex_state = 70}, [4339] = {.lex_state = 204}, [4340] = {.lex_state = 111}, [4341] = {.lex_state = 108}, [4342] = {.lex_state = 111}, [4343] = {.lex_state = 111}, [4344] = {.lex_state = 68}, [4345] = {.lex_state = 111}, [4346] = {.lex_state = 111}, [4347] = {.lex_state = 149}, [4348] = {.lex_state = 111}, [4349] = {.lex_state = 149}, [4350] = {.lex_state = 204}, [4351] = {.lex_state = 204}, [4352] = {.lex_state = 111}, [4353] = {.lex_state = 204}, [4354] = {.lex_state = 204}, [4355] = {.lex_state = 68}, [4356] = {.lex_state = 111}, [4357] = {.lex_state = 204}, [4358] = {.lex_state = 121}, [4359] = {.lex_state = 204}, [4360] = {.lex_state = 204}, [4361] = {.lex_state = 204}, [4362] = {.lex_state = 204}, [4363] = {.lex_state = 70}, [4364] = {.lex_state = 204}, [4365] = {.lex_state = 121}, [4366] = {.lex_state = 111}, [4367] = {.lex_state = 108}, [4368] = {.lex_state = 111}, [4369] = {.lex_state = 111}, [4370] = {.lex_state = 68}, [4371] = {.lex_state = 0}, [4372] = {.lex_state = 0}, [4373] = {.lex_state = 0}, [4374] = {.lex_state = 0}, [4375] = {.lex_state = 204}, [4376] = {.lex_state = 0}, [4377] = {.lex_state = 121}, [4378] = {.lex_state = 121}, [4379] = {.lex_state = 0}, [4380] = {.lex_state = 61}, [4381] = {.lex_state = 0}, [4382] = {.lex_state = 0}, [4383] = {.lex_state = 0}, [4384] = {.lex_state = 0}, [4385] = {.lex_state = 0}, [4386] = {.lex_state = 121}, [4387] = {.lex_state = 0}, [4388] = {.lex_state = 121}, [4389] = {.lex_state = 121}, [4390] = {.lex_state = 0}, [4391] = {.lex_state = 121}, [4392] = {.lex_state = 121}, [4393] = {.lex_state = 0}, [4394] = {.lex_state = 0}, [4395] = {.lex_state = 204}, [4396] = {.lex_state = 0}, [4397] = {.lex_state = 108}, [4398] = {.lex_state = 0}, [4399] = {.lex_state = 0}, [4400] = {.lex_state = 0}, [4401] = {.lex_state = 0}, [4402] = {.lex_state = 204}, [4403] = {.lex_state = 121}, [4404] = {.lex_state = 108}, [4405] = {.lex_state = 0}, [4406] = {.lex_state = 0}, [4407] = {.lex_state = 0}, [4408] = {.lex_state = 0}, [4409] = {.lex_state = 0}, [4410] = {.lex_state = 0}, [4411] = {.lex_state = 0}, [4412] = {.lex_state = 0}, [4413] = {.lex_state = 0}, [4414] = {.lex_state = 121}, [4415] = {.lex_state = 149}, [4416] = {.lex_state = 0}, [4417] = {.lex_state = 204}, [4418] = {.lex_state = 121}, [4419] = {.lex_state = 0}, [4420] = {.lex_state = 121}, [4421] = {.lex_state = 204}, [4422] = {.lex_state = 0}, [4423] = {.lex_state = 0}, [4424] = {.lex_state = 0}, [4425] = {.lex_state = 0}, [4426] = {.lex_state = 0}, [4427] = {.lex_state = 204}, [4428] = {.lex_state = 121}, [4429] = {.lex_state = 0}, [4430] = {.lex_state = 0}, [4431] = {.lex_state = 121}, [4432] = {.lex_state = 0}, [4433] = {.lex_state = 0}, [4434] = {.lex_state = 0}, [4435] = {.lex_state = 121}, [4436] = {.lex_state = 0}, [4437] = {.lex_state = 0}, [4438] = {.lex_state = 0}, [4439] = {.lex_state = 0}, [4440] = {.lex_state = 204}, [4441] = {.lex_state = 0}, [4442] = {.lex_state = 0}, [4443] = {.lex_state = 121}, [4444] = {.lex_state = 0}, [4445] = {.lex_state = 0}, [4446] = {.lex_state = 121}, [4447] = {.lex_state = 0}, [4448] = {.lex_state = 0}, [4449] = {.lex_state = 0}, [4450] = {.lex_state = 61}, [4451] = {.lex_state = 0}, [4452] = {.lex_state = 0}, [4453] = {.lex_state = 121}, [4454] = {.lex_state = 0}, [4455] = {.lex_state = 121}, [4456] = {.lex_state = 0}, [4457] = {.lex_state = 0}, [4458] = {.lex_state = 121}, [4459] = {.lex_state = 121}, [4460] = {.lex_state = 0}, [4461] = {.lex_state = 0}, [4462] = {.lex_state = 0}, [4463] = {.lex_state = 0}, [4464] = {.lex_state = 0}, [4465] = {.lex_state = 0}, [4466] = {.lex_state = 0}, [4467] = {.lex_state = 0}, [4468] = {.lex_state = 0}, [4469] = {.lex_state = 0}, [4470] = {.lex_state = 204}, [4471] = {.lex_state = 0}, [4472] = {.lex_state = 0}, [4473] = {.lex_state = 0}, [4474] = {.lex_state = 0}, [4475] = {.lex_state = 0}, [4476] = {.lex_state = 0}, [4477] = {.lex_state = 0}, [4478] = {.lex_state = 121}, [4479] = {.lex_state = 0}, [4480] = {.lex_state = 0}, [4481] = {.lex_state = 121}, [4482] = {.lex_state = 0}, [4483] = {.lex_state = 0}, [4484] = {.lex_state = 204}, [4485] = {.lex_state = 0}, [4486] = {.lex_state = 0}, [4487] = {.lex_state = 121}, [4488] = {.lex_state = 121}, [4489] = {.lex_state = 121}, [4490] = {.lex_state = 121}, [4491] = {.lex_state = 204}, [4492] = {.lex_state = 0}, [4493] = {.lex_state = 0}, [4494] = {.lex_state = 0}, [4495] = {.lex_state = 0}, [4496] = {.lex_state = 0}, [4497] = {.lex_state = 0}, [4498] = {.lex_state = 0}, [4499] = {.lex_state = 0}, [4500] = {.lex_state = 0}, [4501] = {.lex_state = 0}, [4502] = {.lex_state = 0}, [4503] = {.lex_state = 0}, [4504] = {.lex_state = 121}, [4505] = {.lex_state = 0}, [4506] = {.lex_state = 0}, [4507] = {.lex_state = 121}, [4508] = {.lex_state = 0}, [4509] = {.lex_state = 0}, [4510] = {.lex_state = 204}, [4511] = {.lex_state = 0}, [4512] = {.lex_state = 0}, [4513] = {.lex_state = 204}, [4514] = {.lex_state = 0}, [4515] = {.lex_state = 121}, [4516] = {.lex_state = 0}, [4517] = {.lex_state = 0}, [4518] = {.lex_state = 0}, [4519] = {.lex_state = 0}, [4520] = {.lex_state = 0}, [4521] = {.lex_state = 121}, [4522] = {.lex_state = 0}, [4523] = {.lex_state = 0}, [4524] = {.lex_state = 121}, [4525] = {.lex_state = 0}, [4526] = {.lex_state = 0}, [4527] = {.lex_state = 0}, [4528] = {.lex_state = 0}, [4529] = {.lex_state = 0}, [4530] = {.lex_state = 0}, [4531] = {.lex_state = 0}, [4532] = {.lex_state = 0}, [4533] = {.lex_state = 0}, [4534] = {.lex_state = 0}, [4535] = {.lex_state = 0}, [4536] = {.lex_state = 204}, [4537] = {.lex_state = 0}, [4538] = {.lex_state = 0}, [4539] = {.lex_state = 0}, [4540] = {.lex_state = 0}, [4541] = {.lex_state = 0}, [4542] = {.lex_state = 0}, [4543] = {.lex_state = 0}, [4544] = {.lex_state = 0}, [4545] = {.lex_state = 204}, [4546] = {.lex_state = 0}, [4547] = {.lex_state = 121}, [4548] = {.lex_state = 0}, [4549] = {.lex_state = 0}, [4550] = {.lex_state = 121}, [4551] = {.lex_state = 0}, [4552] = {.lex_state = 121}, [4553] = {.lex_state = 0}, [4554] = {.lex_state = 121}, [4555] = {.lex_state = 121}, [4556] = {.lex_state = 0}, [4557] = {.lex_state = 0}, [4558] = {.lex_state = 108}, [4559] = {.lex_state = 0}, [4560] = {.lex_state = 0}, [4561] = {.lex_state = 0}, [4562] = {.lex_state = 0}, [4563] = {.lex_state = 0}, [4564] = {.lex_state = 0}, [4565] = {.lex_state = 0}, [4566] = {.lex_state = 121}, [4567] = {.lex_state = 0}, [4568] = {.lex_state = 0}, [4569] = {.lex_state = 0}, [4570] = {.lex_state = 0}, [4571] = {.lex_state = 121}, [4572] = {.lex_state = 121}, [4573] = {.lex_state = 0}, [4574] = {.lex_state = 0}, [4575] = {.lex_state = 0}, [4576] = {.lex_state = 0}, [4577] = {.lex_state = 204}, [4578] = {.lex_state = 0}, [4579] = {.lex_state = 121}, [4580] = {.lex_state = 0}, [4581] = {.lex_state = 0}, [4582] = {.lex_state = 0}, [4583] = {.lex_state = 204}, [4584] = {.lex_state = 0}, [4585] = {.lex_state = 204}, [4586] = {.lex_state = 121}, [4587] = {.lex_state = 0}, [4588] = {.lex_state = 0}, [4589] = {.lex_state = 0}, [4590] = {.lex_state = 204}, [4591] = {.lex_state = 0}, [4592] = {.lex_state = 0}, [4593] = {.lex_state = 0}, [4594] = {.lex_state = 0}, [4595] = {.lex_state = 0}, [4596] = {.lex_state = 0}, [4597] = {.lex_state = 0}, [4598] = {.lex_state = 61}, [4599] = {.lex_state = 204}, [4600] = {.lex_state = 0}, [4601] = {.lex_state = 0}, [4602] = {.lex_state = 61}, [4603] = {.lex_state = 121}, [4604] = {.lex_state = 0}, [4605] = {.lex_state = 0}, [4606] = {.lex_state = 121}, [4607] = {.lex_state = 0}, [4608] = {.lex_state = 121}, [4609] = {.lex_state = 0}, [4610] = {.lex_state = 121}, [4611] = {.lex_state = 121}, [4612] = {.lex_state = 0}, [4613] = {.lex_state = 71}, [4614] = {.lex_state = 204}, [4615] = {.lex_state = 0}, [4616] = {.lex_state = 0}, [4617] = {.lex_state = 0}, [4618] = {.lex_state = 0}, [4619] = {.lex_state = 0}, [4620] = {.lex_state = 0}, [4621] = {.lex_state = 0}, [4622] = {.lex_state = 71}, [4623] = {.lex_state = 0}, [4624] = {.lex_state = 0}, [4625] = {.lex_state = 0}, [4626] = {.lex_state = 0}, [4627] = {.lex_state = 0}, [4628] = {.lex_state = 0}, [4629] = {.lex_state = 121}, [4630] = {.lex_state = 204}, [4631] = {.lex_state = 0}, [4632] = {.lex_state = 204}, [4633] = {.lex_state = 0}, [4634] = {.lex_state = 0}, [4635] = {.lex_state = 0}, [4636] = {.lex_state = 0}, [4637] = {.lex_state = 0}, [4638] = {.lex_state = 0}, [4639] = {.lex_state = 0}, [4640] = {.lex_state = 0}, [4641] = {.lex_state = 0}, [4642] = {.lex_state = 0}, [4643] = {.lex_state = 0}, [4644] = {.lex_state = 0}, [4645] = {.lex_state = 0}, [4646] = {.lex_state = 0}, [4647] = {.lex_state = 0}, [4648] = {.lex_state = 0}, [4649] = {.lex_state = 0}, [4650] = {.lex_state = 0}, [4651] = {.lex_state = 0}, [4652] = {.lex_state = 0}, [4653] = {.lex_state = 0}, [4654] = {.lex_state = 0}, [4655] = {.lex_state = 0}, [4656] = {.lex_state = 0}, [4657] = {.lex_state = 0}, [4658] = {.lex_state = 204}, [4659] = {.lex_state = 0}, [4660] = {.lex_state = 0}, [4661] = {.lex_state = 0}, [4662] = {.lex_state = 121}, [4663] = {.lex_state = 204}, [4664] = {.lex_state = 121}, [4665] = {.lex_state = 71}, [4666] = {.lex_state = 204}, [4667] = {.lex_state = 0}, [4668] = {.lex_state = 0}, [4669] = {.lex_state = 204}, [4670] = {.lex_state = 121}, [4671] = {.lex_state = 204}, [4672] = {.lex_state = 0}, [4673] = {.lex_state = 121}, [4674] = {.lex_state = 0}, [4675] = {.lex_state = 0}, [4676] = {.lex_state = 204}, [4677] = {.lex_state = 121}, [4678] = {.lex_state = 121}, [4679] = {.lex_state = 121}, [4680] = {.lex_state = 72}, [4681] = {.lex_state = 121}, [4682] = {.lex_state = 0}, [4683] = {.lex_state = 121}, [4684] = {.lex_state = 0}, [4685] = {.lex_state = 204}, [4686] = {.lex_state = 121}, [4687] = {.lex_state = 121}, [4688] = {.lex_state = 0}, [4689] = {.lex_state = 0}, [4690] = {.lex_state = 121}, [4691] = {.lex_state = 0}, [4692] = {.lex_state = 121}, [4693] = {.lex_state = 0}, [4694] = {.lex_state = 204}, [4695] = {.lex_state = 71}, [4696] = {.lex_state = 0}, [4697] = {.lex_state = 71}, [4698] = {.lex_state = 0}, [4699] = {.lex_state = 121}, [4700] = {.lex_state = 121}, [4701] = {.lex_state = 0}, [4702] = {.lex_state = 0}, [4703] = {.lex_state = 0}, [4704] = {.lex_state = 0}, [4705] = {.lex_state = 0}, [4706] = {.lex_state = 0}, [4707] = {.lex_state = 0}, [4708] = {.lex_state = 71}, [4709] = {.lex_state = 0}, [4710] = {.lex_state = 0}, [4711] = {.lex_state = 204}, [4712] = {.lex_state = 121}, [4713] = {.lex_state = 121}, [4714] = {.lex_state = 0}, [4715] = {.lex_state = 0}, [4716] = {.lex_state = 121}, [4717] = {.lex_state = 0}, [4718] = {.lex_state = 0}, [4719] = {.lex_state = 121}, [4720] = {.lex_state = 121}, [4721] = {.lex_state = 204}, [4722] = {.lex_state = 0}, [4723] = {.lex_state = 204}, [4724] = {.lex_state = 0}, [4725] = {.lex_state = 121}, [4726] = {.lex_state = 0}, [4727] = {.lex_state = 121}, [4728] = {.lex_state = 204}, [4729] = {.lex_state = 121}, [4730] = {.lex_state = 204}, [4731] = {.lex_state = 204}, [4732] = {.lex_state = 0}, [4733] = {.lex_state = 121}, [4734] = {.lex_state = 204}, [4735] = {.lex_state = 0}, [4736] = {.lex_state = 0}, [4737] = {.lex_state = 204}, [4738] = {.lex_state = 0}, [4739] = {.lex_state = 0}, [4740] = {.lex_state = 204}, [4741] = {.lex_state = 204}, [4742] = {.lex_state = 204}, [4743] = {.lex_state = 0}, [4744] = {.lex_state = 0}, [4745] = {.lex_state = 0}, [4746] = {.lex_state = 0}, [4747] = {.lex_state = 0}, [4748] = {.lex_state = 121}, [4749] = {.lex_state = 204}, [4750] = {.lex_state = 0}, [4751] = {.lex_state = 0}, [4752] = {.lex_state = 72}, [4753] = {.lex_state = 0}, [4754] = {.lex_state = 0}, [4755] = {.lex_state = 0}, [4756] = {.lex_state = 0}, [4757] = {.lex_state = 0}, [4758] = {.lex_state = 0}, [4759] = {.lex_state = 0}, [4760] = {.lex_state = 0}, [4761] = {.lex_state = 0}, [4762] = {.lex_state = 0}, [4763] = {.lex_state = 121}, [4764] = {.lex_state = 0}, [4765] = {.lex_state = 0}, [4766] = {.lex_state = 0}, [4767] = {.lex_state = 0}, [4768] = {.lex_state = 0}, [4769] = {.lex_state = 0}, [4770] = {.lex_state = 0}, [4771] = {.lex_state = 0}, [4772] = {.lex_state = 204}, [4773] = {.lex_state = 0}, [4774] = {.lex_state = 0}, [4775] = {.lex_state = 0}, [4776] = {.lex_state = 0}, [4777] = {.lex_state = 0}, [4778] = {.lex_state = 0}, [4779] = {.lex_state = 204}, [4780] = {.lex_state = 0}, [4781] = {.lex_state = 121}, [4782] = {.lex_state = 0}, [4783] = {.lex_state = 0}, [4784] = {.lex_state = 0}, [4785] = {.lex_state = 0}, [4786] = {.lex_state = 0}, [4787] = {.lex_state = 0}, [4788] = {.lex_state = 0}, [4789] = {.lex_state = 0}, [4790] = {.lex_state = 0}, [4791] = {.lex_state = 0}, [4792] = {.lex_state = 121}, [4793] = {.lex_state = 0}, [4794] = {.lex_state = 0}, [4795] = {.lex_state = 0}, [4796] = {.lex_state = 0}, [4797] = {.lex_state = 121}, [4798] = {.lex_state = 0}, [4799] = {.lex_state = 204}, [4800] = {.lex_state = 0}, [4801] = {.lex_state = 0}, [4802] = {.lex_state = 0}, [4803] = {.lex_state = 0}, [4804] = {.lex_state = 204}, [4805] = {.lex_state = 204}, [4806] = {.lex_state = 121}, [4807] = {.lex_state = 121}, [4808] = {.lex_state = 0}, [4809] = {.lex_state = 0}, [4810] = {.lex_state = 121}, [4811] = {.lex_state = 121}, [4812] = {.lex_state = 121}, [4813] = {.lex_state = 0}, [4814] = {.lex_state = 0}, [4815] = {.lex_state = 0}, [4816] = {.lex_state = 71}, [4817] = {.lex_state = 0}, [4818] = {.lex_state = 0}, [4819] = {.lex_state = 0}, [4820] = {.lex_state = 121}, [4821] = {.lex_state = 0}, [4822] = {.lex_state = 0}, [4823] = {.lex_state = 204}, [4824] = {.lex_state = 0}, [4825] = {.lex_state = 0}, [4826] = {.lex_state = 0}, [4827] = {.lex_state = 204}, [4828] = {.lex_state = 121}, [4829] = {.lex_state = 0}, [4830] = {.lex_state = 204}, [4831] = {.lex_state = 121}, [4832] = {.lex_state = 204}, [4833] = {.lex_state = 0}, [4834] = {.lex_state = 0}, [4835] = {.lex_state = 0}, [4836] = {.lex_state = 121}, [4837] = {.lex_state = 121}, [4838] = {.lex_state = 71}, [4839] = {.lex_state = 204}, [4840] = {.lex_state = 121}, [4841] = {.lex_state = 121}, [4842] = {.lex_state = 71}, [4843] = {.lex_state = 121}, [4844] = {.lex_state = 71}, [4845] = {.lex_state = 121}, [4846] = {.lex_state = 121}, [4847] = {.lex_state = 121}, [4848] = {.lex_state = 121}, [4849] = {.lex_state = 0}, [4850] = {.lex_state = 121}, [4851] = {.lex_state = 0}, [4852] = {.lex_state = 204}, [4853] = {.lex_state = 0}, [4854] = {.lex_state = 0}, [4855] = {.lex_state = 0}, [4856] = {.lex_state = 204}, [4857] = {.lex_state = 0}, [4858] = {.lex_state = 0}, [4859] = {.lex_state = 0}, [4860] = {.lex_state = 0}, [4861] = {.lex_state = 0}, [4862] = {.lex_state = 0}, [4863] = {.lex_state = 0}, [4864] = {.lex_state = 204}, [4865] = {.lex_state = 204}, [4866] = {.lex_state = 204}, [4867] = {.lex_state = 204}, [4868] = {.lex_state = 204}, [4869] = {.lex_state = 0}, [4870] = {.lex_state = 0}, [4871] = {.lex_state = 0}, [4872] = {.lex_state = 0}, [4873] = {.lex_state = 121}, [4874] = {.lex_state = 0}, [4875] = {.lex_state = 121}, [4876] = {.lex_state = 121}, [4877] = {.lex_state = 0}, [4878] = {.lex_state = 121}, [4879] = {.lex_state = 121}, [4880] = {.lex_state = 204}, [4881] = {.lex_state = 71}, [4882] = {.lex_state = 0}, [4883] = {.lex_state = 0}, [4884] = {.lex_state = 0}, [4885] = {.lex_state = 0}, [4886] = {.lex_state = 0}, [4887] = {.lex_state = 204}, [4888] = {.lex_state = 0}, [4889] = {.lex_state = 0}, [4890] = {.lex_state = 0}, [4891] = {.lex_state = 0}, [4892] = {.lex_state = 0}, [4893] = {.lex_state = 204}, [4894] = {.lex_state = 121}, [4895] = {.lex_state = 121}, [4896] = {.lex_state = 0}, [4897] = {.lex_state = 0}, [4898] = {.lex_state = 0}, [4899] = {.lex_state = 121}, [4900] = {.lex_state = 0}, [4901] = {.lex_state = 121}, [4902] = {.lex_state = 121}, [4903] = {.lex_state = 121}, [4904] = {.lex_state = 0}, [4905] = {.lex_state = 0}, [4906] = {.lex_state = 121}, [4907] = {.lex_state = 204}, [4908] = {.lex_state = 121}, [4909] = {.lex_state = 0}, [4910] = {.lex_state = 121}, [4911] = {.lex_state = 71}, [4912] = {.lex_state = 204}, [4913] = {.lex_state = 121}, [4914] = {.lex_state = 0}, [4915] = {.lex_state = 121}, [4916] = {.lex_state = 0}, [4917] = {.lex_state = 0}, [4918] = {.lex_state = 121}, [4919] = {.lex_state = 204}, [4920] = {.lex_state = 121}, [4921] = {.lex_state = 0}, [4922] = {.lex_state = 72}, [4923] = {.lex_state = 121}, [4924] = {.lex_state = 0}, [4925] = {.lex_state = 204}, [4926] = {.lex_state = 0}, [4927] = {.lex_state = 0}, [4928] = {.lex_state = 0}, [4929] = {.lex_state = 71}, [4930] = {.lex_state = 0}, [4931] = {.lex_state = 0}, [4932] = {.lex_state = 204}, [4933] = {.lex_state = 0}, [4934] = {.lex_state = 121}, [4935] = {.lex_state = 121}, [4936] = {.lex_state = 121}, [4937] = {.lex_state = 204}, [4938] = {.lex_state = 121}, [4939] = {.lex_state = 121}, [4940] = {.lex_state = 0}, [4941] = {.lex_state = 0}, [4942] = {.lex_state = 0}, [4943] = {.lex_state = 121}, [4944] = {.lex_state = 121}, [4945] = {.lex_state = 0}, [4946] = {.lex_state = 0}, [4947] = {.lex_state = 121}, [4948] = {.lex_state = 204}, [4949] = {.lex_state = 121}, [4950] = {.lex_state = 0}, [4951] = {.lex_state = 0}, [4952] = {.lex_state = 0}, [4953] = {.lex_state = 0}, [4954] = {.lex_state = 0}, [4955] = {.lex_state = 0}, [4956] = {.lex_state = 0}, [4957] = {.lex_state = 0}, [4958] = {.lex_state = 0}, [4959] = {.lex_state = 0}, [4960] = {.lex_state = 0}, [4961] = {.lex_state = 0}, [4962] = {.lex_state = 121}, [4963] = {.lex_state = 0}, [4964] = {.lex_state = 204}, [4965] = {.lex_state = 121}, [4966] = {.lex_state = 121}, [4967] = {.lex_state = 0}, [4968] = {.lex_state = 121}, [4969] = {.lex_state = 0}, [4970] = {.lex_state = 204}, [4971] = {.lex_state = 121}, [4972] = {.lex_state = 71}, [4973] = {.lex_state = 0}, [4974] = {.lex_state = 121}, [4975] = {.lex_state = 204}, [4976] = {.lex_state = 121}, [4977] = {.lex_state = 204}, [4978] = {.lex_state = 121}, [4979] = {.lex_state = 204}, [4980] = {.lex_state = 204}, [4981] = {.lex_state = 121}, [4982] = {.lex_state = 121}, [4983] = {.lex_state = 121}, [4984] = {.lex_state = 121}, [4985] = {.lex_state = 204}, [4986] = {.lex_state = 0}, [4987] = {.lex_state = 0}, [4988] = {.lex_state = 0}, [4989] = {.lex_state = 121}, [4990] = {.lex_state = 0}, [4991] = {.lex_state = 204}, [4992] = {.lex_state = 0}, [4993] = {.lex_state = 0}, [4994] = {.lex_state = 0}, [4995] = {.lex_state = 71}, [4996] = {.lex_state = 0}, [4997] = {.lex_state = 72}, [4998] = {.lex_state = 204}, [4999] = {.lex_state = 0}, [5000] = {.lex_state = 0}, [5001] = {.lex_state = 0}, [5002] = {.lex_state = 0}, [5003] = {.lex_state = 0}, [5004] = {.lex_state = 0}, [5005] = {.lex_state = 121}, [5006] = {.lex_state = 204}, [5007] = {.lex_state = 204}, [5008] = {.lex_state = 0}, [5009] = {.lex_state = 0}, [5010] = {.lex_state = 204}, [5011] = {.lex_state = 0}, [5012] = {.lex_state = 0}, [5013] = {.lex_state = 121}, [5014] = {.lex_state = 204}, [5015] = {.lex_state = 0}, [5016] = {.lex_state = 0}, [5017] = {.lex_state = 204}, [5018] = {.lex_state = 0}, [5019] = {.lex_state = 0}, [5020] = {.lex_state = 0}, [5021] = {.lex_state = 0}, [5022] = {.lex_state = 0}, [5023] = {.lex_state = 0}, [5024] = {.lex_state = 0}, [5025] = {.lex_state = 0}, [5026] = {.lex_state = 0}, [5027] = {.lex_state = 0}, [5028] = {.lex_state = 121}, [5029] = {.lex_state = 0}, [5030] = {.lex_state = 0}, [5031] = {.lex_state = 121}, [5032] = {.lex_state = 204}, [5033] = {.lex_state = 0}, [5034] = {.lex_state = 0}, [5035] = {.lex_state = 72}, [5036] = {.lex_state = 72}, [5037] = {.lex_state = 204}, [5038] = {.lex_state = 204}, [5039] = {.lex_state = 0}, [5040] = {.lex_state = 121}, [5041] = {.lex_state = 0}, [5042] = {.lex_state = 71}, [5043] = {.lex_state = 0}, [5044] = {.lex_state = 0}, [5045] = {.lex_state = 0}, [5046] = {.lex_state = 0}, [5047] = {.lex_state = 121}, [5048] = {.lex_state = 0}, [5049] = {.lex_state = 0}, [5050] = {.lex_state = 204}, [5051] = {.lex_state = 121}, [5052] = {.lex_state = 0}, [5053] = {.lex_state = 71}, [5054] = {.lex_state = 0}, [5055] = {.lex_state = 0}, [5056] = {.lex_state = 0}, [5057] = {.lex_state = 204}, [5058] = {.lex_state = 204}, [5059] = {.lex_state = 0}, [5060] = {.lex_state = 121}, [5061] = {.lex_state = 0}, [5062] = {.lex_state = 0}, [5063] = {.lex_state = 106}, [5064] = {.lex_state = 0}, [5065] = {.lex_state = 0}, [5066] = {.lex_state = 0}, [5067] = {.lex_state = 61}, [5068] = {.lex_state = 121}, [5069] = {.lex_state = 0}, [5070] = {.lex_state = 106}, [5071] = {.lex_state = 204}, [5072] = {.lex_state = 0}, [5073] = {.lex_state = 0}, [5074] = {.lex_state = 0}, [5075] = {.lex_state = 0}, [5076] = {.lex_state = 106}, [5077] = {.lex_state = 61}, [5078] = {.lex_state = 0}, [5079] = {.lex_state = 106}, [5080] = {.lex_state = 0}, [5081] = {.lex_state = 0}, [5082] = {.lex_state = 106}, [5083] = {.lex_state = 0}, [5084] = {.lex_state = 0}, [5085] = {.lex_state = 0}, [5086] = {.lex_state = 0}, [5087] = {.lex_state = 121}, [5088] = {.lex_state = 204}, [5089] = {.lex_state = 106}, [5090] = {.lex_state = 0}, [5091] = {.lex_state = 121}, [5092] = {.lex_state = 111}, [5093] = {.lex_state = 0}, [5094] = {.lex_state = 204}, [5095] = {.lex_state = 0}, [5096] = {.lex_state = 0}, [5097] = {.lex_state = 0}, [5098] = {.lex_state = 106}, [5099] = {.lex_state = 0}, [5100] = {.lex_state = 0}, [5101] = {.lex_state = 106}, [5102] = {.lex_state = 121}, [5103] = {.lex_state = 121}, [5104] = {.lex_state = 0}, [5105] = {.lex_state = 0}, [5106] = {.lex_state = 0}, [5107] = {.lex_state = 0}, [5108] = {.lex_state = 61}, [5109] = {.lex_state = 0}, [5110] = {.lex_state = 0}, [5111] = {.lex_state = 61}, [5112] = {.lex_state = 0}, [5113] = {.lex_state = 0}, [5114] = {.lex_state = 121}, [5115] = {.lex_state = 0}, [5116] = {.lex_state = 111}, [5117] = {.lex_state = 204}, [5118] = {.lex_state = 121}, [5119] = {.lex_state = 204}, [5120] = {.lex_state = 0}, [5121] = {.lex_state = 0}, [5122] = {.lex_state = 121}, [5123] = {.lex_state = 121}, [5124] = {.lex_state = 121}, [5125] = {.lex_state = 0}, [5126] = {.lex_state = 0}, [5127] = {.lex_state = 0}, [5128] = {.lex_state = 106}, [5129] = {.lex_state = 0}, [5130] = {.lex_state = 0}, [5131] = {.lex_state = 61}, [5132] = {.lex_state = 0}, [5133] = {.lex_state = 0}, [5134] = {.lex_state = 0}, [5135] = {.lex_state = 0}, [5136] = {.lex_state = 0}, [5137] = {.lex_state = 0}, [5138] = {.lex_state = 0}, [5139] = {.lex_state = 0}, [5140] = {.lex_state = 204}, [5141] = {.lex_state = 121}, [5142] = {.lex_state = 0}, [5143] = {.lex_state = 61}, [5144] = {.lex_state = 121}, [5145] = {.lex_state = 121}, [5146] = {.lex_state = 0}, [5147] = {.lex_state = 0}, [5148] = {.lex_state = 0}, [5149] = {.lex_state = 0}, [5150] = {.lex_state = 204}, [5151] = {.lex_state = 0}, [5152] = {.lex_state = 121}, [5153] = {.lex_state = 0}, [5154] = {.lex_state = 0}, [5155] = {.lex_state = 121}, [5156] = {.lex_state = 106}, [5157] = {.lex_state = 0}, [5158] = {.lex_state = 61}, [5159] = {.lex_state = 0}, [5160] = {.lex_state = 106}, [5161] = {.lex_state = 0}, [5162] = {.lex_state = 121}, [5163] = {.lex_state = 0}, [5164] = {.lex_state = 0}, [5165] = {.lex_state = 0}, [5166] = {.lex_state = 0}, [5167] = {.lex_state = 0}, [5168] = {.lex_state = 61}, [5169] = {.lex_state = 204}, [5170] = {.lex_state = 0}, [5171] = {.lex_state = 0}, [5172] = {.lex_state = 0}, [5173] = {.lex_state = 0}, [5174] = {.lex_state = 0}, [5175] = {.lex_state = 0}, [5176] = {.lex_state = 0}, [5177] = {.lex_state = 0}, [5178] = {.lex_state = 0}, [5179] = {.lex_state = 204}, [5180] = {.lex_state = 0}, [5181] = {.lex_state = 204}, [5182] = {.lex_state = 121}, [5183] = {.lex_state = 0}, [5184] = {.lex_state = 121}, [5185] = {.lex_state = 0}, [5186] = {.lex_state = 0}, [5187] = {.lex_state = 0}, [5188] = {.lex_state = 204}, [5189] = {.lex_state = 0}, [5190] = {.lex_state = 204}, [5191] = {.lex_state = 61}, [5192] = {.lex_state = 121}, [5193] = {.lex_state = 0}, [5194] = {.lex_state = 0}, [5195] = {.lex_state = 0}, [5196] = {.lex_state = 0}, [5197] = {.lex_state = 111}, [5198] = {.lex_state = 121}, [5199] = {.lex_state = 0}, [5200] = {.lex_state = 0}, [5201] = {.lex_state = 121}, [5202] = {.lex_state = 121}, [5203] = {.lex_state = 204}, [5204] = {.lex_state = 0}, [5205] = {.lex_state = 0}, [5206] = {.lex_state = 0}, [5207] = {.lex_state = 0}, [5208] = {.lex_state = 0}, [5209] = {.lex_state = 61}, [5210] = {.lex_state = 0}, [5211] = {.lex_state = 106}, [5212] = {.lex_state = 121}, [5213] = {.lex_state = 0}, [5214] = {.lex_state = 0}, [5215] = {.lex_state = 0}, [5216] = {.lex_state = 0}, [5217] = {.lex_state = 0}, [5218] = {.lex_state = 121}, [5219] = {.lex_state = 0}, [5220] = {.lex_state = 0}, [5221] = {.lex_state = 0}, [5222] = {.lex_state = 204}, [5223] = {.lex_state = 121}, [5224] = {.lex_state = 0}, [5225] = {.lex_state = 121}, [5226] = {.lex_state = 0}, [5227] = {.lex_state = 0}, [5228] = {.lex_state = 0}, [5229] = {.lex_state = 0}, [5230] = {.lex_state = 61}, [5231] = {.lex_state = 0}, [5232] = {.lex_state = 204}, [5233] = {.lex_state = 111}, [5234] = {.lex_state = 0}, [5235] = {.lex_state = 0}, [5236] = {.lex_state = 121}, [5237] = {.lex_state = 0}, [5238] = {.lex_state = 0}, [5239] = {.lex_state = 0}, [5240] = {.lex_state = 0}, [5241] = {.lex_state = 204}, [5242] = {.lex_state = 106}, [5243] = {.lex_state = 204}, [5244] = {.lex_state = 0}, [5245] = {.lex_state = 0}, [5246] = {.lex_state = 0}, [5247] = {.lex_state = 106}, [5248] = {.lex_state = 106}, [5249] = {.lex_state = 0}, [5250] = {.lex_state = 61}, [5251] = {.lex_state = 0}, [5252] = {.lex_state = 0}, [5253] = {.lex_state = 61}, [5254] = {.lex_state = 0}, [5255] = {.lex_state = 0}, [5256] = {.lex_state = 0}, [5257] = {.lex_state = 121}, [5258] = {.lex_state = 0}, [5259] = {.lex_state = 0}, [5260] = {.lex_state = 61}, [5261] = {.lex_state = 0}, [5262] = {.lex_state = 0}, [5263] = {.lex_state = 121}, [5264] = {.lex_state = 0}, [5265] = {.lex_state = 0}, [5266] = {.lex_state = 0}, [5267] = {.lex_state = 0}, [5268] = {.lex_state = 111}, [5269] = {.lex_state = 106}, [5270] = {.lex_state = 0}, [5271] = {.lex_state = 0}, [5272] = {.lex_state = 0}, [5273] = {.lex_state = 0}, [5274] = {.lex_state = 0}, [5275] = {.lex_state = 0}, [5276] = {.lex_state = 0}, [5277] = {.lex_state = 0}, [5278] = {.lex_state = 0}, [5279] = {.lex_state = 0}, [5280] = {.lex_state = 0}, [5281] = {.lex_state = 0}, [5282] = {.lex_state = 0}, [5283] = {.lex_state = 111}, [5284] = {.lex_state = 61}, [5285] = {.lex_state = 204}, [5286] = {.lex_state = 0}, [5287] = {.lex_state = 0}, [5288] = {.lex_state = 61}, [5289] = {.lex_state = 121}, [5290] = {.lex_state = 0}, [5291] = {.lex_state = 0}, [5292] = {.lex_state = 61}, [5293] = {.lex_state = 106}, [5294] = {.lex_state = 106}, [5295] = {.lex_state = 0}, [5296] = {.lex_state = 121}, [5297] = {.lex_state = 121}, [5298] = {.lex_state = 0}, [5299] = {.lex_state = 0}, [5300] = {.lex_state = 121}, [5301] = {.lex_state = 0}, [5302] = {.lex_state = 106}, [5303] = {.lex_state = 0}, [5304] = {.lex_state = 204}, [5305] = {.lex_state = 61}, [5306] = {.lex_state = 204}, [5307] = {.lex_state = 204}, [5308] = {.lex_state = 0}, [5309] = {.lex_state = 204}, [5310] = {.lex_state = 0}, [5311] = {.lex_state = 121}, [5312] = {.lex_state = 0}, [5313] = {.lex_state = 106}, [5314] = {.lex_state = 0}, [5315] = {.lex_state = 0}, [5316] = {.lex_state = 0}, [5317] = {.lex_state = 106}, [5318] = {.lex_state = 121}, [5319] = {.lex_state = 0}, [5320] = {.lex_state = 204}, [5321] = {.lex_state = 0}, [5322] = {.lex_state = 0}, [5323] = {.lex_state = 106}, [5324] = {.lex_state = 0}, [5325] = {.lex_state = 0}, [5326] = {.lex_state = 0}, [5327] = {.lex_state = 0}, [5328] = {.lex_state = 0}, [5329] = {.lex_state = 0}, [5330] = {.lex_state = 121}, [5331] = {.lex_state = 121}, [5332] = {.lex_state = 0}, [5333] = {.lex_state = 204}, [5334] = {.lex_state = 121}, [5335] = {.lex_state = 111}, [5336] = {.lex_state = 0}, [5337] = {.lex_state = 106}, [5338] = {.lex_state = 121}, [5339] = {.lex_state = 0}, [5340] = {.lex_state = 0}, [5341] = {.lex_state = 204}, [5342] = {.lex_state = 121}, [5343] = {.lex_state = 0}, [5344] = {.lex_state = 0}, [5345] = {.lex_state = 121}, [5346] = {.lex_state = 61}, [5347] = {.lex_state = 204}, [5348] = {.lex_state = 0}, [5349] = {.lex_state = 0}, [5350] = {.lex_state = 121}, [5351] = {.lex_state = 0}, [5352] = {.lex_state = 204}, [5353] = {.lex_state = 0}, [5354] = {.lex_state = 0}, [5355] = {.lex_state = 0}, [5356] = {.lex_state = 121}, [5357] = {.lex_state = 0}, [5358] = {.lex_state = 0}, [5359] = {.lex_state = 121}, [5360] = {.lex_state = 0}, [5361] = {.lex_state = 61}, [5362] = {.lex_state = 106}, [5363] = {.lex_state = 0}, [5364] = {.lex_state = 0}, [5365] = {.lex_state = 0}, [5366] = {.lex_state = 0}, [5367] = {.lex_state = 0}, [5368] = {.lex_state = 61}, [5369] = {.lex_state = 0}, [5370] = {.lex_state = 106}, [5371] = {.lex_state = 204}, [5372] = {.lex_state = 0}, [5373] = {.lex_state = 0}, [5374] = {.lex_state = 121}, [5375] = {.lex_state = 0}, [5376] = {.lex_state = 0}, [5377] = {.lex_state = 61}, [5378] = {.lex_state = 0}, [5379] = {.lex_state = 121}, [5380] = {.lex_state = 106}, [5381] = {.lex_state = 61}, [5382] = {.lex_state = 0}, [5383] = {.lex_state = 204}, [5384] = {.lex_state = 0}, [5385] = {.lex_state = 106}, [5386] = {.lex_state = 121}, [5387] = {.lex_state = 0}, [5388] = {.lex_state = 0}, [5389] = {.lex_state = 0}, [5390] = {.lex_state = 0}, [5391] = {.lex_state = 121}, [5392] = {.lex_state = 61}, [5393] = {.lex_state = 0}, [5394] = {.lex_state = 0}, [5395] = {.lex_state = 204}, [5396] = {.lex_state = 0}, [5397] = {.lex_state = 0}, [5398] = {.lex_state = 204}, [5399] = {.lex_state = 121}, [5400] = {.lex_state = 0}, [5401] = {.lex_state = 0}, [5402] = {.lex_state = 0}, [5403] = {.lex_state = 204}, [5404] = {.lex_state = 204}, [5405] = {.lex_state = 204}, [5406] = {.lex_state = 0}, [5407] = {.lex_state = 106}, [5408] = {.lex_state = 0}, [5409] = {.lex_state = 106}, [5410] = {.lex_state = 204}, [5411] = {.lex_state = 106}, [5412] = {.lex_state = 0}, [5413] = {.lex_state = 121}, [5414] = {.lex_state = 0}, [5415] = {.lex_state = 121}, [5416] = {.lex_state = 0}, [5417] = {.lex_state = 0}, [5418] = {.lex_state = 106}, [5419] = {.lex_state = 61}, [5420] = {.lex_state = 106}, [5421] = {.lex_state = 0}, [5422] = {.lex_state = 204}, [5423] = {.lex_state = 204}, [5424] = {.lex_state = 204}, [5425] = {.lex_state = 0}, [5426] = {.lex_state = 121}, [5427] = {.lex_state = 0}, [5428] = {.lex_state = 111}, [5429] = {.lex_state = 0}, [5430] = {.lex_state = 0}, [5431] = {.lex_state = 0}, [5432] = {.lex_state = 0}, [5433] = {.lex_state = 0}, [5434] = {.lex_state = 204}, [5435] = {.lex_state = 204}, [5436] = {.lex_state = 61}, [5437] = {.lex_state = 0}, [5438] = {.lex_state = 0}, [5439] = {.lex_state = 0}, [5440] = {.lex_state = 0}, [5441] = {.lex_state = 0}, [5442] = {.lex_state = 0}, [5443] = {.lex_state = 204}, [5444] = {.lex_state = 204}, [5445] = {.lex_state = 0}, [5446] = {.lex_state = 0}, [5447] = {.lex_state = 204}, [5448] = {.lex_state = 204}, [5449] = {.lex_state = 0}, [5450] = {.lex_state = 204}, [5451] = {.lex_state = 204}, [5452] = {.lex_state = 0}, [5453] = {.lex_state = 0}, [5454] = {.lex_state = 204}, [5455] = {.lex_state = 0}, [5456] = {.lex_state = 204}, [5457] = {.lex_state = 121}, [5458] = {.lex_state = 61}, [5459] = {.lex_state = 121}, }; enum { ts_external_token_raw_string_literal = 0, }; static const TSSymbol ts_external_scanner_symbol_map[EXTERNAL_TOKEN_COUNT] = { [ts_external_token_raw_string_literal] = sym_raw_string_literal, }; static const bool ts_external_scanner_states[2][EXTERNAL_TOKEN_COUNT] = { [1] = { [ts_external_token_raw_string_literal] = true, }, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [0] = { [ts_builtin_sym_end] = ACTIONS(1), [sym_identifier] = ACTIONS(1), [aux_sym_preproc_include_token1] = ACTIONS(1), [aux_sym_preproc_def_token1] = ACTIONS(1), [anon_sym_LPAREN] = ACTIONS(1), [anon_sym_DOT_DOT_DOT] = ACTIONS(1), [anon_sym_COMMA] = ACTIONS(1), [anon_sym_RPAREN] = ACTIONS(1), [aux_sym_preproc_if_token1] = ACTIONS(1), [aux_sym_preproc_if_token2] = ACTIONS(1), [aux_sym_preproc_ifdef_token1] = ACTIONS(1), [aux_sym_preproc_ifdef_token2] = ACTIONS(1), [aux_sym_preproc_else_token1] = ACTIONS(1), [aux_sym_preproc_elif_token1] = ACTIONS(1), [sym_preproc_directive] = ACTIONS(1), [anon_sym_LPAREN2] = ACTIONS(1), [anon_sym_defined] = ACTIONS(1), [anon_sym_BANG] = ACTIONS(1), [anon_sym_TILDE] = ACTIONS(1), [anon_sym_DASH] = ACTIONS(1), [anon_sym_PLUS] = ACTIONS(1), [anon_sym_STAR] = ACTIONS(1), [anon_sym_SLASH] = ACTIONS(1), [anon_sym_PERCENT] = ACTIONS(1), [anon_sym_PIPE_PIPE] = ACTIONS(1), [anon_sym_AMP_AMP] = ACTIONS(1), [anon_sym_PIPE] = ACTIONS(1), [anon_sym_CARET] = ACTIONS(1), [anon_sym_AMP] = ACTIONS(1), [anon_sym_EQ_EQ] = ACTIONS(1), [anon_sym_BANG_EQ] = ACTIONS(1), [anon_sym_GT] = ACTIONS(1), [anon_sym_GT_EQ] = ACTIONS(1), [anon_sym_LT_EQ] = ACTIONS(1), [anon_sym_LT] = ACTIONS(1), [anon_sym_LT_LT] = ACTIONS(1), [anon_sym_GT_GT] = ACTIONS(1), [anon_sym_SEMI] = ACTIONS(1), [anon_sym_typedef] = ACTIONS(1), [anon_sym_extern] = ACTIONS(1), [anon_sym___attribute__] = ACTIONS(1), [anon_sym_COLON_COLON] = ACTIONS(1), [anon_sym_LBRACK_LBRACK] = ACTIONS(1), [anon_sym___declspec] = ACTIONS(1), [anon_sym___based] = ACTIONS(1), [anon_sym___cdecl] = ACTIONS(1), [anon_sym___clrcall] = ACTIONS(1), [anon_sym___stdcall] = ACTIONS(1), [anon_sym___fastcall] = ACTIONS(1), [anon_sym___thiscall] = ACTIONS(1), [anon_sym___vectorcall] = ACTIONS(1), [sym_ms_restrict_modifier] = ACTIONS(1), [sym_ms_unsigned_ptr_modifier] = ACTIONS(1), [sym_ms_signed_ptr_modifier] = ACTIONS(1), [anon_sym__unaligned] = ACTIONS(1), [anon_sym___unaligned] = ACTIONS(1), [anon_sym_LBRACE] = ACTIONS(1), [anon_sym_RBRACE] = ACTIONS(1), [anon_sym_LBRACK] = ACTIONS(1), [anon_sym_RBRACK] = ACTIONS(1), [anon_sym_EQ] = ACTIONS(1), [anon_sym_static] = ACTIONS(1), [anon_sym_register] = ACTIONS(1), [anon_sym_inline] = ACTIONS(1), [anon_sym_thread_local] = ACTIONS(1), [anon_sym_const] = ACTIONS(1), [anon_sym_volatile] = ACTIONS(1), [anon_sym_restrict] = ACTIONS(1), [anon_sym__Atomic] = ACTIONS(1), [anon_sym_mutable] = ACTIONS(1), [anon_sym_constexpr] = ACTIONS(1), [anon_sym_signed] = ACTIONS(1), [anon_sym_unsigned] = ACTIONS(1), [anon_sym_long] = ACTIONS(1), [anon_sym_short] = ACTIONS(1), [sym_primitive_type] = ACTIONS(1), [anon_sym_enum] = ACTIONS(1), [anon_sym_class] = ACTIONS(1), [anon_sym_struct] = ACTIONS(1), [anon_sym_union] = ACTIONS(1), [anon_sym_COLON] = ACTIONS(1), [anon_sym_if] = ACTIONS(1), [anon_sym_else] = ACTIONS(1), [anon_sym_switch] = ACTIONS(1), [anon_sym_case] = ACTIONS(1), [anon_sym_default] = ACTIONS(1), [anon_sym_while] = ACTIONS(1), [anon_sym_do] = ACTIONS(1), [anon_sym_for] = ACTIONS(1), [anon_sym_return] = ACTIONS(1), [anon_sym_break] = ACTIONS(1), [anon_sym_continue] = ACTIONS(1), [anon_sym_goto] = ACTIONS(1), [anon_sym_QMARK] = ACTIONS(1), [anon_sym_STAR_EQ] = ACTIONS(1), [anon_sym_SLASH_EQ] = ACTIONS(1), [anon_sym_PERCENT_EQ] = ACTIONS(1), [anon_sym_PLUS_EQ] = ACTIONS(1), [anon_sym_DASH_EQ] = ACTIONS(1), [anon_sym_LT_LT_EQ] = ACTIONS(1), [anon_sym_GT_GT_EQ] = ACTIONS(1), [anon_sym_AMP_EQ] = ACTIONS(1), [anon_sym_CARET_EQ] = ACTIONS(1), [anon_sym_PIPE_EQ] = ACTIONS(1), [anon_sym_DASH_DASH] = ACTIONS(1), [anon_sym_PLUS_PLUS] = ACTIONS(1), [anon_sym_sizeof] = ACTIONS(1), [anon_sym_DOT] = ACTIONS(1), [anon_sym_DASH_GT] = ACTIONS(1), [sym_number_literal] = ACTIONS(1), [anon_sym_L_SQUOTE] = ACTIONS(1), [anon_sym_u_SQUOTE] = ACTIONS(1), [anon_sym_U_SQUOTE] = ACTIONS(1), [anon_sym_u8_SQUOTE] = ACTIONS(1), [anon_sym_SQUOTE] = ACTIONS(1), [anon_sym_L_DQUOTE] = ACTIONS(1), [anon_sym_u_DQUOTE] = ACTIONS(1), [anon_sym_U_DQUOTE] = ACTIONS(1), [anon_sym_u8_DQUOTE] = ACTIONS(1), [anon_sym_DQUOTE] = ACTIONS(1), [sym_true] = ACTIONS(1), [sym_false] = ACTIONS(1), [sym_null] = ACTIONS(1), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1), [anon_sym_final] = ACTIONS(1), [anon_sym_override] = ACTIONS(1), [anon_sym_virtual] = ACTIONS(1), [anon_sym_explicit] = ACTIONS(1), [anon_sym_public] = ACTIONS(1), [anon_sym_private] = ACTIONS(1), [anon_sym_protected] = ACTIONS(1), [sym_auto] = ACTIONS(1), [anon_sym_typename] = ACTIONS(1), [anon_sym_template] = ACTIONS(1), [anon_sym_GT2] = ACTIONS(1), [anon_sym_operator] = ACTIONS(1), [anon_sym_delete] = ACTIONS(1), [anon_sym_friend] = ACTIONS(1), [anon_sym_noexcept] = ACTIONS(1), [anon_sym_throw] = ACTIONS(1), [anon_sym_namespace] = ACTIONS(1), [anon_sym_using] = ACTIONS(1), [anon_sym_static_assert] = ACTIONS(1), [anon_sym_co_return] = ACTIONS(1), [anon_sym_co_yield] = ACTIONS(1), [anon_sym_try] = ACTIONS(1), [anon_sym_catch] = ACTIONS(1), [anon_sym_co_await] = ACTIONS(1), [anon_sym_new] = ACTIONS(1), [anon_sym_DASH_GT_STAR] = ACTIONS(1), [anon_sym_LBRACK_RBRACK] = ACTIONS(1), [sym_this] = ACTIONS(1), [sym_nullptr] = ACTIONS(1), [sym_raw_string_literal] = ACTIONS(1), }, [1] = { [sym_translation_unit] = STATE(5401), [sym_preproc_include] = STATE(54), [sym_preproc_def] = STATE(54), [sym_preproc_function_def] = STATE(54), [sym_preproc_call] = STATE(54), [sym_preproc_if] = STATE(54), [sym_preproc_ifdef] = STATE(54), [sym_function_definition] = STATE(54), [sym_declaration] = STATE(54), [sym_type_definition] = STATE(54), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3064), [sym_linkage_specification] = STATE(54), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1497), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3784), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(54), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2411), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(54), [sym_labeled_statement] = STATE(54), [sym_expression_statement] = STATE(54), [sym_if_statement] = STATE(54), [sym_switch_statement] = STATE(54), [sym_case_statement] = STATE(54), [sym_while_statement] = STATE(54), [sym_do_statement] = STATE(54), [sym_for_statement] = STATE(54), [sym_return_statement] = STATE(54), [sym_break_statement] = STATE(54), [sym_continue_statement] = STATE(54), [sym_goto_statement] = STATE(54), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(54), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1381), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(54), [sym_template_instantiation] = STATE(54), [sym_operator_cast] = STATE(4154), [sym__constructor_specifiers] = STATE(1381), [sym_operator_cast_definition] = STATE(54), [sym_operator_cast_declaration] = STATE(54), [sym_constructor_or_destructor_definition] = STATE(54), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(54), [sym_namespace_alias_definition] = STATE(54), [sym_using_declaration] = STATE(54), [sym_alias_declaration] = STATE(54), [sym_static_assert_declaration] = STATE(54), [sym_for_range_loop] = STATE(54), [sym_co_return_statement] = STATE(54), [sym_co_yield_statement] = STATE(54), [sym_throw_statement] = STATE(54), [sym_try_statement] = STATE(54), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4154), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(54), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(139), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1381), [ts_builtin_sym_end] = ACTIONS(5), [sym_identifier] = ACTIONS(7), [aux_sym_preproc_include_token1] = ACTIONS(9), [aux_sym_preproc_def_token1] = ACTIONS(11), [aux_sym_preproc_if_token1] = ACTIONS(13), [aux_sym_preproc_ifdef_token1] = ACTIONS(15), [aux_sym_preproc_ifdef_token2] = ACTIONS(15), [sym_preproc_directive] = ACTIONS(17), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_typedef] = ACTIONS(35), [anon_sym_extern] = ACTIONS(37), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(115), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_namespace] = ACTIONS(123), [anon_sym_using] = ACTIONS(125), [anon_sym_static_assert] = ACTIONS(127), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [2] = { [sym_preproc_include] = STATE(34), [sym_preproc_def] = STATE(34), [sym_preproc_function_def] = STATE(34), [sym_preproc_call] = STATE(34), [sym_preproc_if] = STATE(34), [sym_preproc_ifdef] = STATE(34), [sym_function_definition] = STATE(34), [sym_declaration] = STATE(34), [sym_type_definition] = STATE(34), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(34), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(34), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(34), [sym_labeled_statement] = STATE(34), [sym_expression_statement] = STATE(34), [sym_if_statement] = STATE(34), [sym_switch_statement] = STATE(34), [sym_case_statement] = STATE(34), [sym_while_statement] = STATE(34), [sym_do_statement] = STATE(34), [sym_for_statement] = STATE(34), [sym_return_statement] = STATE(34), [sym_break_statement] = STATE(34), [sym_continue_statement] = STATE(34), [sym_goto_statement] = STATE(34), [sym__expression] = STATE(2688), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4449), [sym_initializer_pair] = STATE(4449), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(34), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(34), [sym_template_instantiation] = STATE(34), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(34), [sym_operator_cast_declaration] = STATE(34), [sym_constructor_or_destructor_definition] = STATE(34), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(34), [sym_namespace_alias_definition] = STATE(34), [sym_using_declaration] = STATE(34), [sym_alias_declaration] = STATE(34), [sym_static_assert_declaration] = STATE(34), [sym_for_range_loop] = STATE(34), [sym_co_return_statement] = STATE(34), [sym_co_yield_statement] = STATE(34), [sym_throw_statement] = STATE(34), [sym_try_statement] = STATE(34), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(34), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_initializer_pair_repeat1] = STATE(4093), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [anon_sym_COMMA] = ACTIONS(147), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(161), [anon_sym_RBRACE] = ACTIONS(163), [anon_sym_LBRACK] = ACTIONS(165), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [3] = { [sym_preproc_include] = STATE(29), [sym_preproc_def] = STATE(29), [sym_preproc_function_def] = STATE(29), [sym_preproc_call] = STATE(29), [sym_preproc_if] = STATE(29), [sym_preproc_ifdef] = STATE(29), [sym_function_definition] = STATE(29), [sym_declaration] = STATE(29), [sym_type_definition] = STATE(29), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(29), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(29), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(29), [sym_labeled_statement] = STATE(29), [sym_expression_statement] = STATE(29), [sym_if_statement] = STATE(29), [sym_switch_statement] = STATE(29), [sym_case_statement] = STATE(29), [sym_while_statement] = STATE(29), [sym_do_statement] = STATE(29), [sym_for_statement] = STATE(29), [sym_return_statement] = STATE(29), [sym_break_statement] = STATE(29), [sym_continue_statement] = STATE(29), [sym_goto_statement] = STATE(29), [sym__expression] = STATE(2688), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4449), [sym_initializer_pair] = STATE(4449), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(29), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(29), [sym_template_instantiation] = STATE(29), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(29), [sym_operator_cast_declaration] = STATE(29), [sym_constructor_or_destructor_definition] = STATE(29), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(29), [sym_namespace_alias_definition] = STATE(29), [sym_using_declaration] = STATE(29), [sym_alias_declaration] = STATE(29), [sym_static_assert_declaration] = STATE(29), [sym_for_range_loop] = STATE(29), [sym_co_return_statement] = STATE(29), [sym_co_yield_statement] = STATE(29), [sym_throw_statement] = STATE(29), [sym_try_statement] = STATE(29), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(29), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_initializer_pair_repeat1] = STATE(4093), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [anon_sym_COMMA] = ACTIONS(147), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(161), [anon_sym_RBRACE] = ACTIONS(207), [anon_sym_LBRACK] = ACTIONS(165), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [4] = { [sym_preproc_include] = STATE(29), [sym_preproc_def] = STATE(29), [sym_preproc_function_def] = STATE(29), [sym_preproc_call] = STATE(29), [sym_preproc_if] = STATE(29), [sym_preproc_ifdef] = STATE(29), [sym_function_definition] = STATE(29), [sym_declaration] = STATE(29), [sym_type_definition] = STATE(29), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(29), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(29), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(29), [sym_labeled_statement] = STATE(29), [sym_expression_statement] = STATE(29), [sym_if_statement] = STATE(29), [sym_switch_statement] = STATE(29), [sym_case_statement] = STATE(29), [sym_while_statement] = STATE(29), [sym_do_statement] = STATE(29), [sym_for_statement] = STATE(29), [sym_return_statement] = STATE(29), [sym_break_statement] = STATE(29), [sym_continue_statement] = STATE(29), [sym_goto_statement] = STATE(29), [sym__expression] = STATE(2688), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4449), [sym_initializer_pair] = STATE(4449), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(29), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(29), [sym_template_instantiation] = STATE(29), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(29), [sym_operator_cast_declaration] = STATE(29), [sym_constructor_or_destructor_definition] = STATE(29), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(29), [sym_namespace_alias_definition] = STATE(29), [sym_using_declaration] = STATE(29), [sym_alias_declaration] = STATE(29), [sym_static_assert_declaration] = STATE(29), [sym_for_range_loop] = STATE(29), [sym_co_return_statement] = STATE(29), [sym_co_yield_statement] = STATE(29), [sym_throw_statement] = STATE(29), [sym_try_statement] = STATE(29), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(29), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_initializer_pair_repeat1] = STATE(4093), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [anon_sym_COMMA] = ACTIONS(147), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(161), [anon_sym_RBRACE] = ACTIONS(209), [anon_sym_LBRACK] = ACTIONS(165), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [5] = { [sym_preproc_include] = STATE(47), [sym_preproc_def] = STATE(47), [sym_preproc_function_def] = STATE(47), [sym_preproc_call] = STATE(47), [sym_preproc_if] = STATE(47), [sym_preproc_ifdef] = STATE(47), [sym_function_definition] = STATE(47), [sym_declaration] = STATE(47), [sym_type_definition] = STATE(47), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(47), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(47), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(47), [sym_labeled_statement] = STATE(47), [sym_expression_statement] = STATE(47), [sym_if_statement] = STATE(47), [sym_switch_statement] = STATE(47), [sym_case_statement] = STATE(47), [sym_while_statement] = STATE(47), [sym_do_statement] = STATE(47), [sym_for_statement] = STATE(47), [sym_return_statement] = STATE(47), [sym_break_statement] = STATE(47), [sym_continue_statement] = STATE(47), [sym_goto_statement] = STATE(47), [sym__expression] = STATE(2688), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4449), [sym_initializer_pair] = STATE(4449), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(47), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(47), [sym_template_instantiation] = STATE(47), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(47), [sym_operator_cast_declaration] = STATE(47), [sym_constructor_or_destructor_definition] = STATE(47), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(47), [sym_namespace_alias_definition] = STATE(47), [sym_using_declaration] = STATE(47), [sym_alias_declaration] = STATE(47), [sym_static_assert_declaration] = STATE(47), [sym_for_range_loop] = STATE(47), [sym_co_return_statement] = STATE(47), [sym_co_yield_statement] = STATE(47), [sym_throw_statement] = STATE(47), [sym_try_statement] = STATE(47), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(47), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_initializer_pair_repeat1] = STATE(4093), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [anon_sym_COMMA] = ACTIONS(147), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(161), [anon_sym_RBRACE] = ACTIONS(211), [anon_sym_LBRACK] = ACTIONS(165), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [6] = { [sym_preproc_include] = STATE(45), [sym_preproc_def] = STATE(45), [sym_preproc_function_def] = STATE(45), [sym_preproc_call] = STATE(45), [sym_preproc_if] = STATE(45), [sym_preproc_ifdef] = STATE(45), [sym_function_definition] = STATE(45), [sym_declaration] = STATE(45), [sym_type_definition] = STATE(45), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(45), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(45), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(45), [sym_labeled_statement] = STATE(45), [sym_expression_statement] = STATE(45), [sym_if_statement] = STATE(45), [sym_switch_statement] = STATE(45), [sym_case_statement] = STATE(45), [sym_while_statement] = STATE(45), [sym_do_statement] = STATE(45), [sym_for_statement] = STATE(45), [sym_return_statement] = STATE(45), [sym_break_statement] = STATE(45), [sym_continue_statement] = STATE(45), [sym_goto_statement] = STATE(45), [sym__expression] = STATE(2688), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4449), [sym_initializer_pair] = STATE(4449), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(45), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(45), [sym_template_instantiation] = STATE(45), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(45), [sym_operator_cast_declaration] = STATE(45), [sym_constructor_or_destructor_definition] = STATE(45), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(45), [sym_namespace_alias_definition] = STATE(45), [sym_using_declaration] = STATE(45), [sym_alias_declaration] = STATE(45), [sym_static_assert_declaration] = STATE(45), [sym_for_range_loop] = STATE(45), [sym_co_return_statement] = STATE(45), [sym_co_yield_statement] = STATE(45), [sym_throw_statement] = STATE(45), [sym_try_statement] = STATE(45), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(45), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_initializer_pair_repeat1] = STATE(4093), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [anon_sym_COMMA] = ACTIONS(147), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(161), [anon_sym_RBRACE] = ACTIONS(213), [anon_sym_LBRACK] = ACTIONS(165), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [7] = { [sym_preproc_include] = STATE(62), [sym_preproc_def] = STATE(62), [sym_preproc_function_def] = STATE(62), [sym_preproc_call] = STATE(62), [sym_preproc_if] = STATE(62), [sym_preproc_ifdef] = STATE(62), [sym_function_definition] = STATE(62), [sym_declaration] = STATE(62), [sym_type_definition] = STATE(62), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(62), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(62), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(62), [sym_labeled_statement] = STATE(62), [sym_expression_statement] = STATE(62), [sym_if_statement] = STATE(62), [sym_switch_statement] = STATE(62), [sym_case_statement] = STATE(62), [sym_while_statement] = STATE(62), [sym_do_statement] = STATE(62), [sym_for_statement] = STATE(62), [sym_return_statement] = STATE(62), [sym_break_statement] = STATE(62), [sym_continue_statement] = STATE(62), [sym_goto_statement] = STATE(62), [sym__expression] = STATE(2688), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4449), [sym_initializer_pair] = STATE(4449), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(62), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(62), [sym_template_instantiation] = STATE(62), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(62), [sym_operator_cast_declaration] = STATE(62), [sym_constructor_or_destructor_definition] = STATE(62), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(62), [sym_namespace_alias_definition] = STATE(62), [sym_using_declaration] = STATE(62), [sym_alias_declaration] = STATE(62), [sym_static_assert_declaration] = STATE(62), [sym_for_range_loop] = STATE(62), [sym_co_return_statement] = STATE(62), [sym_co_yield_statement] = STATE(62), [sym_throw_statement] = STATE(62), [sym_try_statement] = STATE(62), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(62), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_initializer_pair_repeat1] = STATE(4093), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [anon_sym_COMMA] = ACTIONS(147), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(161), [anon_sym_RBRACE] = ACTIONS(215), [anon_sym_LBRACK] = ACTIONS(165), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [8] = { [sym_preproc_include] = STATE(35), [sym_preproc_def] = STATE(35), [sym_preproc_function_def] = STATE(35), [sym_preproc_call] = STATE(35), [sym_preproc_if] = STATE(35), [sym_preproc_ifdef] = STATE(35), [sym_function_definition] = STATE(35), [sym_declaration] = STATE(35), [sym_type_definition] = STATE(35), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(35), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(35), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(35), [sym_labeled_statement] = STATE(35), [sym_expression_statement] = STATE(35), [sym_if_statement] = STATE(35), [sym_switch_statement] = STATE(35), [sym_case_statement] = STATE(35), [sym_while_statement] = STATE(35), [sym_do_statement] = STATE(35), [sym_for_statement] = STATE(35), [sym_return_statement] = STATE(35), [sym_break_statement] = STATE(35), [sym_continue_statement] = STATE(35), [sym_goto_statement] = STATE(35), [sym__expression] = STATE(2688), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4449), [sym_initializer_pair] = STATE(4449), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(35), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(35), [sym_template_instantiation] = STATE(35), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(35), [sym_operator_cast_declaration] = STATE(35), [sym_constructor_or_destructor_definition] = STATE(35), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(35), [sym_namespace_alias_definition] = STATE(35), [sym_using_declaration] = STATE(35), [sym_alias_declaration] = STATE(35), [sym_static_assert_declaration] = STATE(35), [sym_for_range_loop] = STATE(35), [sym_co_return_statement] = STATE(35), [sym_co_yield_statement] = STATE(35), [sym_throw_statement] = STATE(35), [sym_try_statement] = STATE(35), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(35), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_initializer_pair_repeat1] = STATE(4093), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [anon_sym_COMMA] = ACTIONS(147), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(161), [anon_sym_RBRACE] = ACTIONS(217), [anon_sym_LBRACK] = ACTIONS(165), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [9] = { [sym_preproc_include] = STATE(49), [sym_preproc_def] = STATE(49), [sym_preproc_function_def] = STATE(49), [sym_preproc_call] = STATE(49), [sym_preproc_if] = STATE(49), [sym_preproc_ifdef] = STATE(49), [sym_function_definition] = STATE(49), [sym_declaration] = STATE(49), [sym_type_definition] = STATE(49), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(49), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(49), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(49), [sym_labeled_statement] = STATE(49), [sym_expression_statement] = STATE(49), [sym_if_statement] = STATE(49), [sym_switch_statement] = STATE(49), [sym_case_statement] = STATE(49), [sym_while_statement] = STATE(49), [sym_do_statement] = STATE(49), [sym_for_statement] = STATE(49), [sym_return_statement] = STATE(49), [sym_break_statement] = STATE(49), [sym_continue_statement] = STATE(49), [sym_goto_statement] = STATE(49), [sym__expression] = STATE(2688), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4449), [sym_initializer_pair] = STATE(4449), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(49), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(49), [sym_template_instantiation] = STATE(49), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(49), [sym_operator_cast_declaration] = STATE(49), [sym_constructor_or_destructor_definition] = STATE(49), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(49), [sym_namespace_alias_definition] = STATE(49), [sym_using_declaration] = STATE(49), [sym_alias_declaration] = STATE(49), [sym_static_assert_declaration] = STATE(49), [sym_for_range_loop] = STATE(49), [sym_co_return_statement] = STATE(49), [sym_co_yield_statement] = STATE(49), [sym_throw_statement] = STATE(49), [sym_try_statement] = STATE(49), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(49), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_initializer_pair_repeat1] = STATE(4093), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [anon_sym_COMMA] = ACTIONS(147), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(161), [anon_sym_RBRACE] = ACTIONS(219), [anon_sym_LBRACK] = ACTIONS(165), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [10] = { [sym_preproc_include] = STATE(28), [sym_preproc_def] = STATE(28), [sym_preproc_function_def] = STATE(28), [sym_preproc_call] = STATE(28), [sym_preproc_if] = STATE(28), [sym_preproc_ifdef] = STATE(28), [sym_preproc_else] = STATE(5128), [sym_preproc_elif] = STATE(5128), [sym_function_definition] = STATE(28), [sym_declaration] = STATE(28), [sym_type_definition] = STATE(28), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3083), [sym_linkage_specification] = STATE(28), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1505), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3833), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(28), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2406), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(28), [sym_labeled_statement] = STATE(28), [sym_expression_statement] = STATE(28), [sym_if_statement] = STATE(28), [sym_switch_statement] = STATE(28), [sym_case_statement] = STATE(28), [sym_while_statement] = STATE(28), [sym_do_statement] = STATE(28), [sym_for_statement] = STATE(28), [sym_return_statement] = STATE(28), [sym_break_statement] = STATE(28), [sym_continue_statement] = STATE(28), [sym_goto_statement] = STATE(28), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(28), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1380), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(28), [sym_template_instantiation] = STATE(28), [sym_operator_cast] = STATE(4362), [sym__constructor_specifiers] = STATE(1380), [sym_operator_cast_definition] = STATE(28), [sym_operator_cast_declaration] = STATE(28), [sym_constructor_or_destructor_definition] = STATE(28), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(28), [sym_namespace_alias_definition] = STATE(28), [sym_using_declaration] = STATE(28), [sym_alias_declaration] = STATE(28), [sym_static_assert_declaration] = STATE(28), [sym_for_range_loop] = STATE(28), [sym_co_return_statement] = STATE(28), [sym_co_yield_statement] = STATE(28), [sym_throw_statement] = STATE(28), [sym_try_statement] = STATE(28), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4362), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(28), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(140), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1380), [sym_identifier] = ACTIONS(221), [aux_sym_preproc_include_token1] = ACTIONS(223), [aux_sym_preproc_def_token1] = ACTIONS(225), [aux_sym_preproc_if_token1] = ACTIONS(227), [aux_sym_preproc_if_token2] = ACTIONS(229), [aux_sym_preproc_ifdef_token1] = ACTIONS(231), [aux_sym_preproc_ifdef_token2] = ACTIONS(231), [aux_sym_preproc_else_token1] = ACTIONS(233), [aux_sym_preproc_elif_token1] = ACTIONS(235), [sym_preproc_directive] = ACTIONS(237), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(243), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(269), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(273), [anon_sym_using] = ACTIONS(275), [anon_sym_static_assert] = ACTIONS(277), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [11] = { [sym_preproc_include] = STATE(19), [sym_preproc_def] = STATE(19), [sym_preproc_function_def] = STATE(19), [sym_preproc_call] = STATE(19), [sym_preproc_if] = STATE(19), [sym_preproc_ifdef] = STATE(19), [sym_preproc_else] = STATE(5294), [sym_preproc_elif] = STATE(5294), [sym_function_definition] = STATE(19), [sym_declaration] = STATE(19), [sym_type_definition] = STATE(19), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3083), [sym_linkage_specification] = STATE(19), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1505), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3833), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(19), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2406), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(19), [sym_labeled_statement] = STATE(19), [sym_expression_statement] = STATE(19), [sym_if_statement] = STATE(19), [sym_switch_statement] = STATE(19), [sym_case_statement] = STATE(19), [sym_while_statement] = STATE(19), [sym_do_statement] = STATE(19), [sym_for_statement] = STATE(19), [sym_return_statement] = STATE(19), [sym_break_statement] = STATE(19), [sym_continue_statement] = STATE(19), [sym_goto_statement] = STATE(19), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(19), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1380), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(19), [sym_template_instantiation] = STATE(19), [sym_operator_cast] = STATE(4362), [sym__constructor_specifiers] = STATE(1380), [sym_operator_cast_definition] = STATE(19), [sym_operator_cast_declaration] = STATE(19), [sym_constructor_or_destructor_definition] = STATE(19), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(19), [sym_namespace_alias_definition] = STATE(19), [sym_using_declaration] = STATE(19), [sym_alias_declaration] = STATE(19), [sym_static_assert_declaration] = STATE(19), [sym_for_range_loop] = STATE(19), [sym_co_return_statement] = STATE(19), [sym_co_yield_statement] = STATE(19), [sym_throw_statement] = STATE(19), [sym_try_statement] = STATE(19), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4362), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(19), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(140), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1380), [sym_identifier] = ACTIONS(221), [aux_sym_preproc_include_token1] = ACTIONS(223), [aux_sym_preproc_def_token1] = ACTIONS(225), [aux_sym_preproc_if_token1] = ACTIONS(227), [aux_sym_preproc_if_token2] = ACTIONS(285), [aux_sym_preproc_ifdef_token1] = ACTIONS(231), [aux_sym_preproc_ifdef_token2] = ACTIONS(231), [aux_sym_preproc_else_token1] = ACTIONS(233), [aux_sym_preproc_elif_token1] = ACTIONS(235), [sym_preproc_directive] = ACTIONS(237), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(243), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(269), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(273), [anon_sym_using] = ACTIONS(275), [anon_sym_static_assert] = ACTIONS(277), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [12] = { [sym_preproc_include] = STATE(28), [sym_preproc_def] = STATE(28), [sym_preproc_function_def] = STATE(28), [sym_preproc_call] = STATE(28), [sym_preproc_if] = STATE(28), [sym_preproc_ifdef] = STATE(28), [sym_preproc_else] = STATE(5337), [sym_preproc_elif] = STATE(5337), [sym_function_definition] = STATE(28), [sym_declaration] = STATE(28), [sym_type_definition] = STATE(28), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3083), [sym_linkage_specification] = STATE(28), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1505), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3833), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(28), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2406), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(28), [sym_labeled_statement] = STATE(28), [sym_expression_statement] = STATE(28), [sym_if_statement] = STATE(28), [sym_switch_statement] = STATE(28), [sym_case_statement] = STATE(28), [sym_while_statement] = STATE(28), [sym_do_statement] = STATE(28), [sym_for_statement] = STATE(28), [sym_return_statement] = STATE(28), [sym_break_statement] = STATE(28), [sym_continue_statement] = STATE(28), [sym_goto_statement] = STATE(28), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(28), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1380), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(28), [sym_template_instantiation] = STATE(28), [sym_operator_cast] = STATE(4362), [sym__constructor_specifiers] = STATE(1380), [sym_operator_cast_definition] = STATE(28), [sym_operator_cast_declaration] = STATE(28), [sym_constructor_or_destructor_definition] = STATE(28), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(28), [sym_namespace_alias_definition] = STATE(28), [sym_using_declaration] = STATE(28), [sym_alias_declaration] = STATE(28), [sym_static_assert_declaration] = STATE(28), [sym_for_range_loop] = STATE(28), [sym_co_return_statement] = STATE(28), [sym_co_yield_statement] = STATE(28), [sym_throw_statement] = STATE(28), [sym_try_statement] = STATE(28), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4362), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(28), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(140), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1380), [sym_identifier] = ACTIONS(221), [aux_sym_preproc_include_token1] = ACTIONS(223), [aux_sym_preproc_def_token1] = ACTIONS(225), [aux_sym_preproc_if_token1] = ACTIONS(227), [aux_sym_preproc_if_token2] = ACTIONS(287), [aux_sym_preproc_ifdef_token1] = ACTIONS(231), [aux_sym_preproc_ifdef_token2] = ACTIONS(231), [aux_sym_preproc_else_token1] = ACTIONS(233), [aux_sym_preproc_elif_token1] = ACTIONS(235), [sym_preproc_directive] = ACTIONS(237), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(243), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(269), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(273), [anon_sym_using] = ACTIONS(275), [anon_sym_static_assert] = ACTIONS(277), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [13] = { [sym_preproc_include] = STATE(18), [sym_preproc_def] = STATE(18), [sym_preproc_function_def] = STATE(18), [sym_preproc_call] = STATE(18), [sym_preproc_if] = STATE(18), [sym_preproc_ifdef] = STATE(18), [sym_preproc_else] = STATE(5313), [sym_preproc_elif] = STATE(5313), [sym_function_definition] = STATE(18), [sym_declaration] = STATE(18), [sym_type_definition] = STATE(18), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3083), [sym_linkage_specification] = STATE(18), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1505), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3833), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(18), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2406), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(18), [sym_labeled_statement] = STATE(18), [sym_expression_statement] = STATE(18), [sym_if_statement] = STATE(18), [sym_switch_statement] = STATE(18), [sym_case_statement] = STATE(18), [sym_while_statement] = STATE(18), [sym_do_statement] = STATE(18), [sym_for_statement] = STATE(18), [sym_return_statement] = STATE(18), [sym_break_statement] = STATE(18), [sym_continue_statement] = STATE(18), [sym_goto_statement] = STATE(18), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(18), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1380), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(18), [sym_template_instantiation] = STATE(18), [sym_operator_cast] = STATE(4362), [sym__constructor_specifiers] = STATE(1380), [sym_operator_cast_definition] = STATE(18), [sym_operator_cast_declaration] = STATE(18), [sym_constructor_or_destructor_definition] = STATE(18), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(18), [sym_namespace_alias_definition] = STATE(18), [sym_using_declaration] = STATE(18), [sym_alias_declaration] = STATE(18), [sym_static_assert_declaration] = STATE(18), [sym_for_range_loop] = STATE(18), [sym_co_return_statement] = STATE(18), [sym_co_yield_statement] = STATE(18), [sym_throw_statement] = STATE(18), [sym_try_statement] = STATE(18), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4362), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(18), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(140), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1380), [sym_identifier] = ACTIONS(221), [aux_sym_preproc_include_token1] = ACTIONS(223), [aux_sym_preproc_def_token1] = ACTIONS(225), [aux_sym_preproc_if_token1] = ACTIONS(227), [aux_sym_preproc_if_token2] = ACTIONS(289), [aux_sym_preproc_ifdef_token1] = ACTIONS(231), [aux_sym_preproc_ifdef_token2] = ACTIONS(231), [aux_sym_preproc_else_token1] = ACTIONS(233), [aux_sym_preproc_elif_token1] = ACTIONS(235), [sym_preproc_directive] = ACTIONS(237), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(243), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(269), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(273), [anon_sym_using] = ACTIONS(275), [anon_sym_static_assert] = ACTIONS(277), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [14] = { [sym_preproc_include] = STATE(24), [sym_preproc_def] = STATE(24), [sym_preproc_function_def] = STATE(24), [sym_preproc_call] = STATE(24), [sym_preproc_if] = STATE(24), [sym_preproc_ifdef] = STATE(24), [sym_preproc_else] = STATE(5063), [sym_preproc_elif] = STATE(5063), [sym_function_definition] = STATE(24), [sym_declaration] = STATE(24), [sym_type_definition] = STATE(24), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3083), [sym_linkage_specification] = STATE(24), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1505), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3833), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(24), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2406), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(24), [sym_labeled_statement] = STATE(24), [sym_expression_statement] = STATE(24), [sym_if_statement] = STATE(24), [sym_switch_statement] = STATE(24), [sym_case_statement] = STATE(24), [sym_while_statement] = STATE(24), [sym_do_statement] = STATE(24), [sym_for_statement] = STATE(24), [sym_return_statement] = STATE(24), [sym_break_statement] = STATE(24), [sym_continue_statement] = STATE(24), [sym_goto_statement] = STATE(24), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(24), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1380), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(24), [sym_template_instantiation] = STATE(24), [sym_operator_cast] = STATE(4362), [sym__constructor_specifiers] = STATE(1380), [sym_operator_cast_definition] = STATE(24), [sym_operator_cast_declaration] = STATE(24), [sym_constructor_or_destructor_definition] = STATE(24), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(24), [sym_namespace_alias_definition] = STATE(24), [sym_using_declaration] = STATE(24), [sym_alias_declaration] = STATE(24), [sym_static_assert_declaration] = STATE(24), [sym_for_range_loop] = STATE(24), [sym_co_return_statement] = STATE(24), [sym_co_yield_statement] = STATE(24), [sym_throw_statement] = STATE(24), [sym_try_statement] = STATE(24), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4362), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(24), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(140), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1380), [sym_identifier] = ACTIONS(221), [aux_sym_preproc_include_token1] = ACTIONS(223), [aux_sym_preproc_def_token1] = ACTIONS(225), [aux_sym_preproc_if_token1] = ACTIONS(227), [aux_sym_preproc_if_token2] = ACTIONS(291), [aux_sym_preproc_ifdef_token1] = ACTIONS(231), [aux_sym_preproc_ifdef_token2] = ACTIONS(231), [aux_sym_preproc_else_token1] = ACTIONS(233), [aux_sym_preproc_elif_token1] = ACTIONS(235), [sym_preproc_directive] = ACTIONS(237), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(243), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(269), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(273), [anon_sym_using] = ACTIONS(275), [anon_sym_static_assert] = ACTIONS(277), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [15] = { [sym_preproc_include] = STATE(28), [sym_preproc_def] = STATE(28), [sym_preproc_function_def] = STATE(28), [sym_preproc_call] = STATE(28), [sym_preproc_if] = STATE(28), [sym_preproc_ifdef] = STATE(28), [sym_preproc_else] = STATE(5317), [sym_preproc_elif] = STATE(5317), [sym_function_definition] = STATE(28), [sym_declaration] = STATE(28), [sym_type_definition] = STATE(28), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3083), [sym_linkage_specification] = STATE(28), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1505), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3833), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(28), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2406), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(28), [sym_labeled_statement] = STATE(28), [sym_expression_statement] = STATE(28), [sym_if_statement] = STATE(28), [sym_switch_statement] = STATE(28), [sym_case_statement] = STATE(28), [sym_while_statement] = STATE(28), [sym_do_statement] = STATE(28), [sym_for_statement] = STATE(28), [sym_return_statement] = STATE(28), [sym_break_statement] = STATE(28), [sym_continue_statement] = STATE(28), [sym_goto_statement] = STATE(28), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(28), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1380), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(28), [sym_template_instantiation] = STATE(28), [sym_operator_cast] = STATE(4362), [sym__constructor_specifiers] = STATE(1380), [sym_operator_cast_definition] = STATE(28), [sym_operator_cast_declaration] = STATE(28), [sym_constructor_or_destructor_definition] = STATE(28), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(28), [sym_namespace_alias_definition] = STATE(28), [sym_using_declaration] = STATE(28), [sym_alias_declaration] = STATE(28), [sym_static_assert_declaration] = STATE(28), [sym_for_range_loop] = STATE(28), [sym_co_return_statement] = STATE(28), [sym_co_yield_statement] = STATE(28), [sym_throw_statement] = STATE(28), [sym_try_statement] = STATE(28), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4362), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(28), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(140), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1380), [sym_identifier] = ACTIONS(221), [aux_sym_preproc_include_token1] = ACTIONS(223), [aux_sym_preproc_def_token1] = ACTIONS(225), [aux_sym_preproc_if_token1] = ACTIONS(227), [aux_sym_preproc_if_token2] = ACTIONS(293), [aux_sym_preproc_ifdef_token1] = ACTIONS(231), [aux_sym_preproc_ifdef_token2] = ACTIONS(231), [aux_sym_preproc_else_token1] = ACTIONS(233), [aux_sym_preproc_elif_token1] = ACTIONS(235), [sym_preproc_directive] = ACTIONS(237), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(243), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(269), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(273), [anon_sym_using] = ACTIONS(275), [anon_sym_static_assert] = ACTIONS(277), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [16] = { [sym_preproc_include] = STATE(28), [sym_preproc_def] = STATE(28), [sym_preproc_function_def] = STATE(28), [sym_preproc_call] = STATE(28), [sym_preproc_if] = STATE(28), [sym_preproc_ifdef] = STATE(28), [sym_preproc_else] = STATE(5160), [sym_preproc_elif] = STATE(5160), [sym_function_definition] = STATE(28), [sym_declaration] = STATE(28), [sym_type_definition] = STATE(28), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3083), [sym_linkage_specification] = STATE(28), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1505), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3833), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(28), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2406), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(28), [sym_labeled_statement] = STATE(28), [sym_expression_statement] = STATE(28), [sym_if_statement] = STATE(28), [sym_switch_statement] = STATE(28), [sym_case_statement] = STATE(28), [sym_while_statement] = STATE(28), [sym_do_statement] = STATE(28), [sym_for_statement] = STATE(28), [sym_return_statement] = STATE(28), [sym_break_statement] = STATE(28), [sym_continue_statement] = STATE(28), [sym_goto_statement] = STATE(28), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(28), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1380), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(28), [sym_template_instantiation] = STATE(28), [sym_operator_cast] = STATE(4362), [sym__constructor_specifiers] = STATE(1380), [sym_operator_cast_definition] = STATE(28), [sym_operator_cast_declaration] = STATE(28), [sym_constructor_or_destructor_definition] = STATE(28), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(28), [sym_namespace_alias_definition] = STATE(28), [sym_using_declaration] = STATE(28), [sym_alias_declaration] = STATE(28), [sym_static_assert_declaration] = STATE(28), [sym_for_range_loop] = STATE(28), [sym_co_return_statement] = STATE(28), [sym_co_yield_statement] = STATE(28), [sym_throw_statement] = STATE(28), [sym_try_statement] = STATE(28), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4362), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(28), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(140), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1380), [sym_identifier] = ACTIONS(221), [aux_sym_preproc_include_token1] = ACTIONS(223), [aux_sym_preproc_def_token1] = ACTIONS(225), [aux_sym_preproc_if_token1] = ACTIONS(227), [aux_sym_preproc_if_token2] = ACTIONS(295), [aux_sym_preproc_ifdef_token1] = ACTIONS(231), [aux_sym_preproc_ifdef_token2] = ACTIONS(231), [aux_sym_preproc_else_token1] = ACTIONS(233), [aux_sym_preproc_elif_token1] = ACTIONS(235), [sym_preproc_directive] = ACTIONS(237), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(243), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(269), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(273), [anon_sym_using] = ACTIONS(275), [anon_sym_static_assert] = ACTIONS(277), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [17] = { [sym_preproc_include] = STATE(28), [sym_preproc_def] = STATE(28), [sym_preproc_function_def] = STATE(28), [sym_preproc_call] = STATE(28), [sym_preproc_if] = STATE(28), [sym_preproc_ifdef] = STATE(28), [sym_preproc_else] = STATE(5101), [sym_preproc_elif] = STATE(5101), [sym_function_definition] = STATE(28), [sym_declaration] = STATE(28), [sym_type_definition] = STATE(28), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3083), [sym_linkage_specification] = STATE(28), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1505), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3833), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(28), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2406), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(28), [sym_labeled_statement] = STATE(28), [sym_expression_statement] = STATE(28), [sym_if_statement] = STATE(28), [sym_switch_statement] = STATE(28), [sym_case_statement] = STATE(28), [sym_while_statement] = STATE(28), [sym_do_statement] = STATE(28), [sym_for_statement] = STATE(28), [sym_return_statement] = STATE(28), [sym_break_statement] = STATE(28), [sym_continue_statement] = STATE(28), [sym_goto_statement] = STATE(28), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(28), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1380), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(28), [sym_template_instantiation] = STATE(28), [sym_operator_cast] = STATE(4362), [sym__constructor_specifiers] = STATE(1380), [sym_operator_cast_definition] = STATE(28), [sym_operator_cast_declaration] = STATE(28), [sym_constructor_or_destructor_definition] = STATE(28), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(28), [sym_namespace_alias_definition] = STATE(28), [sym_using_declaration] = STATE(28), [sym_alias_declaration] = STATE(28), [sym_static_assert_declaration] = STATE(28), [sym_for_range_loop] = STATE(28), [sym_co_return_statement] = STATE(28), [sym_co_yield_statement] = STATE(28), [sym_throw_statement] = STATE(28), [sym_try_statement] = STATE(28), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4362), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(28), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(140), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1380), [sym_identifier] = ACTIONS(221), [aux_sym_preproc_include_token1] = ACTIONS(223), [aux_sym_preproc_def_token1] = ACTIONS(225), [aux_sym_preproc_if_token1] = ACTIONS(227), [aux_sym_preproc_if_token2] = ACTIONS(297), [aux_sym_preproc_ifdef_token1] = ACTIONS(231), [aux_sym_preproc_ifdef_token2] = ACTIONS(231), [aux_sym_preproc_else_token1] = ACTIONS(233), [aux_sym_preproc_elif_token1] = ACTIONS(235), [sym_preproc_directive] = ACTIONS(237), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(243), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(269), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(273), [anon_sym_using] = ACTIONS(275), [anon_sym_static_assert] = ACTIONS(277), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [18] = { [sym_preproc_include] = STATE(28), [sym_preproc_def] = STATE(28), [sym_preproc_function_def] = STATE(28), [sym_preproc_call] = STATE(28), [sym_preproc_if] = STATE(28), [sym_preproc_ifdef] = STATE(28), [sym_preproc_else] = STATE(5409), [sym_preproc_elif] = STATE(5409), [sym_function_definition] = STATE(28), [sym_declaration] = STATE(28), [sym_type_definition] = STATE(28), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3083), [sym_linkage_specification] = STATE(28), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1505), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3833), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(28), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2406), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(28), [sym_labeled_statement] = STATE(28), [sym_expression_statement] = STATE(28), [sym_if_statement] = STATE(28), [sym_switch_statement] = STATE(28), [sym_case_statement] = STATE(28), [sym_while_statement] = STATE(28), [sym_do_statement] = STATE(28), [sym_for_statement] = STATE(28), [sym_return_statement] = STATE(28), [sym_break_statement] = STATE(28), [sym_continue_statement] = STATE(28), [sym_goto_statement] = STATE(28), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(28), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1380), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(28), [sym_template_instantiation] = STATE(28), [sym_operator_cast] = STATE(4362), [sym__constructor_specifiers] = STATE(1380), [sym_operator_cast_definition] = STATE(28), [sym_operator_cast_declaration] = STATE(28), [sym_constructor_or_destructor_definition] = STATE(28), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(28), [sym_namespace_alias_definition] = STATE(28), [sym_using_declaration] = STATE(28), [sym_alias_declaration] = STATE(28), [sym_static_assert_declaration] = STATE(28), [sym_for_range_loop] = STATE(28), [sym_co_return_statement] = STATE(28), [sym_co_yield_statement] = STATE(28), [sym_throw_statement] = STATE(28), [sym_try_statement] = STATE(28), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4362), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(28), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(140), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1380), [sym_identifier] = ACTIONS(221), [aux_sym_preproc_include_token1] = ACTIONS(223), [aux_sym_preproc_def_token1] = ACTIONS(225), [aux_sym_preproc_if_token1] = ACTIONS(227), [aux_sym_preproc_if_token2] = ACTIONS(299), [aux_sym_preproc_ifdef_token1] = ACTIONS(231), [aux_sym_preproc_ifdef_token2] = ACTIONS(231), [aux_sym_preproc_else_token1] = ACTIONS(233), [aux_sym_preproc_elif_token1] = ACTIONS(235), [sym_preproc_directive] = ACTIONS(237), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(243), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(269), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(273), [anon_sym_using] = ACTIONS(275), [anon_sym_static_assert] = ACTIONS(277), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [19] = { [sym_preproc_include] = STATE(28), [sym_preproc_def] = STATE(28), [sym_preproc_function_def] = STATE(28), [sym_preproc_call] = STATE(28), [sym_preproc_if] = STATE(28), [sym_preproc_ifdef] = STATE(28), [sym_preproc_else] = STATE(5411), [sym_preproc_elif] = STATE(5411), [sym_function_definition] = STATE(28), [sym_declaration] = STATE(28), [sym_type_definition] = STATE(28), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3083), [sym_linkage_specification] = STATE(28), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1505), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3833), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(28), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2406), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(28), [sym_labeled_statement] = STATE(28), [sym_expression_statement] = STATE(28), [sym_if_statement] = STATE(28), [sym_switch_statement] = STATE(28), [sym_case_statement] = STATE(28), [sym_while_statement] = STATE(28), [sym_do_statement] = STATE(28), [sym_for_statement] = STATE(28), [sym_return_statement] = STATE(28), [sym_break_statement] = STATE(28), [sym_continue_statement] = STATE(28), [sym_goto_statement] = STATE(28), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(28), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1380), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(28), [sym_template_instantiation] = STATE(28), [sym_operator_cast] = STATE(4362), [sym__constructor_specifiers] = STATE(1380), [sym_operator_cast_definition] = STATE(28), [sym_operator_cast_declaration] = STATE(28), [sym_constructor_or_destructor_definition] = STATE(28), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(28), [sym_namespace_alias_definition] = STATE(28), [sym_using_declaration] = STATE(28), [sym_alias_declaration] = STATE(28), [sym_static_assert_declaration] = STATE(28), [sym_for_range_loop] = STATE(28), [sym_co_return_statement] = STATE(28), [sym_co_yield_statement] = STATE(28), [sym_throw_statement] = STATE(28), [sym_try_statement] = STATE(28), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4362), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(28), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(140), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1380), [sym_identifier] = ACTIONS(221), [aux_sym_preproc_include_token1] = ACTIONS(223), [aux_sym_preproc_def_token1] = ACTIONS(225), [aux_sym_preproc_if_token1] = ACTIONS(227), [aux_sym_preproc_if_token2] = ACTIONS(301), [aux_sym_preproc_ifdef_token1] = ACTIONS(231), [aux_sym_preproc_ifdef_token2] = ACTIONS(231), [aux_sym_preproc_else_token1] = ACTIONS(233), [aux_sym_preproc_elif_token1] = ACTIONS(235), [sym_preproc_directive] = ACTIONS(237), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(243), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(269), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(273), [anon_sym_using] = ACTIONS(275), [anon_sym_static_assert] = ACTIONS(277), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [20] = { [sym_preproc_include] = STATE(17), [sym_preproc_def] = STATE(17), [sym_preproc_function_def] = STATE(17), [sym_preproc_call] = STATE(17), [sym_preproc_if] = STATE(17), [sym_preproc_ifdef] = STATE(17), [sym_preproc_else] = STATE(5242), [sym_preproc_elif] = STATE(5242), [sym_function_definition] = STATE(17), [sym_declaration] = STATE(17), [sym_type_definition] = STATE(17), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3083), [sym_linkage_specification] = STATE(17), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1505), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3833), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(17), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2406), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(17), [sym_labeled_statement] = STATE(17), [sym_expression_statement] = STATE(17), [sym_if_statement] = STATE(17), [sym_switch_statement] = STATE(17), [sym_case_statement] = STATE(17), [sym_while_statement] = STATE(17), [sym_do_statement] = STATE(17), [sym_for_statement] = STATE(17), [sym_return_statement] = STATE(17), [sym_break_statement] = STATE(17), [sym_continue_statement] = STATE(17), [sym_goto_statement] = STATE(17), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(17), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1380), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(17), [sym_template_instantiation] = STATE(17), [sym_operator_cast] = STATE(4362), [sym__constructor_specifiers] = STATE(1380), [sym_operator_cast_definition] = STATE(17), [sym_operator_cast_declaration] = STATE(17), [sym_constructor_or_destructor_definition] = STATE(17), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(17), [sym_namespace_alias_definition] = STATE(17), [sym_using_declaration] = STATE(17), [sym_alias_declaration] = STATE(17), [sym_static_assert_declaration] = STATE(17), [sym_for_range_loop] = STATE(17), [sym_co_return_statement] = STATE(17), [sym_co_yield_statement] = STATE(17), [sym_throw_statement] = STATE(17), [sym_try_statement] = STATE(17), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4362), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(17), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(140), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1380), [sym_identifier] = ACTIONS(221), [aux_sym_preproc_include_token1] = ACTIONS(223), [aux_sym_preproc_def_token1] = ACTIONS(225), [aux_sym_preproc_if_token1] = ACTIONS(227), [aux_sym_preproc_if_token2] = ACTIONS(303), [aux_sym_preproc_ifdef_token1] = ACTIONS(231), [aux_sym_preproc_ifdef_token2] = ACTIONS(231), [aux_sym_preproc_else_token1] = ACTIONS(233), [aux_sym_preproc_elif_token1] = ACTIONS(235), [sym_preproc_directive] = ACTIONS(237), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(243), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(269), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(273), [anon_sym_using] = ACTIONS(275), [anon_sym_static_assert] = ACTIONS(277), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [21] = { [sym_preproc_include] = STATE(12), [sym_preproc_def] = STATE(12), [sym_preproc_function_def] = STATE(12), [sym_preproc_call] = STATE(12), [sym_preproc_if] = STATE(12), [sym_preproc_ifdef] = STATE(12), [sym_preproc_else] = STATE(5418), [sym_preproc_elif] = STATE(5418), [sym_function_definition] = STATE(12), [sym_declaration] = STATE(12), [sym_type_definition] = STATE(12), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3083), [sym_linkage_specification] = STATE(12), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1505), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3833), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(12), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2406), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(12), [sym_labeled_statement] = STATE(12), [sym_expression_statement] = STATE(12), [sym_if_statement] = STATE(12), [sym_switch_statement] = STATE(12), [sym_case_statement] = STATE(12), [sym_while_statement] = STATE(12), [sym_do_statement] = STATE(12), [sym_for_statement] = STATE(12), [sym_return_statement] = STATE(12), [sym_break_statement] = STATE(12), [sym_continue_statement] = STATE(12), [sym_goto_statement] = STATE(12), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(12), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1380), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(12), [sym_template_instantiation] = STATE(12), [sym_operator_cast] = STATE(4362), [sym__constructor_specifiers] = STATE(1380), [sym_operator_cast_definition] = STATE(12), [sym_operator_cast_declaration] = STATE(12), [sym_constructor_or_destructor_definition] = STATE(12), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(12), [sym_namespace_alias_definition] = STATE(12), [sym_using_declaration] = STATE(12), [sym_alias_declaration] = STATE(12), [sym_static_assert_declaration] = STATE(12), [sym_for_range_loop] = STATE(12), [sym_co_return_statement] = STATE(12), [sym_co_yield_statement] = STATE(12), [sym_throw_statement] = STATE(12), [sym_try_statement] = STATE(12), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4362), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(12), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(140), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1380), [sym_identifier] = ACTIONS(221), [aux_sym_preproc_include_token1] = ACTIONS(223), [aux_sym_preproc_def_token1] = ACTIONS(225), [aux_sym_preproc_if_token1] = ACTIONS(227), [aux_sym_preproc_if_token2] = ACTIONS(305), [aux_sym_preproc_ifdef_token1] = ACTIONS(231), [aux_sym_preproc_ifdef_token2] = ACTIONS(231), [aux_sym_preproc_else_token1] = ACTIONS(233), [aux_sym_preproc_elif_token1] = ACTIONS(235), [sym_preproc_directive] = ACTIONS(237), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(243), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(269), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(273), [anon_sym_using] = ACTIONS(275), [anon_sym_static_assert] = ACTIONS(277), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [22] = { [sym_preproc_include] = STATE(10), [sym_preproc_def] = STATE(10), [sym_preproc_function_def] = STATE(10), [sym_preproc_call] = STATE(10), [sym_preproc_if] = STATE(10), [sym_preproc_ifdef] = STATE(10), [sym_preproc_else] = STATE(5385), [sym_preproc_elif] = STATE(5385), [sym_function_definition] = STATE(10), [sym_declaration] = STATE(10), [sym_type_definition] = STATE(10), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3083), [sym_linkage_specification] = STATE(10), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1505), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3833), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(10), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2406), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(10), [sym_labeled_statement] = STATE(10), [sym_expression_statement] = STATE(10), [sym_if_statement] = STATE(10), [sym_switch_statement] = STATE(10), [sym_case_statement] = STATE(10), [sym_while_statement] = STATE(10), [sym_do_statement] = STATE(10), [sym_for_statement] = STATE(10), [sym_return_statement] = STATE(10), [sym_break_statement] = STATE(10), [sym_continue_statement] = STATE(10), [sym_goto_statement] = STATE(10), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(10), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1380), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(10), [sym_template_instantiation] = STATE(10), [sym_operator_cast] = STATE(4362), [sym__constructor_specifiers] = STATE(1380), [sym_operator_cast_definition] = STATE(10), [sym_operator_cast_declaration] = STATE(10), [sym_constructor_or_destructor_definition] = STATE(10), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(10), [sym_namespace_alias_definition] = STATE(10), [sym_using_declaration] = STATE(10), [sym_alias_declaration] = STATE(10), [sym_static_assert_declaration] = STATE(10), [sym_for_range_loop] = STATE(10), [sym_co_return_statement] = STATE(10), [sym_co_yield_statement] = STATE(10), [sym_throw_statement] = STATE(10), [sym_try_statement] = STATE(10), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4362), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(10), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(140), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1380), [sym_identifier] = ACTIONS(221), [aux_sym_preproc_include_token1] = ACTIONS(223), [aux_sym_preproc_def_token1] = ACTIONS(225), [aux_sym_preproc_if_token1] = ACTIONS(227), [aux_sym_preproc_if_token2] = ACTIONS(307), [aux_sym_preproc_ifdef_token1] = ACTIONS(231), [aux_sym_preproc_ifdef_token2] = ACTIONS(231), [aux_sym_preproc_else_token1] = ACTIONS(233), [aux_sym_preproc_elif_token1] = ACTIONS(235), [sym_preproc_directive] = ACTIONS(237), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(243), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(269), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(273), [anon_sym_using] = ACTIONS(275), [anon_sym_static_assert] = ACTIONS(277), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [23] = { [sym_preproc_include] = STATE(15), [sym_preproc_def] = STATE(15), [sym_preproc_function_def] = STATE(15), [sym_preproc_call] = STATE(15), [sym_preproc_if] = STATE(15), [sym_preproc_ifdef] = STATE(15), [sym_preproc_else] = STATE(5211), [sym_preproc_elif] = STATE(5211), [sym_function_definition] = STATE(15), [sym_declaration] = STATE(15), [sym_type_definition] = STATE(15), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3083), [sym_linkage_specification] = STATE(15), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1505), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3833), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(15), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2406), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(15), [sym_labeled_statement] = STATE(15), [sym_expression_statement] = STATE(15), [sym_if_statement] = STATE(15), [sym_switch_statement] = STATE(15), [sym_case_statement] = STATE(15), [sym_while_statement] = STATE(15), [sym_do_statement] = STATE(15), [sym_for_statement] = STATE(15), [sym_return_statement] = STATE(15), [sym_break_statement] = STATE(15), [sym_continue_statement] = STATE(15), [sym_goto_statement] = STATE(15), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(15), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1380), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(15), [sym_template_instantiation] = STATE(15), [sym_operator_cast] = STATE(4362), [sym__constructor_specifiers] = STATE(1380), [sym_operator_cast_definition] = STATE(15), [sym_operator_cast_declaration] = STATE(15), [sym_constructor_or_destructor_definition] = STATE(15), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(15), [sym_namespace_alias_definition] = STATE(15), [sym_using_declaration] = STATE(15), [sym_alias_declaration] = STATE(15), [sym_static_assert_declaration] = STATE(15), [sym_for_range_loop] = STATE(15), [sym_co_return_statement] = STATE(15), [sym_co_yield_statement] = STATE(15), [sym_throw_statement] = STATE(15), [sym_try_statement] = STATE(15), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4362), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(15), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(140), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1380), [sym_identifier] = ACTIONS(221), [aux_sym_preproc_include_token1] = ACTIONS(223), [aux_sym_preproc_def_token1] = ACTIONS(225), [aux_sym_preproc_if_token1] = ACTIONS(227), [aux_sym_preproc_if_token2] = ACTIONS(309), [aux_sym_preproc_ifdef_token1] = ACTIONS(231), [aux_sym_preproc_ifdef_token2] = ACTIONS(231), [aux_sym_preproc_else_token1] = ACTIONS(233), [aux_sym_preproc_elif_token1] = ACTIONS(235), [sym_preproc_directive] = ACTIONS(237), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(243), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(269), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(273), [anon_sym_using] = ACTIONS(275), [anon_sym_static_assert] = ACTIONS(277), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [24] = { [sym_preproc_include] = STATE(28), [sym_preproc_def] = STATE(28), [sym_preproc_function_def] = STATE(28), [sym_preproc_call] = STATE(28), [sym_preproc_if] = STATE(28), [sym_preproc_ifdef] = STATE(28), [sym_preproc_else] = STATE(5269), [sym_preproc_elif] = STATE(5269), [sym_function_definition] = STATE(28), [sym_declaration] = STATE(28), [sym_type_definition] = STATE(28), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3083), [sym_linkage_specification] = STATE(28), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1505), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3833), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(28), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2406), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(28), [sym_labeled_statement] = STATE(28), [sym_expression_statement] = STATE(28), [sym_if_statement] = STATE(28), [sym_switch_statement] = STATE(28), [sym_case_statement] = STATE(28), [sym_while_statement] = STATE(28), [sym_do_statement] = STATE(28), [sym_for_statement] = STATE(28), [sym_return_statement] = STATE(28), [sym_break_statement] = STATE(28), [sym_continue_statement] = STATE(28), [sym_goto_statement] = STATE(28), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(28), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1380), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(28), [sym_template_instantiation] = STATE(28), [sym_operator_cast] = STATE(4362), [sym__constructor_specifiers] = STATE(1380), [sym_operator_cast_definition] = STATE(28), [sym_operator_cast_declaration] = STATE(28), [sym_constructor_or_destructor_definition] = STATE(28), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(28), [sym_namespace_alias_definition] = STATE(28), [sym_using_declaration] = STATE(28), [sym_alias_declaration] = STATE(28), [sym_static_assert_declaration] = STATE(28), [sym_for_range_loop] = STATE(28), [sym_co_return_statement] = STATE(28), [sym_co_yield_statement] = STATE(28), [sym_throw_statement] = STATE(28), [sym_try_statement] = STATE(28), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4362), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(28), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(140), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1380), [sym_identifier] = ACTIONS(221), [aux_sym_preproc_include_token1] = ACTIONS(223), [aux_sym_preproc_def_token1] = ACTIONS(225), [aux_sym_preproc_if_token1] = ACTIONS(227), [aux_sym_preproc_if_token2] = ACTIONS(311), [aux_sym_preproc_ifdef_token1] = ACTIONS(231), [aux_sym_preproc_ifdef_token2] = ACTIONS(231), [aux_sym_preproc_else_token1] = ACTIONS(233), [aux_sym_preproc_elif_token1] = ACTIONS(235), [sym_preproc_directive] = ACTIONS(237), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(243), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(269), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(273), [anon_sym_using] = ACTIONS(275), [anon_sym_static_assert] = ACTIONS(277), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [25] = { [sym_preproc_include] = STATE(27), [sym_preproc_def] = STATE(27), [sym_preproc_function_def] = STATE(27), [sym_preproc_call] = STATE(27), [sym_preproc_if] = STATE(27), [sym_preproc_ifdef] = STATE(27), [sym_preproc_else] = STATE(5370), [sym_preproc_elif] = STATE(5370), [sym_function_definition] = STATE(27), [sym_declaration] = STATE(27), [sym_type_definition] = STATE(27), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3083), [sym_linkage_specification] = STATE(27), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1505), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3833), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(27), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2406), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(27), [sym_labeled_statement] = STATE(27), [sym_expression_statement] = STATE(27), [sym_if_statement] = STATE(27), [sym_switch_statement] = STATE(27), [sym_case_statement] = STATE(27), [sym_while_statement] = STATE(27), [sym_do_statement] = STATE(27), [sym_for_statement] = STATE(27), [sym_return_statement] = STATE(27), [sym_break_statement] = STATE(27), [sym_continue_statement] = STATE(27), [sym_goto_statement] = STATE(27), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(27), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1380), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(27), [sym_template_instantiation] = STATE(27), [sym_operator_cast] = STATE(4362), [sym__constructor_specifiers] = STATE(1380), [sym_operator_cast_definition] = STATE(27), [sym_operator_cast_declaration] = STATE(27), [sym_constructor_or_destructor_definition] = STATE(27), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(27), [sym_namespace_alias_definition] = STATE(27), [sym_using_declaration] = STATE(27), [sym_alias_declaration] = STATE(27), [sym_static_assert_declaration] = STATE(27), [sym_for_range_loop] = STATE(27), [sym_co_return_statement] = STATE(27), [sym_co_yield_statement] = STATE(27), [sym_throw_statement] = STATE(27), [sym_try_statement] = STATE(27), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4362), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(27), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(140), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1380), [sym_identifier] = ACTIONS(221), [aux_sym_preproc_include_token1] = ACTIONS(223), [aux_sym_preproc_def_token1] = ACTIONS(225), [aux_sym_preproc_if_token1] = ACTIONS(227), [aux_sym_preproc_if_token2] = ACTIONS(313), [aux_sym_preproc_ifdef_token1] = ACTIONS(231), [aux_sym_preproc_ifdef_token2] = ACTIONS(231), [aux_sym_preproc_else_token1] = ACTIONS(233), [aux_sym_preproc_elif_token1] = ACTIONS(235), [sym_preproc_directive] = ACTIONS(237), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(243), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(269), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(273), [anon_sym_using] = ACTIONS(275), [anon_sym_static_assert] = ACTIONS(277), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [26] = { [sym_preproc_include] = STATE(16), [sym_preproc_def] = STATE(16), [sym_preproc_function_def] = STATE(16), [sym_preproc_call] = STATE(16), [sym_preproc_if] = STATE(16), [sym_preproc_ifdef] = STATE(16), [sym_preproc_else] = STATE(5248), [sym_preproc_elif] = STATE(5248), [sym_function_definition] = STATE(16), [sym_declaration] = STATE(16), [sym_type_definition] = STATE(16), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3083), [sym_linkage_specification] = STATE(16), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1505), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3833), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(16), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2406), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(16), [sym_labeled_statement] = STATE(16), [sym_expression_statement] = STATE(16), [sym_if_statement] = STATE(16), [sym_switch_statement] = STATE(16), [sym_case_statement] = STATE(16), [sym_while_statement] = STATE(16), [sym_do_statement] = STATE(16), [sym_for_statement] = STATE(16), [sym_return_statement] = STATE(16), [sym_break_statement] = STATE(16), [sym_continue_statement] = STATE(16), [sym_goto_statement] = STATE(16), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(16), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1380), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(16), [sym_template_instantiation] = STATE(16), [sym_operator_cast] = STATE(4362), [sym__constructor_specifiers] = STATE(1380), [sym_operator_cast_definition] = STATE(16), [sym_operator_cast_declaration] = STATE(16), [sym_constructor_or_destructor_definition] = STATE(16), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(16), [sym_namespace_alias_definition] = STATE(16), [sym_using_declaration] = STATE(16), [sym_alias_declaration] = STATE(16), [sym_static_assert_declaration] = STATE(16), [sym_for_range_loop] = STATE(16), [sym_co_return_statement] = STATE(16), [sym_co_yield_statement] = STATE(16), [sym_throw_statement] = STATE(16), [sym_try_statement] = STATE(16), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4362), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(16), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(140), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1380), [sym_identifier] = ACTIONS(221), [aux_sym_preproc_include_token1] = ACTIONS(223), [aux_sym_preproc_def_token1] = ACTIONS(225), [aux_sym_preproc_if_token1] = ACTIONS(227), [aux_sym_preproc_if_token2] = ACTIONS(315), [aux_sym_preproc_ifdef_token1] = ACTIONS(231), [aux_sym_preproc_ifdef_token2] = ACTIONS(231), [aux_sym_preproc_else_token1] = ACTIONS(233), [aux_sym_preproc_elif_token1] = ACTIONS(235), [sym_preproc_directive] = ACTIONS(237), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(243), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(269), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(273), [anon_sym_using] = ACTIONS(275), [anon_sym_static_assert] = ACTIONS(277), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [27] = { [sym_preproc_include] = STATE(28), [sym_preproc_def] = STATE(28), [sym_preproc_function_def] = STATE(28), [sym_preproc_call] = STATE(28), [sym_preproc_if] = STATE(28), [sym_preproc_ifdef] = STATE(28), [sym_preproc_else] = STATE(5247), [sym_preproc_elif] = STATE(5247), [sym_function_definition] = STATE(28), [sym_declaration] = STATE(28), [sym_type_definition] = STATE(28), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3083), [sym_linkage_specification] = STATE(28), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1505), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3833), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(28), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2406), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(28), [sym_labeled_statement] = STATE(28), [sym_expression_statement] = STATE(28), [sym_if_statement] = STATE(28), [sym_switch_statement] = STATE(28), [sym_case_statement] = STATE(28), [sym_while_statement] = STATE(28), [sym_do_statement] = STATE(28), [sym_for_statement] = STATE(28), [sym_return_statement] = STATE(28), [sym_break_statement] = STATE(28), [sym_continue_statement] = STATE(28), [sym_goto_statement] = STATE(28), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(28), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1380), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(28), [sym_template_instantiation] = STATE(28), [sym_operator_cast] = STATE(4362), [sym__constructor_specifiers] = STATE(1380), [sym_operator_cast_definition] = STATE(28), [sym_operator_cast_declaration] = STATE(28), [sym_constructor_or_destructor_definition] = STATE(28), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(28), [sym_namespace_alias_definition] = STATE(28), [sym_using_declaration] = STATE(28), [sym_alias_declaration] = STATE(28), [sym_static_assert_declaration] = STATE(28), [sym_for_range_loop] = STATE(28), [sym_co_return_statement] = STATE(28), [sym_co_yield_statement] = STATE(28), [sym_throw_statement] = STATE(28), [sym_try_statement] = STATE(28), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4362), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(28), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(140), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1380), [sym_identifier] = ACTIONS(221), [aux_sym_preproc_include_token1] = ACTIONS(223), [aux_sym_preproc_def_token1] = ACTIONS(225), [aux_sym_preproc_if_token1] = ACTIONS(227), [aux_sym_preproc_if_token2] = ACTIONS(317), [aux_sym_preproc_ifdef_token1] = ACTIONS(231), [aux_sym_preproc_ifdef_token2] = ACTIONS(231), [aux_sym_preproc_else_token1] = ACTIONS(233), [aux_sym_preproc_elif_token1] = ACTIONS(235), [sym_preproc_directive] = ACTIONS(237), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(243), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(269), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(273), [anon_sym_using] = ACTIONS(275), [anon_sym_static_assert] = ACTIONS(277), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [28] = { [sym_preproc_include] = STATE(28), [sym_preproc_def] = STATE(28), [sym_preproc_function_def] = STATE(28), [sym_preproc_call] = STATE(28), [sym_preproc_if] = STATE(28), [sym_preproc_ifdef] = STATE(28), [sym_function_definition] = STATE(28), [sym_declaration] = STATE(28), [sym_type_definition] = STATE(28), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3083), [sym_linkage_specification] = STATE(28), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1505), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3833), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(28), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2406), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(28), [sym_labeled_statement] = STATE(28), [sym_expression_statement] = STATE(28), [sym_if_statement] = STATE(28), [sym_switch_statement] = STATE(28), [sym_case_statement] = STATE(28), [sym_while_statement] = STATE(28), [sym_do_statement] = STATE(28), [sym_for_statement] = STATE(28), [sym_return_statement] = STATE(28), [sym_break_statement] = STATE(28), [sym_continue_statement] = STATE(28), [sym_goto_statement] = STATE(28), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(28), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1380), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(28), [sym_template_instantiation] = STATE(28), [sym_operator_cast] = STATE(4362), [sym__constructor_specifiers] = STATE(1380), [sym_operator_cast_definition] = STATE(28), [sym_operator_cast_declaration] = STATE(28), [sym_constructor_or_destructor_definition] = STATE(28), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(28), [sym_namespace_alias_definition] = STATE(28), [sym_using_declaration] = STATE(28), [sym_alias_declaration] = STATE(28), [sym_static_assert_declaration] = STATE(28), [sym_for_range_loop] = STATE(28), [sym_co_return_statement] = STATE(28), [sym_co_yield_statement] = STATE(28), [sym_throw_statement] = STATE(28), [sym_try_statement] = STATE(28), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4362), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(28), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(140), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1380), [sym_identifier] = ACTIONS(319), [aux_sym_preproc_include_token1] = ACTIONS(322), [aux_sym_preproc_def_token1] = ACTIONS(325), [aux_sym_preproc_if_token1] = ACTIONS(328), [aux_sym_preproc_if_token2] = ACTIONS(331), [aux_sym_preproc_ifdef_token1] = ACTIONS(333), [aux_sym_preproc_ifdef_token2] = ACTIONS(333), [aux_sym_preproc_else_token1] = ACTIONS(331), [aux_sym_preproc_elif_token1] = ACTIONS(331), [sym_preproc_directive] = ACTIONS(336), [anon_sym_LPAREN2] = ACTIONS(339), [anon_sym_BANG] = ACTIONS(342), [anon_sym_TILDE] = ACTIONS(345), [anon_sym_DASH] = ACTIONS(348), [anon_sym_PLUS] = ACTIONS(348), [anon_sym_STAR] = ACTIONS(351), [anon_sym_AMP_AMP] = ACTIONS(354), [anon_sym_AMP] = ACTIONS(357), [anon_sym_SEMI] = ACTIONS(360), [anon_sym_typedef] = ACTIONS(363), [anon_sym_extern] = ACTIONS(366), [anon_sym___attribute__] = ACTIONS(369), [anon_sym_COLON_COLON] = ACTIONS(372), [anon_sym_LBRACK_LBRACK] = ACTIONS(375), [anon_sym___declspec] = ACTIONS(378), [anon_sym___based] = ACTIONS(381), [anon_sym___cdecl] = ACTIONS(384), [anon_sym___clrcall] = ACTIONS(384), [anon_sym___stdcall] = ACTIONS(384), [anon_sym___fastcall] = ACTIONS(384), [anon_sym___thiscall] = ACTIONS(384), [anon_sym___vectorcall] = ACTIONS(384), [anon_sym_LBRACE] = ACTIONS(387), [anon_sym_LBRACK] = ACTIONS(390), [anon_sym_static] = ACTIONS(393), [anon_sym_register] = ACTIONS(393), [anon_sym_inline] = ACTIONS(393), [anon_sym_thread_local] = ACTIONS(393), [anon_sym_const] = ACTIONS(396), [anon_sym_volatile] = ACTIONS(396), [anon_sym_restrict] = ACTIONS(396), [anon_sym__Atomic] = ACTIONS(396), [anon_sym_mutable] = ACTIONS(396), [anon_sym_constexpr] = ACTIONS(396), [anon_sym_signed] = ACTIONS(399), [anon_sym_unsigned] = ACTIONS(399), [anon_sym_long] = ACTIONS(399), [anon_sym_short] = ACTIONS(399), [sym_primitive_type] = ACTIONS(402), [anon_sym_enum] = ACTIONS(405), [anon_sym_class] = ACTIONS(408), [anon_sym_struct] = ACTIONS(411), [anon_sym_union] = ACTIONS(414), [anon_sym_if] = ACTIONS(417), [anon_sym_switch] = ACTIONS(420), [anon_sym_case] = ACTIONS(423), [anon_sym_default] = ACTIONS(426), [anon_sym_while] = ACTIONS(429), [anon_sym_do] = ACTIONS(432), [anon_sym_for] = ACTIONS(435), [anon_sym_return] = ACTIONS(438), [anon_sym_break] = ACTIONS(441), [anon_sym_continue] = ACTIONS(444), [anon_sym_goto] = ACTIONS(447), [anon_sym_DASH_DASH] = ACTIONS(450), [anon_sym_PLUS_PLUS] = ACTIONS(450), [anon_sym_sizeof] = ACTIONS(453), [sym_number_literal] = ACTIONS(456), [anon_sym_L_SQUOTE] = ACTIONS(459), [anon_sym_u_SQUOTE] = ACTIONS(459), [anon_sym_U_SQUOTE] = ACTIONS(459), [anon_sym_u8_SQUOTE] = ACTIONS(459), [anon_sym_SQUOTE] = ACTIONS(459), [anon_sym_L_DQUOTE] = ACTIONS(462), [anon_sym_u_DQUOTE] = ACTIONS(462), [anon_sym_U_DQUOTE] = ACTIONS(462), [anon_sym_u8_DQUOTE] = ACTIONS(462), [anon_sym_DQUOTE] = ACTIONS(462), [sym_true] = ACTIONS(465), [sym_false] = ACTIONS(465), [sym_null] = ACTIONS(465), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(468), [anon_sym_virtual] = ACTIONS(471), [anon_sym_explicit] = ACTIONS(474), [sym_auto] = ACTIONS(477), [anon_sym_typename] = ACTIONS(480), [anon_sym_template] = ACTIONS(483), [anon_sym_operator] = ACTIONS(486), [anon_sym_delete] = ACTIONS(489), [anon_sym_throw] = ACTIONS(492), [anon_sym_namespace] = ACTIONS(495), [anon_sym_using] = ACTIONS(498), [anon_sym_static_assert] = ACTIONS(501), [anon_sym_co_return] = ACTIONS(504), [anon_sym_co_yield] = ACTIONS(507), [anon_sym_try] = ACTIONS(510), [anon_sym_co_await] = ACTIONS(513), [anon_sym_new] = ACTIONS(516), [sym_this] = ACTIONS(465), [sym_nullptr] = ACTIONS(465), [sym_raw_string_literal] = ACTIONS(519), }, [29] = { [sym_preproc_include] = STATE(39), [sym_preproc_def] = STATE(39), [sym_preproc_function_def] = STATE(39), [sym_preproc_call] = STATE(39), [sym_preproc_if] = STATE(39), [sym_preproc_ifdef] = STATE(39), [sym_function_definition] = STATE(39), [sym_declaration] = STATE(39), [sym_type_definition] = STATE(39), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(39), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(39), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(39), [sym_labeled_statement] = STATE(39), [sym_expression_statement] = STATE(39), [sym_if_statement] = STATE(39), [sym_switch_statement] = STATE(39), [sym_case_statement] = STATE(39), [sym_while_statement] = STATE(39), [sym_do_statement] = STATE(39), [sym_for_statement] = STATE(39), [sym_return_statement] = STATE(39), [sym_break_statement] = STATE(39), [sym_continue_statement] = STATE(39), [sym_goto_statement] = STATE(39), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(39), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(39), [sym_template_instantiation] = STATE(39), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(39), [sym_operator_cast_declaration] = STATE(39), [sym_constructor_or_destructor_definition] = STATE(39), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(39), [sym_namespace_alias_definition] = STATE(39), [sym_using_declaration] = STATE(39), [sym_alias_declaration] = STATE(39), [sym_static_assert_declaration] = STATE(39), [sym_for_range_loop] = STATE(39), [sym_co_return_statement] = STATE(39), [sym_co_yield_statement] = STATE(39), [sym_throw_statement] = STATE(39), [sym_try_statement] = STATE(39), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(39), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(524), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [30] = { [sym_preproc_include] = STATE(30), [sym_preproc_def] = STATE(30), [sym_preproc_function_def] = STATE(30), [sym_preproc_call] = STATE(30), [sym_preproc_if] = STATE(30), [sym_preproc_ifdef] = STATE(30), [sym_function_definition] = STATE(30), [sym_declaration] = STATE(30), [sym_type_definition] = STATE(30), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3064), [sym_linkage_specification] = STATE(30), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1497), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3784), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(30), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2411), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(30), [sym_labeled_statement] = STATE(30), [sym_expression_statement] = STATE(30), [sym_if_statement] = STATE(30), [sym_switch_statement] = STATE(30), [sym_case_statement] = STATE(30), [sym_while_statement] = STATE(30), [sym_do_statement] = STATE(30), [sym_for_statement] = STATE(30), [sym_return_statement] = STATE(30), [sym_break_statement] = STATE(30), [sym_continue_statement] = STATE(30), [sym_goto_statement] = STATE(30), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(30), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1381), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(30), [sym_template_instantiation] = STATE(30), [sym_operator_cast] = STATE(4154), [sym__constructor_specifiers] = STATE(1381), [sym_operator_cast_definition] = STATE(30), [sym_operator_cast_declaration] = STATE(30), [sym_constructor_or_destructor_definition] = STATE(30), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(30), [sym_namespace_alias_definition] = STATE(30), [sym_using_declaration] = STATE(30), [sym_alias_declaration] = STATE(30), [sym_static_assert_declaration] = STATE(30), [sym_for_range_loop] = STATE(30), [sym_co_return_statement] = STATE(30), [sym_co_yield_statement] = STATE(30), [sym_throw_statement] = STATE(30), [sym_try_statement] = STATE(30), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4154), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(30), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(139), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1381), [ts_builtin_sym_end] = ACTIONS(526), [sym_identifier] = ACTIONS(528), [aux_sym_preproc_include_token1] = ACTIONS(531), [aux_sym_preproc_def_token1] = ACTIONS(534), [aux_sym_preproc_if_token1] = ACTIONS(537), [aux_sym_preproc_ifdef_token1] = ACTIONS(540), [aux_sym_preproc_ifdef_token2] = ACTIONS(540), [sym_preproc_directive] = ACTIONS(543), [anon_sym_LPAREN2] = ACTIONS(339), [anon_sym_BANG] = ACTIONS(342), [anon_sym_TILDE] = ACTIONS(345), [anon_sym_DASH] = ACTIONS(348), [anon_sym_PLUS] = ACTIONS(348), [anon_sym_STAR] = ACTIONS(351), [anon_sym_AMP_AMP] = ACTIONS(354), [anon_sym_AMP] = ACTIONS(357), [anon_sym_SEMI] = ACTIONS(546), [anon_sym_typedef] = ACTIONS(549), [anon_sym_extern] = ACTIONS(552), [anon_sym___attribute__] = ACTIONS(369), [anon_sym_COLON_COLON] = ACTIONS(372), [anon_sym_LBRACK_LBRACK] = ACTIONS(375), [anon_sym___declspec] = ACTIONS(378), [anon_sym___based] = ACTIONS(381), [anon_sym___cdecl] = ACTIONS(384), [anon_sym___clrcall] = ACTIONS(384), [anon_sym___stdcall] = ACTIONS(384), [anon_sym___fastcall] = ACTIONS(384), [anon_sym___thiscall] = ACTIONS(384), [anon_sym___vectorcall] = ACTIONS(384), [anon_sym_LBRACE] = ACTIONS(555), [anon_sym_LBRACK] = ACTIONS(390), [anon_sym_static] = ACTIONS(393), [anon_sym_register] = ACTIONS(393), [anon_sym_inline] = ACTIONS(393), [anon_sym_thread_local] = ACTIONS(393), [anon_sym_const] = ACTIONS(396), [anon_sym_volatile] = ACTIONS(396), [anon_sym_restrict] = ACTIONS(396), [anon_sym__Atomic] = ACTIONS(396), [anon_sym_mutable] = ACTIONS(396), [anon_sym_constexpr] = ACTIONS(396), [anon_sym_signed] = ACTIONS(399), [anon_sym_unsigned] = ACTIONS(399), [anon_sym_long] = ACTIONS(399), [anon_sym_short] = ACTIONS(399), [sym_primitive_type] = ACTIONS(402), [anon_sym_enum] = ACTIONS(405), [anon_sym_class] = ACTIONS(408), [anon_sym_struct] = ACTIONS(411), [anon_sym_union] = ACTIONS(414), [anon_sym_if] = ACTIONS(558), [anon_sym_switch] = ACTIONS(561), [anon_sym_case] = ACTIONS(564), [anon_sym_default] = ACTIONS(567), [anon_sym_while] = ACTIONS(570), [anon_sym_do] = ACTIONS(573), [anon_sym_for] = ACTIONS(576), [anon_sym_return] = ACTIONS(579), [anon_sym_break] = ACTIONS(582), [anon_sym_continue] = ACTIONS(585), [anon_sym_goto] = ACTIONS(588), [anon_sym_DASH_DASH] = ACTIONS(450), [anon_sym_PLUS_PLUS] = ACTIONS(450), [anon_sym_sizeof] = ACTIONS(453), [sym_number_literal] = ACTIONS(456), [anon_sym_L_SQUOTE] = ACTIONS(459), [anon_sym_u_SQUOTE] = ACTIONS(459), [anon_sym_U_SQUOTE] = ACTIONS(459), [anon_sym_u8_SQUOTE] = ACTIONS(459), [anon_sym_SQUOTE] = ACTIONS(459), [anon_sym_L_DQUOTE] = ACTIONS(462), [anon_sym_u_DQUOTE] = ACTIONS(462), [anon_sym_U_DQUOTE] = ACTIONS(462), [anon_sym_u8_DQUOTE] = ACTIONS(462), [anon_sym_DQUOTE] = ACTIONS(462), [sym_true] = ACTIONS(465), [sym_false] = ACTIONS(465), [sym_null] = ACTIONS(465), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(468), [anon_sym_virtual] = ACTIONS(471), [anon_sym_explicit] = ACTIONS(474), [sym_auto] = ACTIONS(477), [anon_sym_typename] = ACTIONS(480), [anon_sym_template] = ACTIONS(591), [anon_sym_operator] = ACTIONS(486), [anon_sym_delete] = ACTIONS(489), [anon_sym_throw] = ACTIONS(594), [anon_sym_namespace] = ACTIONS(597), [anon_sym_using] = ACTIONS(600), [anon_sym_static_assert] = ACTIONS(603), [anon_sym_co_return] = ACTIONS(606), [anon_sym_co_yield] = ACTIONS(609), [anon_sym_try] = ACTIONS(612), [anon_sym_co_await] = ACTIONS(513), [anon_sym_new] = ACTIONS(516), [sym_this] = ACTIONS(465), [sym_nullptr] = ACTIONS(465), [sym_raw_string_literal] = ACTIONS(519), }, [31] = { [sym_preproc_include] = STATE(63), [sym_preproc_def] = STATE(63), [sym_preproc_function_def] = STATE(63), [sym_preproc_call] = STATE(63), [sym_preproc_if] = STATE(63), [sym_preproc_ifdef] = STATE(63), [sym_function_definition] = STATE(63), [sym_declaration] = STATE(63), [sym_type_definition] = STATE(63), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(63), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(63), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(63), [sym_labeled_statement] = STATE(63), [sym_expression_statement] = STATE(63), [sym_if_statement] = STATE(63), [sym_switch_statement] = STATE(63), [sym_case_statement] = STATE(63), [sym_while_statement] = STATE(63), [sym_do_statement] = STATE(63), [sym_for_statement] = STATE(63), [sym_return_statement] = STATE(63), [sym_break_statement] = STATE(63), [sym_continue_statement] = STATE(63), [sym_goto_statement] = STATE(63), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(63), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(63), [sym_template_instantiation] = STATE(63), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(63), [sym_operator_cast_declaration] = STATE(63), [sym_constructor_or_destructor_definition] = STATE(63), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(63), [sym_namespace_alias_definition] = STATE(63), [sym_using_declaration] = STATE(63), [sym_alias_declaration] = STATE(63), [sym_static_assert_declaration] = STATE(63), [sym_for_range_loop] = STATE(63), [sym_co_return_statement] = STATE(63), [sym_co_yield_statement] = STATE(63), [sym_throw_statement] = STATE(63), [sym_try_statement] = STATE(63), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(63), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(615), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [32] = { [sym_preproc_include] = STATE(34), [sym_preproc_def] = STATE(34), [sym_preproc_function_def] = STATE(34), [sym_preproc_call] = STATE(34), [sym_preproc_if] = STATE(34), [sym_preproc_ifdef] = STATE(34), [sym_function_definition] = STATE(34), [sym_declaration] = STATE(34), [sym_type_definition] = STATE(34), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(34), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(34), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(34), [sym_labeled_statement] = STATE(34), [sym_expression_statement] = STATE(34), [sym_if_statement] = STATE(34), [sym_switch_statement] = STATE(34), [sym_case_statement] = STATE(34), [sym_while_statement] = STATE(34), [sym_do_statement] = STATE(34), [sym_for_statement] = STATE(34), [sym_return_statement] = STATE(34), [sym_break_statement] = STATE(34), [sym_continue_statement] = STATE(34), [sym_goto_statement] = STATE(34), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(34), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(34), [sym_template_instantiation] = STATE(34), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(34), [sym_operator_cast_declaration] = STATE(34), [sym_constructor_or_destructor_definition] = STATE(34), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(34), [sym_namespace_alias_definition] = STATE(34), [sym_using_declaration] = STATE(34), [sym_alias_declaration] = STATE(34), [sym_static_assert_declaration] = STATE(34), [sym_for_range_loop] = STATE(34), [sym_co_return_statement] = STATE(34), [sym_co_yield_statement] = STATE(34), [sym_throw_statement] = STATE(34), [sym_try_statement] = STATE(34), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(34), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(617), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [33] = { [sym_preproc_include] = STATE(59), [sym_preproc_def] = STATE(59), [sym_preproc_function_def] = STATE(59), [sym_preproc_call] = STATE(59), [sym_preproc_if] = STATE(59), [sym_preproc_ifdef] = STATE(59), [sym_function_definition] = STATE(59), [sym_declaration] = STATE(59), [sym_type_definition] = STATE(59), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(59), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(59), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(59), [sym_labeled_statement] = STATE(59), [sym_expression_statement] = STATE(59), [sym_if_statement] = STATE(59), [sym_switch_statement] = STATE(59), [sym_case_statement] = STATE(59), [sym_while_statement] = STATE(59), [sym_do_statement] = STATE(59), [sym_for_statement] = STATE(59), [sym_return_statement] = STATE(59), [sym_break_statement] = STATE(59), [sym_continue_statement] = STATE(59), [sym_goto_statement] = STATE(59), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(59), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(59), [sym_template_instantiation] = STATE(59), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(59), [sym_operator_cast_declaration] = STATE(59), [sym_constructor_or_destructor_definition] = STATE(59), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(59), [sym_namespace_alias_definition] = STATE(59), [sym_using_declaration] = STATE(59), [sym_alias_declaration] = STATE(59), [sym_static_assert_declaration] = STATE(59), [sym_for_range_loop] = STATE(59), [sym_co_return_statement] = STATE(59), [sym_co_yield_statement] = STATE(59), [sym_throw_statement] = STATE(59), [sym_try_statement] = STATE(59), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(59), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(619), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [34] = { [sym_preproc_include] = STATE(39), [sym_preproc_def] = STATE(39), [sym_preproc_function_def] = STATE(39), [sym_preproc_call] = STATE(39), [sym_preproc_if] = STATE(39), [sym_preproc_ifdef] = STATE(39), [sym_function_definition] = STATE(39), [sym_declaration] = STATE(39), [sym_type_definition] = STATE(39), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(39), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(39), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(39), [sym_labeled_statement] = STATE(39), [sym_expression_statement] = STATE(39), [sym_if_statement] = STATE(39), [sym_switch_statement] = STATE(39), [sym_case_statement] = STATE(39), [sym_while_statement] = STATE(39), [sym_do_statement] = STATE(39), [sym_for_statement] = STATE(39), [sym_return_statement] = STATE(39), [sym_break_statement] = STATE(39), [sym_continue_statement] = STATE(39), [sym_goto_statement] = STATE(39), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(39), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(39), [sym_template_instantiation] = STATE(39), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(39), [sym_operator_cast_declaration] = STATE(39), [sym_constructor_or_destructor_definition] = STATE(39), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(39), [sym_namespace_alias_definition] = STATE(39), [sym_using_declaration] = STATE(39), [sym_alias_declaration] = STATE(39), [sym_static_assert_declaration] = STATE(39), [sym_for_range_loop] = STATE(39), [sym_co_return_statement] = STATE(39), [sym_co_yield_statement] = STATE(39), [sym_throw_statement] = STATE(39), [sym_try_statement] = STATE(39), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(39), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(621), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [35] = { [sym_preproc_include] = STATE(39), [sym_preproc_def] = STATE(39), [sym_preproc_function_def] = STATE(39), [sym_preproc_call] = STATE(39), [sym_preproc_if] = STATE(39), [sym_preproc_ifdef] = STATE(39), [sym_function_definition] = STATE(39), [sym_declaration] = STATE(39), [sym_type_definition] = STATE(39), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(39), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(39), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(39), [sym_labeled_statement] = STATE(39), [sym_expression_statement] = STATE(39), [sym_if_statement] = STATE(39), [sym_switch_statement] = STATE(39), [sym_case_statement] = STATE(39), [sym_while_statement] = STATE(39), [sym_do_statement] = STATE(39), [sym_for_statement] = STATE(39), [sym_return_statement] = STATE(39), [sym_break_statement] = STATE(39), [sym_continue_statement] = STATE(39), [sym_goto_statement] = STATE(39), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(39), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(39), [sym_template_instantiation] = STATE(39), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(39), [sym_operator_cast_declaration] = STATE(39), [sym_constructor_or_destructor_definition] = STATE(39), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(39), [sym_namespace_alias_definition] = STATE(39), [sym_using_declaration] = STATE(39), [sym_alias_declaration] = STATE(39), [sym_static_assert_declaration] = STATE(39), [sym_for_range_loop] = STATE(39), [sym_co_return_statement] = STATE(39), [sym_co_yield_statement] = STATE(39), [sym_throw_statement] = STATE(39), [sym_try_statement] = STATE(39), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(39), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(623), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [36] = { [sym_preproc_include] = STATE(60), [sym_preproc_def] = STATE(60), [sym_preproc_function_def] = STATE(60), [sym_preproc_call] = STATE(60), [sym_preproc_if] = STATE(60), [sym_preproc_ifdef] = STATE(60), [sym_function_definition] = STATE(60), [sym_declaration] = STATE(60), [sym_type_definition] = STATE(60), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(60), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(60), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(60), [sym_labeled_statement] = STATE(60), [sym_expression_statement] = STATE(60), [sym_if_statement] = STATE(60), [sym_switch_statement] = STATE(60), [sym_case_statement] = STATE(60), [sym_while_statement] = STATE(60), [sym_do_statement] = STATE(60), [sym_for_statement] = STATE(60), [sym_return_statement] = STATE(60), [sym_break_statement] = STATE(60), [sym_continue_statement] = STATE(60), [sym_goto_statement] = STATE(60), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(60), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(60), [sym_template_instantiation] = STATE(60), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(60), [sym_operator_cast_declaration] = STATE(60), [sym_constructor_or_destructor_definition] = STATE(60), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(60), [sym_namespace_alias_definition] = STATE(60), [sym_using_declaration] = STATE(60), [sym_alias_declaration] = STATE(60), [sym_static_assert_declaration] = STATE(60), [sym_for_range_loop] = STATE(60), [sym_co_return_statement] = STATE(60), [sym_co_yield_statement] = STATE(60), [sym_throw_statement] = STATE(60), [sym_try_statement] = STATE(60), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(60), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(625), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [37] = { [sym_preproc_include] = STATE(38), [sym_preproc_def] = STATE(38), [sym_preproc_function_def] = STATE(38), [sym_preproc_call] = STATE(38), [sym_preproc_if] = STATE(38), [sym_preproc_ifdef] = STATE(38), [sym_function_definition] = STATE(38), [sym_declaration] = STATE(38), [sym_type_definition] = STATE(38), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(38), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(38), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(38), [sym_labeled_statement] = STATE(38), [sym_expression_statement] = STATE(38), [sym_if_statement] = STATE(38), [sym_switch_statement] = STATE(38), [sym_case_statement] = STATE(38), [sym_while_statement] = STATE(38), [sym_do_statement] = STATE(38), [sym_for_statement] = STATE(38), [sym_return_statement] = STATE(38), [sym_break_statement] = STATE(38), [sym_continue_statement] = STATE(38), [sym_goto_statement] = STATE(38), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(38), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(38), [sym_template_instantiation] = STATE(38), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(38), [sym_operator_cast_declaration] = STATE(38), [sym_constructor_or_destructor_definition] = STATE(38), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(38), [sym_namespace_alias_definition] = STATE(38), [sym_using_declaration] = STATE(38), [sym_alias_declaration] = STATE(38), [sym_static_assert_declaration] = STATE(38), [sym_for_range_loop] = STATE(38), [sym_co_return_statement] = STATE(38), [sym_co_yield_statement] = STATE(38), [sym_throw_statement] = STATE(38), [sym_try_statement] = STATE(38), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(38), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(627), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [38] = { [sym_preproc_include] = STATE(39), [sym_preproc_def] = STATE(39), [sym_preproc_function_def] = STATE(39), [sym_preproc_call] = STATE(39), [sym_preproc_if] = STATE(39), [sym_preproc_ifdef] = STATE(39), [sym_function_definition] = STATE(39), [sym_declaration] = STATE(39), [sym_type_definition] = STATE(39), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(39), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(39), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(39), [sym_labeled_statement] = STATE(39), [sym_expression_statement] = STATE(39), [sym_if_statement] = STATE(39), [sym_switch_statement] = STATE(39), [sym_case_statement] = STATE(39), [sym_while_statement] = STATE(39), [sym_do_statement] = STATE(39), [sym_for_statement] = STATE(39), [sym_return_statement] = STATE(39), [sym_break_statement] = STATE(39), [sym_continue_statement] = STATE(39), [sym_goto_statement] = STATE(39), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(39), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(39), [sym_template_instantiation] = STATE(39), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(39), [sym_operator_cast_declaration] = STATE(39), [sym_constructor_or_destructor_definition] = STATE(39), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(39), [sym_namespace_alias_definition] = STATE(39), [sym_using_declaration] = STATE(39), [sym_alias_declaration] = STATE(39), [sym_static_assert_declaration] = STATE(39), [sym_for_range_loop] = STATE(39), [sym_co_return_statement] = STATE(39), [sym_co_yield_statement] = STATE(39), [sym_throw_statement] = STATE(39), [sym_try_statement] = STATE(39), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(39), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(629), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [39] = { [sym_preproc_include] = STATE(39), [sym_preproc_def] = STATE(39), [sym_preproc_function_def] = STATE(39), [sym_preproc_call] = STATE(39), [sym_preproc_if] = STATE(39), [sym_preproc_ifdef] = STATE(39), [sym_function_definition] = STATE(39), [sym_declaration] = STATE(39), [sym_type_definition] = STATE(39), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(39), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(39), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(39), [sym_labeled_statement] = STATE(39), [sym_expression_statement] = STATE(39), [sym_if_statement] = STATE(39), [sym_switch_statement] = STATE(39), [sym_case_statement] = STATE(39), [sym_while_statement] = STATE(39), [sym_do_statement] = STATE(39), [sym_for_statement] = STATE(39), [sym_return_statement] = STATE(39), [sym_break_statement] = STATE(39), [sym_continue_statement] = STATE(39), [sym_goto_statement] = STATE(39), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(39), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(39), [sym_template_instantiation] = STATE(39), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(39), [sym_operator_cast_declaration] = STATE(39), [sym_constructor_or_destructor_definition] = STATE(39), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(39), [sym_namespace_alias_definition] = STATE(39), [sym_using_declaration] = STATE(39), [sym_alias_declaration] = STATE(39), [sym_static_assert_declaration] = STATE(39), [sym_for_range_loop] = STATE(39), [sym_co_return_statement] = STATE(39), [sym_co_yield_statement] = STATE(39), [sym_throw_statement] = STATE(39), [sym_try_statement] = STATE(39), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(39), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(631), [aux_sym_preproc_include_token1] = ACTIONS(634), [aux_sym_preproc_def_token1] = ACTIONS(637), [aux_sym_preproc_if_token1] = ACTIONS(640), [aux_sym_preproc_ifdef_token1] = ACTIONS(643), [aux_sym_preproc_ifdef_token2] = ACTIONS(643), [sym_preproc_directive] = ACTIONS(646), [anon_sym_LPAREN2] = ACTIONS(339), [anon_sym_BANG] = ACTIONS(342), [anon_sym_TILDE] = ACTIONS(345), [anon_sym_DASH] = ACTIONS(348), [anon_sym_PLUS] = ACTIONS(348), [anon_sym_STAR] = ACTIONS(351), [anon_sym_AMP_AMP] = ACTIONS(354), [anon_sym_AMP] = ACTIONS(357), [anon_sym_SEMI] = ACTIONS(649), [anon_sym_typedef] = ACTIONS(652), [anon_sym_extern] = ACTIONS(655), [anon_sym___attribute__] = ACTIONS(369), [anon_sym_COLON_COLON] = ACTIONS(372), [anon_sym_LBRACK_LBRACK] = ACTIONS(375), [anon_sym___declspec] = ACTIONS(378), [anon_sym___based] = ACTIONS(381), [anon_sym___cdecl] = ACTIONS(384), [anon_sym___clrcall] = ACTIONS(384), [anon_sym___stdcall] = ACTIONS(384), [anon_sym___fastcall] = ACTIONS(384), [anon_sym___thiscall] = ACTIONS(384), [anon_sym___vectorcall] = ACTIONS(384), [anon_sym_LBRACE] = ACTIONS(658), [anon_sym_RBRACE] = ACTIONS(526), [anon_sym_LBRACK] = ACTIONS(390), [anon_sym_static] = ACTIONS(393), [anon_sym_register] = ACTIONS(393), [anon_sym_inline] = ACTIONS(393), [anon_sym_thread_local] = ACTIONS(393), [anon_sym_const] = ACTIONS(396), [anon_sym_volatile] = ACTIONS(396), [anon_sym_restrict] = ACTIONS(396), [anon_sym__Atomic] = ACTIONS(396), [anon_sym_mutable] = ACTIONS(396), [anon_sym_constexpr] = ACTIONS(396), [anon_sym_signed] = ACTIONS(399), [anon_sym_unsigned] = ACTIONS(399), [anon_sym_long] = ACTIONS(399), [anon_sym_short] = ACTIONS(399), [sym_primitive_type] = ACTIONS(402), [anon_sym_enum] = ACTIONS(405), [anon_sym_class] = ACTIONS(408), [anon_sym_struct] = ACTIONS(411), [anon_sym_union] = ACTIONS(414), [anon_sym_if] = ACTIONS(661), [anon_sym_switch] = ACTIONS(664), [anon_sym_case] = ACTIONS(667), [anon_sym_default] = ACTIONS(670), [anon_sym_while] = ACTIONS(673), [anon_sym_do] = ACTIONS(676), [anon_sym_for] = ACTIONS(679), [anon_sym_return] = ACTIONS(682), [anon_sym_break] = ACTIONS(685), [anon_sym_continue] = ACTIONS(688), [anon_sym_goto] = ACTIONS(691), [anon_sym_DASH_DASH] = ACTIONS(450), [anon_sym_PLUS_PLUS] = ACTIONS(450), [anon_sym_sizeof] = ACTIONS(453), [sym_number_literal] = ACTIONS(456), [anon_sym_L_SQUOTE] = ACTIONS(459), [anon_sym_u_SQUOTE] = ACTIONS(459), [anon_sym_U_SQUOTE] = ACTIONS(459), [anon_sym_u8_SQUOTE] = ACTIONS(459), [anon_sym_SQUOTE] = ACTIONS(459), [anon_sym_L_DQUOTE] = ACTIONS(462), [anon_sym_u_DQUOTE] = ACTIONS(462), [anon_sym_U_DQUOTE] = ACTIONS(462), [anon_sym_u8_DQUOTE] = ACTIONS(462), [anon_sym_DQUOTE] = ACTIONS(462), [sym_true] = ACTIONS(465), [sym_false] = ACTIONS(465), [sym_null] = ACTIONS(465), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(468), [anon_sym_virtual] = ACTIONS(471), [anon_sym_explicit] = ACTIONS(474), [sym_auto] = ACTIONS(477), [anon_sym_typename] = ACTIONS(480), [anon_sym_template] = ACTIONS(694), [anon_sym_operator] = ACTIONS(486), [anon_sym_delete] = ACTIONS(489), [anon_sym_throw] = ACTIONS(697), [anon_sym_namespace] = ACTIONS(700), [anon_sym_using] = ACTIONS(703), [anon_sym_static_assert] = ACTIONS(706), [anon_sym_co_return] = ACTIONS(709), [anon_sym_co_yield] = ACTIONS(712), [anon_sym_try] = ACTIONS(715), [anon_sym_co_await] = ACTIONS(513), [anon_sym_new] = ACTIONS(516), [sym_this] = ACTIONS(465), [sym_nullptr] = ACTIONS(465), [sym_raw_string_literal] = ACTIONS(519), }, [40] = { [sym_preproc_include] = STATE(41), [sym_preproc_def] = STATE(41), [sym_preproc_function_def] = STATE(41), [sym_preproc_call] = STATE(41), [sym_preproc_if] = STATE(41), [sym_preproc_ifdef] = STATE(41), [sym_function_definition] = STATE(41), [sym_declaration] = STATE(41), [sym_type_definition] = STATE(41), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(41), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(41), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(41), [sym_labeled_statement] = STATE(41), [sym_expression_statement] = STATE(41), [sym_if_statement] = STATE(41), [sym_switch_statement] = STATE(41), [sym_case_statement] = STATE(41), [sym_while_statement] = STATE(41), [sym_do_statement] = STATE(41), [sym_for_statement] = STATE(41), [sym_return_statement] = STATE(41), [sym_break_statement] = STATE(41), [sym_continue_statement] = STATE(41), [sym_goto_statement] = STATE(41), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(41), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(41), [sym_template_instantiation] = STATE(41), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(41), [sym_operator_cast_declaration] = STATE(41), [sym_constructor_or_destructor_definition] = STATE(41), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(41), [sym_namespace_alias_definition] = STATE(41), [sym_using_declaration] = STATE(41), [sym_alias_declaration] = STATE(41), [sym_static_assert_declaration] = STATE(41), [sym_for_range_loop] = STATE(41), [sym_co_return_statement] = STATE(41), [sym_co_yield_statement] = STATE(41), [sym_throw_statement] = STATE(41), [sym_try_statement] = STATE(41), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(41), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(718), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [41] = { [sym_preproc_include] = STATE(39), [sym_preproc_def] = STATE(39), [sym_preproc_function_def] = STATE(39), [sym_preproc_call] = STATE(39), [sym_preproc_if] = STATE(39), [sym_preproc_ifdef] = STATE(39), [sym_function_definition] = STATE(39), [sym_declaration] = STATE(39), [sym_type_definition] = STATE(39), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(39), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(39), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(39), [sym_labeled_statement] = STATE(39), [sym_expression_statement] = STATE(39), [sym_if_statement] = STATE(39), [sym_switch_statement] = STATE(39), [sym_case_statement] = STATE(39), [sym_while_statement] = STATE(39), [sym_do_statement] = STATE(39), [sym_for_statement] = STATE(39), [sym_return_statement] = STATE(39), [sym_break_statement] = STATE(39), [sym_continue_statement] = STATE(39), [sym_goto_statement] = STATE(39), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(39), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(39), [sym_template_instantiation] = STATE(39), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(39), [sym_operator_cast_declaration] = STATE(39), [sym_constructor_or_destructor_definition] = STATE(39), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(39), [sym_namespace_alias_definition] = STATE(39), [sym_using_declaration] = STATE(39), [sym_alias_declaration] = STATE(39), [sym_static_assert_declaration] = STATE(39), [sym_for_range_loop] = STATE(39), [sym_co_return_statement] = STATE(39), [sym_co_yield_statement] = STATE(39), [sym_throw_statement] = STATE(39), [sym_try_statement] = STATE(39), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(39), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(720), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [42] = { [sym_preproc_include] = STATE(43), [sym_preproc_def] = STATE(43), [sym_preproc_function_def] = STATE(43), [sym_preproc_call] = STATE(43), [sym_preproc_if] = STATE(43), [sym_preproc_ifdef] = STATE(43), [sym_function_definition] = STATE(43), [sym_declaration] = STATE(43), [sym_type_definition] = STATE(43), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(43), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(43), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(43), [sym_labeled_statement] = STATE(43), [sym_expression_statement] = STATE(43), [sym_if_statement] = STATE(43), [sym_switch_statement] = STATE(43), [sym_case_statement] = STATE(43), [sym_while_statement] = STATE(43), [sym_do_statement] = STATE(43), [sym_for_statement] = STATE(43), [sym_return_statement] = STATE(43), [sym_break_statement] = STATE(43), [sym_continue_statement] = STATE(43), [sym_goto_statement] = STATE(43), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(43), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(43), [sym_template_instantiation] = STATE(43), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(43), [sym_operator_cast_declaration] = STATE(43), [sym_constructor_or_destructor_definition] = STATE(43), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(43), [sym_namespace_alias_definition] = STATE(43), [sym_using_declaration] = STATE(43), [sym_alias_declaration] = STATE(43), [sym_static_assert_declaration] = STATE(43), [sym_for_range_loop] = STATE(43), [sym_co_return_statement] = STATE(43), [sym_co_yield_statement] = STATE(43), [sym_throw_statement] = STATE(43), [sym_try_statement] = STATE(43), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(43), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(722), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [43] = { [sym_preproc_include] = STATE(39), [sym_preproc_def] = STATE(39), [sym_preproc_function_def] = STATE(39), [sym_preproc_call] = STATE(39), [sym_preproc_if] = STATE(39), [sym_preproc_ifdef] = STATE(39), [sym_function_definition] = STATE(39), [sym_declaration] = STATE(39), [sym_type_definition] = STATE(39), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(39), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(39), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(39), [sym_labeled_statement] = STATE(39), [sym_expression_statement] = STATE(39), [sym_if_statement] = STATE(39), [sym_switch_statement] = STATE(39), [sym_case_statement] = STATE(39), [sym_while_statement] = STATE(39), [sym_do_statement] = STATE(39), [sym_for_statement] = STATE(39), [sym_return_statement] = STATE(39), [sym_break_statement] = STATE(39), [sym_continue_statement] = STATE(39), [sym_goto_statement] = STATE(39), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(39), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(39), [sym_template_instantiation] = STATE(39), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(39), [sym_operator_cast_declaration] = STATE(39), [sym_constructor_or_destructor_definition] = STATE(39), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(39), [sym_namespace_alias_definition] = STATE(39), [sym_using_declaration] = STATE(39), [sym_alias_declaration] = STATE(39), [sym_static_assert_declaration] = STATE(39), [sym_for_range_loop] = STATE(39), [sym_co_return_statement] = STATE(39), [sym_co_yield_statement] = STATE(39), [sym_throw_statement] = STATE(39), [sym_try_statement] = STATE(39), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(39), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(724), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [44] = { [sym_preproc_include] = STATE(45), [sym_preproc_def] = STATE(45), [sym_preproc_function_def] = STATE(45), [sym_preproc_call] = STATE(45), [sym_preproc_if] = STATE(45), [sym_preproc_ifdef] = STATE(45), [sym_function_definition] = STATE(45), [sym_declaration] = STATE(45), [sym_type_definition] = STATE(45), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(45), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(45), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(45), [sym_labeled_statement] = STATE(45), [sym_expression_statement] = STATE(45), [sym_if_statement] = STATE(45), [sym_switch_statement] = STATE(45), [sym_case_statement] = STATE(45), [sym_while_statement] = STATE(45), [sym_do_statement] = STATE(45), [sym_for_statement] = STATE(45), [sym_return_statement] = STATE(45), [sym_break_statement] = STATE(45), [sym_continue_statement] = STATE(45), [sym_goto_statement] = STATE(45), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(45), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(45), [sym_template_instantiation] = STATE(45), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(45), [sym_operator_cast_declaration] = STATE(45), [sym_constructor_or_destructor_definition] = STATE(45), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(45), [sym_namespace_alias_definition] = STATE(45), [sym_using_declaration] = STATE(45), [sym_alias_declaration] = STATE(45), [sym_static_assert_declaration] = STATE(45), [sym_for_range_loop] = STATE(45), [sym_co_return_statement] = STATE(45), [sym_co_yield_statement] = STATE(45), [sym_throw_statement] = STATE(45), [sym_try_statement] = STATE(45), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(45), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(726), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [45] = { [sym_preproc_include] = STATE(39), [sym_preproc_def] = STATE(39), [sym_preproc_function_def] = STATE(39), [sym_preproc_call] = STATE(39), [sym_preproc_if] = STATE(39), [sym_preproc_ifdef] = STATE(39), [sym_function_definition] = STATE(39), [sym_declaration] = STATE(39), [sym_type_definition] = STATE(39), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(39), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(39), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(39), [sym_labeled_statement] = STATE(39), [sym_expression_statement] = STATE(39), [sym_if_statement] = STATE(39), [sym_switch_statement] = STATE(39), [sym_case_statement] = STATE(39), [sym_while_statement] = STATE(39), [sym_do_statement] = STATE(39), [sym_for_statement] = STATE(39), [sym_return_statement] = STATE(39), [sym_break_statement] = STATE(39), [sym_continue_statement] = STATE(39), [sym_goto_statement] = STATE(39), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(39), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(39), [sym_template_instantiation] = STATE(39), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(39), [sym_operator_cast_declaration] = STATE(39), [sym_constructor_or_destructor_definition] = STATE(39), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(39), [sym_namespace_alias_definition] = STATE(39), [sym_using_declaration] = STATE(39), [sym_alias_declaration] = STATE(39), [sym_static_assert_declaration] = STATE(39), [sym_for_range_loop] = STATE(39), [sym_co_return_statement] = STATE(39), [sym_co_yield_statement] = STATE(39), [sym_throw_statement] = STATE(39), [sym_try_statement] = STATE(39), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(39), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(728), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [46] = { [sym_preproc_include] = STATE(47), [sym_preproc_def] = STATE(47), [sym_preproc_function_def] = STATE(47), [sym_preproc_call] = STATE(47), [sym_preproc_if] = STATE(47), [sym_preproc_ifdef] = STATE(47), [sym_function_definition] = STATE(47), [sym_declaration] = STATE(47), [sym_type_definition] = STATE(47), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(47), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(47), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(47), [sym_labeled_statement] = STATE(47), [sym_expression_statement] = STATE(47), [sym_if_statement] = STATE(47), [sym_switch_statement] = STATE(47), [sym_case_statement] = STATE(47), [sym_while_statement] = STATE(47), [sym_do_statement] = STATE(47), [sym_for_statement] = STATE(47), [sym_return_statement] = STATE(47), [sym_break_statement] = STATE(47), [sym_continue_statement] = STATE(47), [sym_goto_statement] = STATE(47), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(47), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(47), [sym_template_instantiation] = STATE(47), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(47), [sym_operator_cast_declaration] = STATE(47), [sym_constructor_or_destructor_definition] = STATE(47), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(47), [sym_namespace_alias_definition] = STATE(47), [sym_using_declaration] = STATE(47), [sym_alias_declaration] = STATE(47), [sym_static_assert_declaration] = STATE(47), [sym_for_range_loop] = STATE(47), [sym_co_return_statement] = STATE(47), [sym_co_yield_statement] = STATE(47), [sym_throw_statement] = STATE(47), [sym_try_statement] = STATE(47), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(47), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(730), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [47] = { [sym_preproc_include] = STATE(39), [sym_preproc_def] = STATE(39), [sym_preproc_function_def] = STATE(39), [sym_preproc_call] = STATE(39), [sym_preproc_if] = STATE(39), [sym_preproc_ifdef] = STATE(39), [sym_function_definition] = STATE(39), [sym_declaration] = STATE(39), [sym_type_definition] = STATE(39), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(39), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(39), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(39), [sym_labeled_statement] = STATE(39), [sym_expression_statement] = STATE(39), [sym_if_statement] = STATE(39), [sym_switch_statement] = STATE(39), [sym_case_statement] = STATE(39), [sym_while_statement] = STATE(39), [sym_do_statement] = STATE(39), [sym_for_statement] = STATE(39), [sym_return_statement] = STATE(39), [sym_break_statement] = STATE(39), [sym_continue_statement] = STATE(39), [sym_goto_statement] = STATE(39), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(39), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(39), [sym_template_instantiation] = STATE(39), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(39), [sym_operator_cast_declaration] = STATE(39), [sym_constructor_or_destructor_definition] = STATE(39), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(39), [sym_namespace_alias_definition] = STATE(39), [sym_using_declaration] = STATE(39), [sym_alias_declaration] = STATE(39), [sym_static_assert_declaration] = STATE(39), [sym_for_range_loop] = STATE(39), [sym_co_return_statement] = STATE(39), [sym_co_yield_statement] = STATE(39), [sym_throw_statement] = STATE(39), [sym_try_statement] = STATE(39), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(39), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(732), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [48] = { [sym_preproc_include] = STATE(58), [sym_preproc_def] = STATE(58), [sym_preproc_function_def] = STATE(58), [sym_preproc_call] = STATE(58), [sym_preproc_if] = STATE(58), [sym_preproc_ifdef] = STATE(58), [sym_function_definition] = STATE(58), [sym_declaration] = STATE(58), [sym_type_definition] = STATE(58), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(58), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(58), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(58), [sym_labeled_statement] = STATE(58), [sym_expression_statement] = STATE(58), [sym_if_statement] = STATE(58), [sym_switch_statement] = STATE(58), [sym_case_statement] = STATE(58), [sym_while_statement] = STATE(58), [sym_do_statement] = STATE(58), [sym_for_statement] = STATE(58), [sym_return_statement] = STATE(58), [sym_break_statement] = STATE(58), [sym_continue_statement] = STATE(58), [sym_goto_statement] = STATE(58), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(58), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(58), [sym_template_instantiation] = STATE(58), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(58), [sym_operator_cast_declaration] = STATE(58), [sym_constructor_or_destructor_definition] = STATE(58), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(58), [sym_namespace_alias_definition] = STATE(58), [sym_using_declaration] = STATE(58), [sym_alias_declaration] = STATE(58), [sym_static_assert_declaration] = STATE(58), [sym_for_range_loop] = STATE(58), [sym_co_return_statement] = STATE(58), [sym_co_yield_statement] = STATE(58), [sym_throw_statement] = STATE(58), [sym_try_statement] = STATE(58), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(58), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(734), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [49] = { [sym_preproc_include] = STATE(39), [sym_preproc_def] = STATE(39), [sym_preproc_function_def] = STATE(39), [sym_preproc_call] = STATE(39), [sym_preproc_if] = STATE(39), [sym_preproc_ifdef] = STATE(39), [sym_function_definition] = STATE(39), [sym_declaration] = STATE(39), [sym_type_definition] = STATE(39), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(39), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(39), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(39), [sym_labeled_statement] = STATE(39), [sym_expression_statement] = STATE(39), [sym_if_statement] = STATE(39), [sym_switch_statement] = STATE(39), [sym_case_statement] = STATE(39), [sym_while_statement] = STATE(39), [sym_do_statement] = STATE(39), [sym_for_statement] = STATE(39), [sym_return_statement] = STATE(39), [sym_break_statement] = STATE(39), [sym_continue_statement] = STATE(39), [sym_goto_statement] = STATE(39), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(39), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(39), [sym_template_instantiation] = STATE(39), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(39), [sym_operator_cast_declaration] = STATE(39), [sym_constructor_or_destructor_definition] = STATE(39), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(39), [sym_namespace_alias_definition] = STATE(39), [sym_using_declaration] = STATE(39), [sym_alias_declaration] = STATE(39), [sym_static_assert_declaration] = STATE(39), [sym_for_range_loop] = STATE(39), [sym_co_return_statement] = STATE(39), [sym_co_yield_statement] = STATE(39), [sym_throw_statement] = STATE(39), [sym_try_statement] = STATE(39), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(39), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(736), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [50] = { [sym_preproc_include] = STATE(29), [sym_preproc_def] = STATE(29), [sym_preproc_function_def] = STATE(29), [sym_preproc_call] = STATE(29), [sym_preproc_if] = STATE(29), [sym_preproc_ifdef] = STATE(29), [sym_function_definition] = STATE(29), [sym_declaration] = STATE(29), [sym_type_definition] = STATE(29), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(29), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(29), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(29), [sym_labeled_statement] = STATE(29), [sym_expression_statement] = STATE(29), [sym_if_statement] = STATE(29), [sym_switch_statement] = STATE(29), [sym_case_statement] = STATE(29), [sym_while_statement] = STATE(29), [sym_do_statement] = STATE(29), [sym_for_statement] = STATE(29), [sym_return_statement] = STATE(29), [sym_break_statement] = STATE(29), [sym_continue_statement] = STATE(29), [sym_goto_statement] = STATE(29), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(29), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(29), [sym_template_instantiation] = STATE(29), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(29), [sym_operator_cast_declaration] = STATE(29), [sym_constructor_or_destructor_definition] = STATE(29), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(29), [sym_namespace_alias_definition] = STATE(29), [sym_using_declaration] = STATE(29), [sym_alias_declaration] = STATE(29), [sym_static_assert_declaration] = STATE(29), [sym_for_range_loop] = STATE(29), [sym_co_return_statement] = STATE(29), [sym_co_yield_statement] = STATE(29), [sym_throw_statement] = STATE(29), [sym_try_statement] = STATE(29), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(29), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(738), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [51] = { [sym_preproc_include] = STATE(39), [sym_preproc_def] = STATE(39), [sym_preproc_function_def] = STATE(39), [sym_preproc_call] = STATE(39), [sym_preproc_if] = STATE(39), [sym_preproc_ifdef] = STATE(39), [sym_function_definition] = STATE(39), [sym_declaration] = STATE(39), [sym_type_definition] = STATE(39), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(39), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(39), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(39), [sym_labeled_statement] = STATE(39), [sym_expression_statement] = STATE(39), [sym_if_statement] = STATE(39), [sym_switch_statement] = STATE(39), [sym_case_statement] = STATE(39), [sym_while_statement] = STATE(39), [sym_do_statement] = STATE(39), [sym_for_statement] = STATE(39), [sym_return_statement] = STATE(39), [sym_break_statement] = STATE(39), [sym_continue_statement] = STATE(39), [sym_goto_statement] = STATE(39), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(39), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(39), [sym_template_instantiation] = STATE(39), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(39), [sym_operator_cast_declaration] = STATE(39), [sym_constructor_or_destructor_definition] = STATE(39), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(39), [sym_namespace_alias_definition] = STATE(39), [sym_using_declaration] = STATE(39), [sym_alias_declaration] = STATE(39), [sym_static_assert_declaration] = STATE(39), [sym_for_range_loop] = STATE(39), [sym_co_return_statement] = STATE(39), [sym_co_yield_statement] = STATE(39), [sym_throw_statement] = STATE(39), [sym_try_statement] = STATE(39), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(39), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(740), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [52] = { [sym_preproc_include] = STATE(35), [sym_preproc_def] = STATE(35), [sym_preproc_function_def] = STATE(35), [sym_preproc_call] = STATE(35), [sym_preproc_if] = STATE(35), [sym_preproc_ifdef] = STATE(35), [sym_function_definition] = STATE(35), [sym_declaration] = STATE(35), [sym_type_definition] = STATE(35), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(35), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(35), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(35), [sym_labeled_statement] = STATE(35), [sym_expression_statement] = STATE(35), [sym_if_statement] = STATE(35), [sym_switch_statement] = STATE(35), [sym_case_statement] = STATE(35), [sym_while_statement] = STATE(35), [sym_do_statement] = STATE(35), [sym_for_statement] = STATE(35), [sym_return_statement] = STATE(35), [sym_break_statement] = STATE(35), [sym_continue_statement] = STATE(35), [sym_goto_statement] = STATE(35), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(35), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(35), [sym_template_instantiation] = STATE(35), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(35), [sym_operator_cast_declaration] = STATE(35), [sym_constructor_or_destructor_definition] = STATE(35), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(35), [sym_namespace_alias_definition] = STATE(35), [sym_using_declaration] = STATE(35), [sym_alias_declaration] = STATE(35), [sym_static_assert_declaration] = STATE(35), [sym_for_range_loop] = STATE(35), [sym_co_return_statement] = STATE(35), [sym_co_yield_statement] = STATE(35), [sym_throw_statement] = STATE(35), [sym_try_statement] = STATE(35), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(35), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(742), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [53] = { [sym_preproc_include] = STATE(49), [sym_preproc_def] = STATE(49), [sym_preproc_function_def] = STATE(49), [sym_preproc_call] = STATE(49), [sym_preproc_if] = STATE(49), [sym_preproc_ifdef] = STATE(49), [sym_function_definition] = STATE(49), [sym_declaration] = STATE(49), [sym_type_definition] = STATE(49), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(49), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(49), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(49), [sym_labeled_statement] = STATE(49), [sym_expression_statement] = STATE(49), [sym_if_statement] = STATE(49), [sym_switch_statement] = STATE(49), [sym_case_statement] = STATE(49), [sym_while_statement] = STATE(49), [sym_do_statement] = STATE(49), [sym_for_statement] = STATE(49), [sym_return_statement] = STATE(49), [sym_break_statement] = STATE(49), [sym_continue_statement] = STATE(49), [sym_goto_statement] = STATE(49), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(49), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(49), [sym_template_instantiation] = STATE(49), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(49), [sym_operator_cast_declaration] = STATE(49), [sym_constructor_or_destructor_definition] = STATE(49), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(49), [sym_namespace_alias_definition] = STATE(49), [sym_using_declaration] = STATE(49), [sym_alias_declaration] = STATE(49), [sym_static_assert_declaration] = STATE(49), [sym_for_range_loop] = STATE(49), [sym_co_return_statement] = STATE(49), [sym_co_yield_statement] = STATE(49), [sym_throw_statement] = STATE(49), [sym_try_statement] = STATE(49), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(49), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(744), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [54] = { [sym_preproc_include] = STATE(30), [sym_preproc_def] = STATE(30), [sym_preproc_function_def] = STATE(30), [sym_preproc_call] = STATE(30), [sym_preproc_if] = STATE(30), [sym_preproc_ifdef] = STATE(30), [sym_function_definition] = STATE(30), [sym_declaration] = STATE(30), [sym_type_definition] = STATE(30), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3064), [sym_linkage_specification] = STATE(30), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1497), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3784), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(30), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2411), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(30), [sym_labeled_statement] = STATE(30), [sym_expression_statement] = STATE(30), [sym_if_statement] = STATE(30), [sym_switch_statement] = STATE(30), [sym_case_statement] = STATE(30), [sym_while_statement] = STATE(30), [sym_do_statement] = STATE(30), [sym_for_statement] = STATE(30), [sym_return_statement] = STATE(30), [sym_break_statement] = STATE(30), [sym_continue_statement] = STATE(30), [sym_goto_statement] = STATE(30), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(30), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1381), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(30), [sym_template_instantiation] = STATE(30), [sym_operator_cast] = STATE(4154), [sym__constructor_specifiers] = STATE(1381), [sym_operator_cast_definition] = STATE(30), [sym_operator_cast_declaration] = STATE(30), [sym_constructor_or_destructor_definition] = STATE(30), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(30), [sym_namespace_alias_definition] = STATE(30), [sym_using_declaration] = STATE(30), [sym_alias_declaration] = STATE(30), [sym_static_assert_declaration] = STATE(30), [sym_for_range_loop] = STATE(30), [sym_co_return_statement] = STATE(30), [sym_co_yield_statement] = STATE(30), [sym_throw_statement] = STATE(30), [sym_try_statement] = STATE(30), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4154), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(30), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(139), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1381), [ts_builtin_sym_end] = ACTIONS(746), [sym_identifier] = ACTIONS(7), [aux_sym_preproc_include_token1] = ACTIONS(9), [aux_sym_preproc_def_token1] = ACTIONS(11), [aux_sym_preproc_if_token1] = ACTIONS(13), [aux_sym_preproc_ifdef_token1] = ACTIONS(15), [aux_sym_preproc_ifdef_token2] = ACTIONS(15), [sym_preproc_directive] = ACTIONS(17), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_typedef] = ACTIONS(35), [anon_sym_extern] = ACTIONS(37), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(115), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_namespace] = ACTIONS(123), [anon_sym_using] = ACTIONS(125), [anon_sym_static_assert] = ACTIONS(127), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [55] = { [sym_preproc_include] = STATE(57), [sym_preproc_def] = STATE(57), [sym_preproc_function_def] = STATE(57), [sym_preproc_call] = STATE(57), [sym_preproc_if] = STATE(57), [sym_preproc_ifdef] = STATE(57), [sym_function_definition] = STATE(57), [sym_declaration] = STATE(57), [sym_type_definition] = STATE(57), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2939), [sym_linkage_specification] = STATE(57), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1591), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3814), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(57), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2454), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(57), [sym_labeled_statement] = STATE(57), [sym_expression_statement] = STATE(57), [sym_if_statement] = STATE(57), [sym_switch_statement] = STATE(57), [sym_case_statement] = STATE(57), [sym_while_statement] = STATE(57), [sym_do_statement] = STATE(57), [sym_for_statement] = STATE(57), [sym_return_statement] = STATE(57), [sym_break_statement] = STATE(57), [sym_continue_statement] = STATE(57), [sym_goto_statement] = STATE(57), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(57), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1379), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(57), [sym_template_instantiation] = STATE(57), [sym_operator_cast] = STATE(4229), [sym__constructor_specifiers] = STATE(1379), [sym_operator_cast_definition] = STATE(57), [sym_operator_cast_declaration] = STATE(57), [sym_constructor_or_destructor_definition] = STATE(57), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(57), [sym_namespace_alias_definition] = STATE(57), [sym_using_declaration] = STATE(57), [sym_alias_declaration] = STATE(57), [sym_static_assert_declaration] = STATE(57), [sym_for_range_loop] = STATE(57), [sym_co_return_statement] = STATE(57), [sym_co_yield_statement] = STATE(57), [sym_throw_statement] = STATE(57), [sym_try_statement] = STATE(57), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4229), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(57), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(141), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1379), [sym_identifier] = ACTIONS(748), [aux_sym_preproc_include_token1] = ACTIONS(750), [aux_sym_preproc_def_token1] = ACTIONS(752), [aux_sym_preproc_if_token1] = ACTIONS(754), [aux_sym_preproc_if_token2] = ACTIONS(756), [aux_sym_preproc_ifdef_token1] = ACTIONS(758), [aux_sym_preproc_ifdef_token2] = ACTIONS(758), [sym_preproc_directive] = ACTIONS(760), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_typedef] = ACTIONS(764), [anon_sym_extern] = ACTIONS(766), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(792), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_namespace] = ACTIONS(796), [anon_sym_using] = ACTIONS(798), [anon_sym_static_assert] = ACTIONS(800), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [56] = { [sym_preproc_include] = STATE(62), [sym_preproc_def] = STATE(62), [sym_preproc_function_def] = STATE(62), [sym_preproc_call] = STATE(62), [sym_preproc_if] = STATE(62), [sym_preproc_ifdef] = STATE(62), [sym_function_definition] = STATE(62), [sym_declaration] = STATE(62), [sym_type_definition] = STATE(62), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(62), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(62), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(62), [sym_labeled_statement] = STATE(62), [sym_expression_statement] = STATE(62), [sym_if_statement] = STATE(62), [sym_switch_statement] = STATE(62), [sym_case_statement] = STATE(62), [sym_while_statement] = STATE(62), [sym_do_statement] = STATE(62), [sym_for_statement] = STATE(62), [sym_return_statement] = STATE(62), [sym_break_statement] = STATE(62), [sym_continue_statement] = STATE(62), [sym_goto_statement] = STATE(62), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(62), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(62), [sym_template_instantiation] = STATE(62), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(62), [sym_operator_cast_declaration] = STATE(62), [sym_constructor_or_destructor_definition] = STATE(62), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(62), [sym_namespace_alias_definition] = STATE(62), [sym_using_declaration] = STATE(62), [sym_alias_declaration] = STATE(62), [sym_static_assert_declaration] = STATE(62), [sym_for_range_loop] = STATE(62), [sym_co_return_statement] = STATE(62), [sym_co_yield_statement] = STATE(62), [sym_throw_statement] = STATE(62), [sym_try_statement] = STATE(62), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(62), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(808), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [57] = { [sym_preproc_include] = STATE(57), [sym_preproc_def] = STATE(57), [sym_preproc_function_def] = STATE(57), [sym_preproc_call] = STATE(57), [sym_preproc_if] = STATE(57), [sym_preproc_ifdef] = STATE(57), [sym_function_definition] = STATE(57), [sym_declaration] = STATE(57), [sym_type_definition] = STATE(57), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2939), [sym_linkage_specification] = STATE(57), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1591), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3814), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(57), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2454), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(57), [sym_labeled_statement] = STATE(57), [sym_expression_statement] = STATE(57), [sym_if_statement] = STATE(57), [sym_switch_statement] = STATE(57), [sym_case_statement] = STATE(57), [sym_while_statement] = STATE(57), [sym_do_statement] = STATE(57), [sym_for_statement] = STATE(57), [sym_return_statement] = STATE(57), [sym_break_statement] = STATE(57), [sym_continue_statement] = STATE(57), [sym_goto_statement] = STATE(57), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(57), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1379), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(57), [sym_template_instantiation] = STATE(57), [sym_operator_cast] = STATE(4229), [sym__constructor_specifiers] = STATE(1379), [sym_operator_cast_definition] = STATE(57), [sym_operator_cast_declaration] = STATE(57), [sym_constructor_or_destructor_definition] = STATE(57), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(57), [sym_namespace_alias_definition] = STATE(57), [sym_using_declaration] = STATE(57), [sym_alias_declaration] = STATE(57), [sym_static_assert_declaration] = STATE(57), [sym_for_range_loop] = STATE(57), [sym_co_return_statement] = STATE(57), [sym_co_yield_statement] = STATE(57), [sym_throw_statement] = STATE(57), [sym_try_statement] = STATE(57), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4229), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(57), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(141), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1379), [sym_identifier] = ACTIONS(810), [aux_sym_preproc_include_token1] = ACTIONS(813), [aux_sym_preproc_def_token1] = ACTIONS(816), [aux_sym_preproc_if_token1] = ACTIONS(819), [aux_sym_preproc_if_token2] = ACTIONS(331), [aux_sym_preproc_ifdef_token1] = ACTIONS(822), [aux_sym_preproc_ifdef_token2] = ACTIONS(822), [sym_preproc_directive] = ACTIONS(825), [anon_sym_LPAREN2] = ACTIONS(339), [anon_sym_BANG] = ACTIONS(342), [anon_sym_TILDE] = ACTIONS(345), [anon_sym_DASH] = ACTIONS(348), [anon_sym_PLUS] = ACTIONS(348), [anon_sym_STAR] = ACTIONS(351), [anon_sym_AMP_AMP] = ACTIONS(354), [anon_sym_AMP] = ACTIONS(357), [anon_sym_SEMI] = ACTIONS(828), [anon_sym_typedef] = ACTIONS(831), [anon_sym_extern] = ACTIONS(834), [anon_sym___attribute__] = ACTIONS(369), [anon_sym_COLON_COLON] = ACTIONS(372), [anon_sym_LBRACK_LBRACK] = ACTIONS(375), [anon_sym___declspec] = ACTIONS(378), [anon_sym___based] = ACTIONS(381), [anon_sym___cdecl] = ACTIONS(384), [anon_sym___clrcall] = ACTIONS(384), [anon_sym___stdcall] = ACTIONS(384), [anon_sym___fastcall] = ACTIONS(384), [anon_sym___thiscall] = ACTIONS(384), [anon_sym___vectorcall] = ACTIONS(384), [anon_sym_LBRACE] = ACTIONS(837), [anon_sym_LBRACK] = ACTIONS(390), [anon_sym_static] = ACTIONS(393), [anon_sym_register] = ACTIONS(393), [anon_sym_inline] = ACTIONS(393), [anon_sym_thread_local] = ACTIONS(393), [anon_sym_const] = ACTIONS(396), [anon_sym_volatile] = ACTIONS(396), [anon_sym_restrict] = ACTIONS(396), [anon_sym__Atomic] = ACTIONS(396), [anon_sym_mutable] = ACTIONS(396), [anon_sym_constexpr] = ACTIONS(396), [anon_sym_signed] = ACTIONS(399), [anon_sym_unsigned] = ACTIONS(399), [anon_sym_long] = ACTIONS(399), [anon_sym_short] = ACTIONS(399), [sym_primitive_type] = ACTIONS(402), [anon_sym_enum] = ACTIONS(405), [anon_sym_class] = ACTIONS(408), [anon_sym_struct] = ACTIONS(411), [anon_sym_union] = ACTIONS(414), [anon_sym_if] = ACTIONS(840), [anon_sym_switch] = ACTIONS(843), [anon_sym_case] = ACTIONS(846), [anon_sym_default] = ACTIONS(849), [anon_sym_while] = ACTIONS(852), [anon_sym_do] = ACTIONS(855), [anon_sym_for] = ACTIONS(858), [anon_sym_return] = ACTIONS(861), [anon_sym_break] = ACTIONS(864), [anon_sym_continue] = ACTIONS(867), [anon_sym_goto] = ACTIONS(870), [anon_sym_DASH_DASH] = ACTIONS(450), [anon_sym_PLUS_PLUS] = ACTIONS(450), [anon_sym_sizeof] = ACTIONS(453), [sym_number_literal] = ACTIONS(456), [anon_sym_L_SQUOTE] = ACTIONS(459), [anon_sym_u_SQUOTE] = ACTIONS(459), [anon_sym_U_SQUOTE] = ACTIONS(459), [anon_sym_u8_SQUOTE] = ACTIONS(459), [anon_sym_SQUOTE] = ACTIONS(459), [anon_sym_L_DQUOTE] = ACTIONS(462), [anon_sym_u_DQUOTE] = ACTIONS(462), [anon_sym_U_DQUOTE] = ACTIONS(462), [anon_sym_u8_DQUOTE] = ACTIONS(462), [anon_sym_DQUOTE] = ACTIONS(462), [sym_true] = ACTIONS(465), [sym_false] = ACTIONS(465), [sym_null] = ACTIONS(465), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(468), [anon_sym_virtual] = ACTIONS(471), [anon_sym_explicit] = ACTIONS(474), [sym_auto] = ACTIONS(477), [anon_sym_typename] = ACTIONS(480), [anon_sym_template] = ACTIONS(873), [anon_sym_operator] = ACTIONS(486), [anon_sym_delete] = ACTIONS(489), [anon_sym_throw] = ACTIONS(876), [anon_sym_namespace] = ACTIONS(879), [anon_sym_using] = ACTIONS(882), [anon_sym_static_assert] = ACTIONS(885), [anon_sym_co_return] = ACTIONS(888), [anon_sym_co_yield] = ACTIONS(891), [anon_sym_try] = ACTIONS(894), [anon_sym_co_await] = ACTIONS(513), [anon_sym_new] = ACTIONS(516), [sym_this] = ACTIONS(465), [sym_nullptr] = ACTIONS(465), [sym_raw_string_literal] = ACTIONS(519), }, [58] = { [sym_preproc_include] = STATE(39), [sym_preproc_def] = STATE(39), [sym_preproc_function_def] = STATE(39), [sym_preproc_call] = STATE(39), [sym_preproc_if] = STATE(39), [sym_preproc_ifdef] = STATE(39), [sym_function_definition] = STATE(39), [sym_declaration] = STATE(39), [sym_type_definition] = STATE(39), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(39), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(39), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(39), [sym_labeled_statement] = STATE(39), [sym_expression_statement] = STATE(39), [sym_if_statement] = STATE(39), [sym_switch_statement] = STATE(39), [sym_case_statement] = STATE(39), [sym_while_statement] = STATE(39), [sym_do_statement] = STATE(39), [sym_for_statement] = STATE(39), [sym_return_statement] = STATE(39), [sym_break_statement] = STATE(39), [sym_continue_statement] = STATE(39), [sym_goto_statement] = STATE(39), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(39), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(39), [sym_template_instantiation] = STATE(39), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(39), [sym_operator_cast_declaration] = STATE(39), [sym_constructor_or_destructor_definition] = STATE(39), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(39), [sym_namespace_alias_definition] = STATE(39), [sym_using_declaration] = STATE(39), [sym_alias_declaration] = STATE(39), [sym_static_assert_declaration] = STATE(39), [sym_for_range_loop] = STATE(39), [sym_co_return_statement] = STATE(39), [sym_co_yield_statement] = STATE(39), [sym_throw_statement] = STATE(39), [sym_try_statement] = STATE(39), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(39), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(897), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [59] = { [sym_preproc_include] = STATE(39), [sym_preproc_def] = STATE(39), [sym_preproc_function_def] = STATE(39), [sym_preproc_call] = STATE(39), [sym_preproc_if] = STATE(39), [sym_preproc_ifdef] = STATE(39), [sym_function_definition] = STATE(39), [sym_declaration] = STATE(39), [sym_type_definition] = STATE(39), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(39), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(39), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(39), [sym_labeled_statement] = STATE(39), [sym_expression_statement] = STATE(39), [sym_if_statement] = STATE(39), [sym_switch_statement] = STATE(39), [sym_case_statement] = STATE(39), [sym_while_statement] = STATE(39), [sym_do_statement] = STATE(39), [sym_for_statement] = STATE(39), [sym_return_statement] = STATE(39), [sym_break_statement] = STATE(39), [sym_continue_statement] = STATE(39), [sym_goto_statement] = STATE(39), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(39), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(39), [sym_template_instantiation] = STATE(39), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(39), [sym_operator_cast_declaration] = STATE(39), [sym_constructor_or_destructor_definition] = STATE(39), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(39), [sym_namespace_alias_definition] = STATE(39), [sym_using_declaration] = STATE(39), [sym_alias_declaration] = STATE(39), [sym_static_assert_declaration] = STATE(39), [sym_for_range_loop] = STATE(39), [sym_co_return_statement] = STATE(39), [sym_co_yield_statement] = STATE(39), [sym_throw_statement] = STATE(39), [sym_try_statement] = STATE(39), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(39), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(899), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [60] = { [sym_preproc_include] = STATE(39), [sym_preproc_def] = STATE(39), [sym_preproc_function_def] = STATE(39), [sym_preproc_call] = STATE(39), [sym_preproc_if] = STATE(39), [sym_preproc_ifdef] = STATE(39), [sym_function_definition] = STATE(39), [sym_declaration] = STATE(39), [sym_type_definition] = STATE(39), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(39), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(39), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(39), [sym_labeled_statement] = STATE(39), [sym_expression_statement] = STATE(39), [sym_if_statement] = STATE(39), [sym_switch_statement] = STATE(39), [sym_case_statement] = STATE(39), [sym_while_statement] = STATE(39), [sym_do_statement] = STATE(39), [sym_for_statement] = STATE(39), [sym_return_statement] = STATE(39), [sym_break_statement] = STATE(39), [sym_continue_statement] = STATE(39), [sym_goto_statement] = STATE(39), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(39), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(39), [sym_template_instantiation] = STATE(39), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(39), [sym_operator_cast_declaration] = STATE(39), [sym_constructor_or_destructor_definition] = STATE(39), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(39), [sym_namespace_alias_definition] = STATE(39), [sym_using_declaration] = STATE(39), [sym_alias_declaration] = STATE(39), [sym_static_assert_declaration] = STATE(39), [sym_for_range_loop] = STATE(39), [sym_co_return_statement] = STATE(39), [sym_co_yield_statement] = STATE(39), [sym_throw_statement] = STATE(39), [sym_try_statement] = STATE(39), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(39), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(901), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [61] = { [sym_preproc_include] = STATE(66), [sym_preproc_def] = STATE(66), [sym_preproc_function_def] = STATE(66), [sym_preproc_call] = STATE(66), [sym_preproc_if] = STATE(66), [sym_preproc_ifdef] = STATE(66), [sym_function_definition] = STATE(66), [sym_declaration] = STATE(66), [sym_type_definition] = STATE(66), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(66), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(66), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(66), [sym_labeled_statement] = STATE(66), [sym_expression_statement] = STATE(66), [sym_if_statement] = STATE(66), [sym_switch_statement] = STATE(66), [sym_case_statement] = STATE(66), [sym_while_statement] = STATE(66), [sym_do_statement] = STATE(66), [sym_for_statement] = STATE(66), [sym_return_statement] = STATE(66), [sym_break_statement] = STATE(66), [sym_continue_statement] = STATE(66), [sym_goto_statement] = STATE(66), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(66), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(66), [sym_template_instantiation] = STATE(66), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(66), [sym_operator_cast_declaration] = STATE(66), [sym_constructor_or_destructor_definition] = STATE(66), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(66), [sym_namespace_alias_definition] = STATE(66), [sym_using_declaration] = STATE(66), [sym_alias_declaration] = STATE(66), [sym_static_assert_declaration] = STATE(66), [sym_for_range_loop] = STATE(66), [sym_co_return_statement] = STATE(66), [sym_co_yield_statement] = STATE(66), [sym_throw_statement] = STATE(66), [sym_try_statement] = STATE(66), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(66), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(903), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [62] = { [sym_preproc_include] = STATE(39), [sym_preproc_def] = STATE(39), [sym_preproc_function_def] = STATE(39), [sym_preproc_call] = STATE(39), [sym_preproc_if] = STATE(39), [sym_preproc_ifdef] = STATE(39), [sym_function_definition] = STATE(39), [sym_declaration] = STATE(39), [sym_type_definition] = STATE(39), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(39), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(39), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(39), [sym_labeled_statement] = STATE(39), [sym_expression_statement] = STATE(39), [sym_if_statement] = STATE(39), [sym_switch_statement] = STATE(39), [sym_case_statement] = STATE(39), [sym_while_statement] = STATE(39), [sym_do_statement] = STATE(39), [sym_for_statement] = STATE(39), [sym_return_statement] = STATE(39), [sym_break_statement] = STATE(39), [sym_continue_statement] = STATE(39), [sym_goto_statement] = STATE(39), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(39), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(39), [sym_template_instantiation] = STATE(39), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(39), [sym_operator_cast_declaration] = STATE(39), [sym_constructor_or_destructor_definition] = STATE(39), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(39), [sym_namespace_alias_definition] = STATE(39), [sym_using_declaration] = STATE(39), [sym_alias_declaration] = STATE(39), [sym_static_assert_declaration] = STATE(39), [sym_for_range_loop] = STATE(39), [sym_co_return_statement] = STATE(39), [sym_co_yield_statement] = STATE(39), [sym_throw_statement] = STATE(39), [sym_try_statement] = STATE(39), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(39), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(905), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [63] = { [sym_preproc_include] = STATE(39), [sym_preproc_def] = STATE(39), [sym_preproc_function_def] = STATE(39), [sym_preproc_call] = STATE(39), [sym_preproc_if] = STATE(39), [sym_preproc_ifdef] = STATE(39), [sym_function_definition] = STATE(39), [sym_declaration] = STATE(39), [sym_type_definition] = STATE(39), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(39), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(39), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(39), [sym_labeled_statement] = STATE(39), [sym_expression_statement] = STATE(39), [sym_if_statement] = STATE(39), [sym_switch_statement] = STATE(39), [sym_case_statement] = STATE(39), [sym_while_statement] = STATE(39), [sym_do_statement] = STATE(39), [sym_for_statement] = STATE(39), [sym_return_statement] = STATE(39), [sym_break_statement] = STATE(39), [sym_continue_statement] = STATE(39), [sym_goto_statement] = STATE(39), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(39), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(39), [sym_template_instantiation] = STATE(39), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(39), [sym_operator_cast_declaration] = STATE(39), [sym_constructor_or_destructor_definition] = STATE(39), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(39), [sym_namespace_alias_definition] = STATE(39), [sym_using_declaration] = STATE(39), [sym_alias_declaration] = STATE(39), [sym_static_assert_declaration] = STATE(39), [sym_for_range_loop] = STATE(39), [sym_co_return_statement] = STATE(39), [sym_co_yield_statement] = STATE(39), [sym_throw_statement] = STATE(39), [sym_try_statement] = STATE(39), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(39), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(907), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [64] = { [sym_preproc_include] = STATE(51), [sym_preproc_def] = STATE(51), [sym_preproc_function_def] = STATE(51), [sym_preproc_call] = STATE(51), [sym_preproc_if] = STATE(51), [sym_preproc_ifdef] = STATE(51), [sym_function_definition] = STATE(51), [sym_declaration] = STATE(51), [sym_type_definition] = STATE(51), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(51), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(51), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(51), [sym_labeled_statement] = STATE(51), [sym_expression_statement] = STATE(51), [sym_if_statement] = STATE(51), [sym_switch_statement] = STATE(51), [sym_case_statement] = STATE(51), [sym_while_statement] = STATE(51), [sym_do_statement] = STATE(51), [sym_for_statement] = STATE(51), [sym_return_statement] = STATE(51), [sym_break_statement] = STATE(51), [sym_continue_statement] = STATE(51), [sym_goto_statement] = STATE(51), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(51), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(51), [sym_template_instantiation] = STATE(51), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(51), [sym_operator_cast_declaration] = STATE(51), [sym_constructor_or_destructor_definition] = STATE(51), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(51), [sym_namespace_alias_definition] = STATE(51), [sym_using_declaration] = STATE(51), [sym_alias_declaration] = STATE(51), [sym_static_assert_declaration] = STATE(51), [sym_for_range_loop] = STATE(51), [sym_co_return_statement] = STATE(51), [sym_co_yield_statement] = STATE(51), [sym_throw_statement] = STATE(51), [sym_try_statement] = STATE(51), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(51), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(909), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [65] = { [sym_preproc_include] = STATE(55), [sym_preproc_def] = STATE(55), [sym_preproc_function_def] = STATE(55), [sym_preproc_call] = STATE(55), [sym_preproc_if] = STATE(55), [sym_preproc_ifdef] = STATE(55), [sym_function_definition] = STATE(55), [sym_declaration] = STATE(55), [sym_type_definition] = STATE(55), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2939), [sym_linkage_specification] = STATE(55), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1591), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3814), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(55), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2454), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(55), [sym_labeled_statement] = STATE(55), [sym_expression_statement] = STATE(55), [sym_if_statement] = STATE(55), [sym_switch_statement] = STATE(55), [sym_case_statement] = STATE(55), [sym_while_statement] = STATE(55), [sym_do_statement] = STATE(55), [sym_for_statement] = STATE(55), [sym_return_statement] = STATE(55), [sym_break_statement] = STATE(55), [sym_continue_statement] = STATE(55), [sym_goto_statement] = STATE(55), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(55), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1379), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(55), [sym_template_instantiation] = STATE(55), [sym_operator_cast] = STATE(4229), [sym__constructor_specifiers] = STATE(1379), [sym_operator_cast_definition] = STATE(55), [sym_operator_cast_declaration] = STATE(55), [sym_constructor_or_destructor_definition] = STATE(55), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(55), [sym_namespace_alias_definition] = STATE(55), [sym_using_declaration] = STATE(55), [sym_alias_declaration] = STATE(55), [sym_static_assert_declaration] = STATE(55), [sym_for_range_loop] = STATE(55), [sym_co_return_statement] = STATE(55), [sym_co_yield_statement] = STATE(55), [sym_throw_statement] = STATE(55), [sym_try_statement] = STATE(55), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4229), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(55), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(141), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1379), [sym_identifier] = ACTIONS(748), [aux_sym_preproc_include_token1] = ACTIONS(750), [aux_sym_preproc_def_token1] = ACTIONS(752), [aux_sym_preproc_if_token1] = ACTIONS(754), [aux_sym_preproc_if_token2] = ACTIONS(911), [aux_sym_preproc_ifdef_token1] = ACTIONS(758), [aux_sym_preproc_ifdef_token2] = ACTIONS(758), [sym_preproc_directive] = ACTIONS(760), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_typedef] = ACTIONS(764), [anon_sym_extern] = ACTIONS(766), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(792), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_namespace] = ACTIONS(796), [anon_sym_using] = ACTIONS(798), [anon_sym_static_assert] = ACTIONS(800), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [66] = { [sym_preproc_include] = STATE(39), [sym_preproc_def] = STATE(39), [sym_preproc_function_def] = STATE(39), [sym_preproc_call] = STATE(39), [sym_preproc_if] = STATE(39), [sym_preproc_ifdef] = STATE(39), [sym_function_definition] = STATE(39), [sym_declaration] = STATE(39), [sym_type_definition] = STATE(39), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_linkage_specification] = STATE(39), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(851), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3821), [sym_array_declarator] = STATE(3782), [sym_compound_statement] = STATE(39), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_statement] = STATE(39), [sym_labeled_statement] = STATE(39), [sym_expression_statement] = STATE(39), [sym_if_statement] = STATE(39), [sym_switch_statement] = STATE(39), [sym_case_statement] = STATE(39), [sym_while_statement] = STATE(39), [sym_do_statement] = STATE(39), [sym_for_statement] = STATE(39), [sym_return_statement] = STATE(39), [sym_break_statement] = STATE(39), [sym_continue_statement] = STATE(39), [sym_goto_statement] = STATE(39), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__empty_declaration] = STATE(39), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1382), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(39), [sym_template_instantiation] = STATE(39), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1382), [sym_operator_cast_definition] = STATE(39), [sym_operator_cast_declaration] = STATE(39), [sym_constructor_or_destructor_definition] = STATE(39), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2691), [sym_namespace_definition] = STATE(39), [sym_namespace_alias_definition] = STATE(39), [sym_using_declaration] = STATE(39), [sym_alias_declaration] = STATE(39), [sym_static_assert_declaration] = STATE(39), [sym_for_range_loop] = STATE(39), [sym_co_return_statement] = STATE(39), [sym_co_yield_statement] = STATE(39), [sym_throw_statement] = STATE(39), [sym_try_statement] = STATE(39), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3524), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(2646), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_translation_unit_repeat1] = STATE(39), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(136), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1382), [sym_identifier] = ACTIONS(141), [aux_sym_preproc_include_token1] = ACTIONS(143), [aux_sym_preproc_def_token1] = ACTIONS(145), [aux_sym_preproc_if_token1] = ACTIONS(149), [aux_sym_preproc_ifdef_token1] = ACTIONS(151), [aux_sym_preproc_ifdef_token2] = ACTIONS(151), [sym_preproc_directive] = ACTIONS(153), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(159), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(43), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(913), [anon_sym_LBRACK] = ACTIONS(53), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(191), [anon_sym_operator] = ACTIONS(117), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(195), [anon_sym_using] = ACTIONS(197), [anon_sym_static_assert] = ACTIONS(199), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [67] = { [sym_declaration] = STATE(69), [sym_type_definition] = STATE(69), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3063), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(69), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(69), [sym_labeled_statement] = STATE(69), [sym_expression_statement] = STATE(69), [sym_if_statement] = STATE(69), [sym_switch_statement] = STATE(69), [sym_while_statement] = STATE(69), [sym_do_statement] = STATE(69), [sym_for_statement] = STATE(69), [sym_return_statement] = STATE(69), [sym_break_statement] = STATE(69), [sym_continue_statement] = STATE(69), [sym_goto_statement] = STATE(69), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(69), [sym_co_return_statement] = STATE(69), [sym_co_yield_statement] = STATE(69), [sym_throw_statement] = STATE(69), [sym_try_statement] = STATE(69), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(349), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(69), [sym_identifier] = ACTIONS(915), [aux_sym_preproc_include_token1] = ACTIONS(917), [aux_sym_preproc_def_token1] = ACTIONS(917), [aux_sym_preproc_if_token1] = ACTIONS(917), [aux_sym_preproc_if_token2] = ACTIONS(917), [aux_sym_preproc_ifdef_token1] = ACTIONS(917), [aux_sym_preproc_ifdef_token2] = ACTIONS(917), [aux_sym_preproc_else_token1] = ACTIONS(917), [aux_sym_preproc_elif_token1] = ACTIONS(917), [sym_preproc_directive] = ACTIONS(917), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP_AMP] = ACTIONS(923), [anon_sym_AMP] = ACTIONS(925), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(917), [anon_sym___cdecl] = ACTIONS(917), [anon_sym___clrcall] = ACTIONS(917), [anon_sym___stdcall] = ACTIONS(917), [anon_sym___fastcall] = ACTIONS(917), [anon_sym___thiscall] = ACTIONS(917), [anon_sym___vectorcall] = ACTIONS(917), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_else] = ACTIONS(917), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(917), [anon_sym_default] = ACTIONS(917), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(917), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(917), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(917), [anon_sym_using] = ACTIONS(917), [anon_sym_static_assert] = ACTIONS(917), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [68] = { [sym_declaration] = STATE(70), [sym_type_definition] = STATE(70), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3063), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(70), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(70), [sym_labeled_statement] = STATE(70), [sym_expression_statement] = STATE(70), [sym_if_statement] = STATE(70), [sym_switch_statement] = STATE(70), [sym_while_statement] = STATE(70), [sym_do_statement] = STATE(70), [sym_for_statement] = STATE(70), [sym_return_statement] = STATE(70), [sym_break_statement] = STATE(70), [sym_continue_statement] = STATE(70), [sym_goto_statement] = STATE(70), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(70), [sym_co_return_statement] = STATE(70), [sym_co_yield_statement] = STATE(70), [sym_throw_statement] = STATE(70), [sym_try_statement] = STATE(70), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(349), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(70), [sym_identifier] = ACTIONS(915), [aux_sym_preproc_include_token1] = ACTIONS(933), [aux_sym_preproc_def_token1] = ACTIONS(933), [aux_sym_preproc_if_token1] = ACTIONS(933), [aux_sym_preproc_if_token2] = ACTIONS(933), [aux_sym_preproc_ifdef_token1] = ACTIONS(933), [aux_sym_preproc_ifdef_token2] = ACTIONS(933), [aux_sym_preproc_else_token1] = ACTIONS(933), [aux_sym_preproc_elif_token1] = ACTIONS(933), [sym_preproc_directive] = ACTIONS(933), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP_AMP] = ACTIONS(935), [anon_sym_AMP] = ACTIONS(925), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(933), [anon_sym___cdecl] = ACTIONS(933), [anon_sym___clrcall] = ACTIONS(933), [anon_sym___stdcall] = ACTIONS(933), [anon_sym___fastcall] = ACTIONS(933), [anon_sym___thiscall] = ACTIONS(933), [anon_sym___vectorcall] = ACTIONS(933), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_else] = ACTIONS(933), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(933), [anon_sym_default] = ACTIONS(933), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(933), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(933), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(933), [anon_sym_using] = ACTIONS(933), [anon_sym_static_assert] = ACTIONS(933), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [69] = { [sym_declaration] = STATE(69), [sym_type_definition] = STATE(69), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3063), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(69), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(69), [sym_labeled_statement] = STATE(69), [sym_expression_statement] = STATE(69), [sym_if_statement] = STATE(69), [sym_switch_statement] = STATE(69), [sym_while_statement] = STATE(69), [sym_do_statement] = STATE(69), [sym_for_statement] = STATE(69), [sym_return_statement] = STATE(69), [sym_break_statement] = STATE(69), [sym_continue_statement] = STATE(69), [sym_goto_statement] = STATE(69), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(69), [sym_co_return_statement] = STATE(69), [sym_co_yield_statement] = STATE(69), [sym_throw_statement] = STATE(69), [sym_try_statement] = STATE(69), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(349), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(69), [sym_identifier] = ACTIONS(937), [aux_sym_preproc_include_token1] = ACTIONS(940), [aux_sym_preproc_def_token1] = ACTIONS(940), [aux_sym_preproc_if_token1] = ACTIONS(940), [aux_sym_preproc_if_token2] = ACTIONS(940), [aux_sym_preproc_ifdef_token1] = ACTIONS(940), [aux_sym_preproc_ifdef_token2] = ACTIONS(940), [aux_sym_preproc_else_token1] = ACTIONS(940), [aux_sym_preproc_elif_token1] = ACTIONS(940), [sym_preproc_directive] = ACTIONS(940), [anon_sym_LPAREN2] = ACTIONS(942), [anon_sym_BANG] = ACTIONS(945), [anon_sym_TILDE] = ACTIONS(945), [anon_sym_DASH] = ACTIONS(948), [anon_sym_PLUS] = ACTIONS(948), [anon_sym_STAR] = ACTIONS(951), [anon_sym_AMP_AMP] = ACTIONS(954), [anon_sym_AMP] = ACTIONS(956), [anon_sym_SEMI] = ACTIONS(959), [anon_sym_typedef] = ACTIONS(962), [anon_sym_extern] = ACTIONS(965), [anon_sym___attribute__] = ACTIONS(968), [anon_sym_COLON_COLON] = ACTIONS(971), [anon_sym_LBRACK_LBRACK] = ACTIONS(974), [anon_sym___declspec] = ACTIONS(977), [anon_sym___based] = ACTIONS(940), [anon_sym___cdecl] = ACTIONS(940), [anon_sym___clrcall] = ACTIONS(940), [anon_sym___stdcall] = ACTIONS(940), [anon_sym___fastcall] = ACTIONS(940), [anon_sym___thiscall] = ACTIONS(940), [anon_sym___vectorcall] = ACTIONS(940), [anon_sym_LBRACE] = ACTIONS(980), [anon_sym_LBRACK] = ACTIONS(983), [anon_sym_static] = ACTIONS(965), [anon_sym_register] = ACTIONS(965), [anon_sym_inline] = ACTIONS(965), [anon_sym_thread_local] = ACTIONS(965), [anon_sym_const] = ACTIONS(986), [anon_sym_volatile] = ACTIONS(986), [anon_sym_restrict] = ACTIONS(986), [anon_sym__Atomic] = ACTIONS(986), [anon_sym_mutable] = ACTIONS(986), [anon_sym_constexpr] = ACTIONS(986), [anon_sym_signed] = ACTIONS(989), [anon_sym_unsigned] = ACTIONS(989), [anon_sym_long] = ACTIONS(989), [anon_sym_short] = ACTIONS(989), [sym_primitive_type] = ACTIONS(992), [anon_sym_enum] = ACTIONS(995), [anon_sym_class] = ACTIONS(998), [anon_sym_struct] = ACTIONS(1001), [anon_sym_union] = ACTIONS(1004), [anon_sym_if] = ACTIONS(1007), [anon_sym_else] = ACTIONS(940), [anon_sym_switch] = ACTIONS(1010), [anon_sym_case] = ACTIONS(940), [anon_sym_default] = ACTIONS(940), [anon_sym_while] = ACTIONS(1013), [anon_sym_do] = ACTIONS(1016), [anon_sym_for] = ACTIONS(1019), [anon_sym_return] = ACTIONS(1022), [anon_sym_break] = ACTIONS(1025), [anon_sym_continue] = ACTIONS(1028), [anon_sym_goto] = ACTIONS(1031), [anon_sym_DASH_DASH] = ACTIONS(1034), [anon_sym_PLUS_PLUS] = ACTIONS(1034), [anon_sym_sizeof] = ACTIONS(1037), [sym_number_literal] = ACTIONS(1040), [anon_sym_L_SQUOTE] = ACTIONS(1043), [anon_sym_u_SQUOTE] = ACTIONS(1043), [anon_sym_U_SQUOTE] = ACTIONS(1043), [anon_sym_u8_SQUOTE] = ACTIONS(1043), [anon_sym_SQUOTE] = ACTIONS(1043), [anon_sym_L_DQUOTE] = ACTIONS(1046), [anon_sym_u_DQUOTE] = ACTIONS(1046), [anon_sym_U_DQUOTE] = ACTIONS(1046), [anon_sym_u8_DQUOTE] = ACTIONS(1046), [anon_sym_DQUOTE] = ACTIONS(1046), [sym_true] = ACTIONS(1049), [sym_false] = ACTIONS(1049), [sym_null] = ACTIONS(1049), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1052), [anon_sym_virtual] = ACTIONS(1055), [anon_sym_explicit] = ACTIONS(940), [sym_auto] = ACTIONS(1058), [anon_sym_typename] = ACTIONS(1061), [anon_sym_template] = ACTIONS(1064), [anon_sym_operator] = ACTIONS(940), [anon_sym_delete] = ACTIONS(1067), [anon_sym_throw] = ACTIONS(1070), [anon_sym_namespace] = ACTIONS(940), [anon_sym_using] = ACTIONS(940), [anon_sym_static_assert] = ACTIONS(940), [anon_sym_co_return] = ACTIONS(1073), [anon_sym_co_yield] = ACTIONS(1076), [anon_sym_try] = ACTIONS(1079), [anon_sym_co_await] = ACTIONS(1082), [anon_sym_new] = ACTIONS(1085), [sym_this] = ACTIONS(1049), [sym_nullptr] = ACTIONS(1049), [sym_raw_string_literal] = ACTIONS(1088), }, [70] = { [sym_declaration] = STATE(69), [sym_type_definition] = STATE(69), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3063), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(69), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(69), [sym_labeled_statement] = STATE(69), [sym_expression_statement] = STATE(69), [sym_if_statement] = STATE(69), [sym_switch_statement] = STATE(69), [sym_while_statement] = STATE(69), [sym_do_statement] = STATE(69), [sym_for_statement] = STATE(69), [sym_return_statement] = STATE(69), [sym_break_statement] = STATE(69), [sym_continue_statement] = STATE(69), [sym_goto_statement] = STATE(69), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(69), [sym_co_return_statement] = STATE(69), [sym_co_yield_statement] = STATE(69), [sym_throw_statement] = STATE(69), [sym_try_statement] = STATE(69), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(349), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(69), [sym_identifier] = ACTIONS(915), [aux_sym_preproc_include_token1] = ACTIONS(1091), [aux_sym_preproc_def_token1] = ACTIONS(1091), [aux_sym_preproc_if_token1] = ACTIONS(1091), [aux_sym_preproc_if_token2] = ACTIONS(1091), [aux_sym_preproc_ifdef_token1] = ACTIONS(1091), [aux_sym_preproc_ifdef_token2] = ACTIONS(1091), [aux_sym_preproc_else_token1] = ACTIONS(1091), [aux_sym_preproc_elif_token1] = ACTIONS(1091), [sym_preproc_directive] = ACTIONS(1091), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP_AMP] = ACTIONS(1093), [anon_sym_AMP] = ACTIONS(925), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(1091), [anon_sym___cdecl] = ACTIONS(1091), [anon_sym___clrcall] = ACTIONS(1091), [anon_sym___stdcall] = ACTIONS(1091), [anon_sym___fastcall] = ACTIONS(1091), [anon_sym___thiscall] = ACTIONS(1091), [anon_sym___vectorcall] = ACTIONS(1091), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_else] = ACTIONS(1091), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(1091), [anon_sym_default] = ACTIONS(1091), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(1091), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(1091), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(1091), [anon_sym_using] = ACTIONS(1091), [anon_sym_static_assert] = ACTIONS(1091), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [71] = { [sym_declaration] = STATE(67), [sym_type_definition] = STATE(67), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3063), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(67), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(67), [sym_labeled_statement] = STATE(67), [sym_expression_statement] = STATE(67), [sym_if_statement] = STATE(67), [sym_switch_statement] = STATE(67), [sym_while_statement] = STATE(67), [sym_do_statement] = STATE(67), [sym_for_statement] = STATE(67), [sym_return_statement] = STATE(67), [sym_break_statement] = STATE(67), [sym_continue_statement] = STATE(67), [sym_goto_statement] = STATE(67), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(67), [sym_co_return_statement] = STATE(67), [sym_co_yield_statement] = STATE(67), [sym_throw_statement] = STATE(67), [sym_try_statement] = STATE(67), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(349), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(67), [sym_identifier] = ACTIONS(915), [aux_sym_preproc_include_token1] = ACTIONS(1095), [aux_sym_preproc_def_token1] = ACTIONS(1095), [aux_sym_preproc_if_token1] = ACTIONS(1095), [aux_sym_preproc_if_token2] = ACTIONS(1095), [aux_sym_preproc_ifdef_token1] = ACTIONS(1095), [aux_sym_preproc_ifdef_token2] = ACTIONS(1095), [aux_sym_preproc_else_token1] = ACTIONS(1095), [aux_sym_preproc_elif_token1] = ACTIONS(1095), [sym_preproc_directive] = ACTIONS(1095), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP_AMP] = ACTIONS(1097), [anon_sym_AMP] = ACTIONS(925), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_typedef] = ACTIONS(241), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(1095), [anon_sym___cdecl] = ACTIONS(1095), [anon_sym___clrcall] = ACTIONS(1095), [anon_sym___stdcall] = ACTIONS(1095), [anon_sym___fastcall] = ACTIONS(1095), [anon_sym___thiscall] = ACTIONS(1095), [anon_sym___vectorcall] = ACTIONS(1095), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(247), [anon_sym_else] = ACTIONS(1095), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(1095), [anon_sym_default] = ACTIONS(1095), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(1095), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(1095), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_namespace] = ACTIONS(1095), [anon_sym_using] = ACTIONS(1095), [anon_sym_static_assert] = ACTIONS(1095), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [72] = { [sym_declaration] = STATE(72), [sym_type_definition] = STATE(72), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3093), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(72), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(72), [sym_labeled_statement] = STATE(72), [sym_expression_statement] = STATE(72), [sym_if_statement] = STATE(72), [sym_switch_statement] = STATE(72), [sym_while_statement] = STATE(72), [sym_do_statement] = STATE(72), [sym_for_statement] = STATE(72), [sym_return_statement] = STATE(72), [sym_break_statement] = STATE(72), [sym_continue_statement] = STATE(72), [sym_goto_statement] = STATE(72), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(72), [sym_co_return_statement] = STATE(72), [sym_co_yield_statement] = STATE(72), [sym_throw_statement] = STATE(72), [sym_try_statement] = STATE(72), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(202), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(72), [sym_identifier] = ACTIONS(1099), [aux_sym_preproc_include_token1] = ACTIONS(940), [aux_sym_preproc_def_token1] = ACTIONS(940), [aux_sym_preproc_if_token1] = ACTIONS(940), [aux_sym_preproc_if_token2] = ACTIONS(940), [aux_sym_preproc_ifdef_token1] = ACTIONS(940), [aux_sym_preproc_ifdef_token2] = ACTIONS(940), [sym_preproc_directive] = ACTIONS(940), [anon_sym_LPAREN2] = ACTIONS(942), [anon_sym_BANG] = ACTIONS(945), [anon_sym_TILDE] = ACTIONS(945), [anon_sym_DASH] = ACTIONS(948), [anon_sym_PLUS] = ACTIONS(948), [anon_sym_STAR] = ACTIONS(951), [anon_sym_AMP_AMP] = ACTIONS(954), [anon_sym_AMP] = ACTIONS(956), [anon_sym_SEMI] = ACTIONS(1102), [anon_sym_typedef] = ACTIONS(1105), [anon_sym_extern] = ACTIONS(965), [anon_sym___attribute__] = ACTIONS(968), [anon_sym_COLON_COLON] = ACTIONS(971), [anon_sym_LBRACK_LBRACK] = ACTIONS(974), [anon_sym___declspec] = ACTIONS(977), [anon_sym___based] = ACTIONS(940), [anon_sym___cdecl] = ACTIONS(940), [anon_sym___clrcall] = ACTIONS(940), [anon_sym___stdcall] = ACTIONS(940), [anon_sym___fastcall] = ACTIONS(940), [anon_sym___thiscall] = ACTIONS(940), [anon_sym___vectorcall] = ACTIONS(940), [anon_sym_LBRACE] = ACTIONS(1108), [anon_sym_LBRACK] = ACTIONS(983), [anon_sym_static] = ACTIONS(965), [anon_sym_register] = ACTIONS(965), [anon_sym_inline] = ACTIONS(965), [anon_sym_thread_local] = ACTIONS(965), [anon_sym_const] = ACTIONS(986), [anon_sym_volatile] = ACTIONS(986), [anon_sym_restrict] = ACTIONS(986), [anon_sym__Atomic] = ACTIONS(986), [anon_sym_mutable] = ACTIONS(986), [anon_sym_constexpr] = ACTIONS(986), [anon_sym_signed] = ACTIONS(989), [anon_sym_unsigned] = ACTIONS(989), [anon_sym_long] = ACTIONS(989), [anon_sym_short] = ACTIONS(989), [sym_primitive_type] = ACTIONS(992), [anon_sym_enum] = ACTIONS(995), [anon_sym_class] = ACTIONS(998), [anon_sym_struct] = ACTIONS(1001), [anon_sym_union] = ACTIONS(1004), [anon_sym_if] = ACTIONS(1111), [anon_sym_else] = ACTIONS(940), [anon_sym_switch] = ACTIONS(1114), [anon_sym_case] = ACTIONS(940), [anon_sym_default] = ACTIONS(940), [anon_sym_while] = ACTIONS(1117), [anon_sym_do] = ACTIONS(1120), [anon_sym_for] = ACTIONS(1123), [anon_sym_return] = ACTIONS(1126), [anon_sym_break] = ACTIONS(1129), [anon_sym_continue] = ACTIONS(1132), [anon_sym_goto] = ACTIONS(1135), [anon_sym_DASH_DASH] = ACTIONS(1034), [anon_sym_PLUS_PLUS] = ACTIONS(1034), [anon_sym_sizeof] = ACTIONS(1037), [sym_number_literal] = ACTIONS(1040), [anon_sym_L_SQUOTE] = ACTIONS(1043), [anon_sym_u_SQUOTE] = ACTIONS(1043), [anon_sym_U_SQUOTE] = ACTIONS(1043), [anon_sym_u8_SQUOTE] = ACTIONS(1043), [anon_sym_SQUOTE] = ACTIONS(1043), [anon_sym_L_DQUOTE] = ACTIONS(1046), [anon_sym_u_DQUOTE] = ACTIONS(1046), [anon_sym_U_DQUOTE] = ACTIONS(1046), [anon_sym_u8_DQUOTE] = ACTIONS(1046), [anon_sym_DQUOTE] = ACTIONS(1046), [sym_true] = ACTIONS(1049), [sym_false] = ACTIONS(1049), [sym_null] = ACTIONS(1049), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1052), [anon_sym_virtual] = ACTIONS(1055), [anon_sym_explicit] = ACTIONS(940), [sym_auto] = ACTIONS(1058), [anon_sym_typename] = ACTIONS(1061), [anon_sym_template] = ACTIONS(1064), [anon_sym_operator] = ACTIONS(940), [anon_sym_delete] = ACTIONS(1067), [anon_sym_throw] = ACTIONS(1138), [anon_sym_namespace] = ACTIONS(940), [anon_sym_using] = ACTIONS(940), [anon_sym_static_assert] = ACTIONS(940), [anon_sym_co_return] = ACTIONS(1141), [anon_sym_co_yield] = ACTIONS(1144), [anon_sym_try] = ACTIONS(1147), [anon_sym_co_await] = ACTIONS(1082), [anon_sym_new] = ACTIONS(1085), [sym_this] = ACTIONS(1049), [sym_nullptr] = ACTIONS(1049), [sym_raw_string_literal] = ACTIONS(1088), }, [73] = { [sym_declaration] = STATE(77), [sym_type_definition] = STATE(77), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(2976), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(77), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(77), [sym_labeled_statement] = STATE(77), [sym_expression_statement] = STATE(77), [sym_if_statement] = STATE(77), [sym_switch_statement] = STATE(77), [sym_while_statement] = STATE(77), [sym_do_statement] = STATE(77), [sym_for_statement] = STATE(77), [sym_return_statement] = STATE(77), [sym_break_statement] = STATE(77), [sym_continue_statement] = STATE(77), [sym_goto_statement] = STATE(77), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(77), [sym_co_return_statement] = STATE(77), [sym_co_yield_statement] = STATE(77), [sym_throw_statement] = STATE(77), [sym_try_statement] = STATE(77), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(185), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(77), [sym_identifier] = ACTIONS(1150), [aux_sym_preproc_include_token1] = ACTIONS(917), [aux_sym_preproc_def_token1] = ACTIONS(917), [aux_sym_preproc_if_token1] = ACTIONS(917), [aux_sym_preproc_ifdef_token1] = ACTIONS(917), [aux_sym_preproc_ifdef_token2] = ACTIONS(917), [sym_preproc_directive] = ACTIONS(917), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP_AMP] = ACTIONS(923), [anon_sym_AMP] = ACTIONS(925), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(917), [anon_sym___cdecl] = ACTIONS(917), [anon_sym___clrcall] = ACTIONS(917), [anon_sym___stdcall] = ACTIONS(917), [anon_sym___fastcall] = ACTIONS(917), [anon_sym___thiscall] = ACTIONS(917), [anon_sym___vectorcall] = ACTIONS(917), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(923), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_else] = ACTIONS(917), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(917), [anon_sym_default] = ACTIONS(917), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(917), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(917), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(917), [anon_sym_using] = ACTIONS(917), [anon_sym_static_assert] = ACTIONS(917), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [74] = { [sym_declaration] = STATE(73), [sym_type_definition] = STATE(73), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(2976), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(73), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(73), [sym_labeled_statement] = STATE(73), [sym_expression_statement] = STATE(73), [sym_if_statement] = STATE(73), [sym_switch_statement] = STATE(73), [sym_while_statement] = STATE(73), [sym_do_statement] = STATE(73), [sym_for_statement] = STATE(73), [sym_return_statement] = STATE(73), [sym_break_statement] = STATE(73), [sym_continue_statement] = STATE(73), [sym_goto_statement] = STATE(73), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(73), [sym_co_return_statement] = STATE(73), [sym_co_yield_statement] = STATE(73), [sym_throw_statement] = STATE(73), [sym_try_statement] = STATE(73), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(185), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(73), [sym_identifier] = ACTIONS(1150), [aux_sym_preproc_include_token1] = ACTIONS(1095), [aux_sym_preproc_def_token1] = ACTIONS(1095), [aux_sym_preproc_if_token1] = ACTIONS(1095), [aux_sym_preproc_ifdef_token1] = ACTIONS(1095), [aux_sym_preproc_ifdef_token2] = ACTIONS(1095), [sym_preproc_directive] = ACTIONS(1095), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP_AMP] = ACTIONS(1097), [anon_sym_AMP] = ACTIONS(925), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(1095), [anon_sym___cdecl] = ACTIONS(1095), [anon_sym___clrcall] = ACTIONS(1095), [anon_sym___stdcall] = ACTIONS(1095), [anon_sym___fastcall] = ACTIONS(1095), [anon_sym___thiscall] = ACTIONS(1095), [anon_sym___vectorcall] = ACTIONS(1095), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(1097), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_else] = ACTIONS(1095), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(1095), [anon_sym_default] = ACTIONS(1095), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(1095), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(1095), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(1095), [anon_sym_using] = ACTIONS(1095), [anon_sym_static_assert] = ACTIONS(1095), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [75] = { [sym_declaration] = STATE(75), [sym_type_definition] = STATE(75), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3030), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(75), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(75), [sym_labeled_statement] = STATE(75), [sym_expression_statement] = STATE(75), [sym_if_statement] = STATE(75), [sym_switch_statement] = STATE(75), [sym_while_statement] = STATE(75), [sym_do_statement] = STATE(75), [sym_for_statement] = STATE(75), [sym_return_statement] = STATE(75), [sym_break_statement] = STATE(75), [sym_continue_statement] = STATE(75), [sym_goto_statement] = STATE(75), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(75), [sym_co_return_statement] = STATE(75), [sym_co_yield_statement] = STATE(75), [sym_throw_statement] = STATE(75), [sym_try_statement] = STATE(75), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(187), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(75), [ts_builtin_sym_end] = ACTIONS(954), [sym_identifier] = ACTIONS(1152), [aux_sym_preproc_include_token1] = ACTIONS(940), [aux_sym_preproc_def_token1] = ACTIONS(940), [aux_sym_preproc_if_token1] = ACTIONS(940), [aux_sym_preproc_ifdef_token1] = ACTIONS(940), [aux_sym_preproc_ifdef_token2] = ACTIONS(940), [sym_preproc_directive] = ACTIONS(940), [anon_sym_LPAREN2] = ACTIONS(942), [anon_sym_BANG] = ACTIONS(945), [anon_sym_TILDE] = ACTIONS(945), [anon_sym_DASH] = ACTIONS(948), [anon_sym_PLUS] = ACTIONS(948), [anon_sym_STAR] = ACTIONS(951), [anon_sym_AMP_AMP] = ACTIONS(954), [anon_sym_AMP] = ACTIONS(956), [anon_sym_SEMI] = ACTIONS(1155), [anon_sym_typedef] = ACTIONS(1158), [anon_sym_extern] = ACTIONS(965), [anon_sym___attribute__] = ACTIONS(968), [anon_sym_COLON_COLON] = ACTIONS(971), [anon_sym_LBRACK_LBRACK] = ACTIONS(974), [anon_sym___declspec] = ACTIONS(977), [anon_sym___based] = ACTIONS(940), [anon_sym___cdecl] = ACTIONS(940), [anon_sym___clrcall] = ACTIONS(940), [anon_sym___stdcall] = ACTIONS(940), [anon_sym___fastcall] = ACTIONS(940), [anon_sym___thiscall] = ACTIONS(940), [anon_sym___vectorcall] = ACTIONS(940), [anon_sym_LBRACE] = ACTIONS(1161), [anon_sym_LBRACK] = ACTIONS(983), [anon_sym_static] = ACTIONS(965), [anon_sym_register] = ACTIONS(965), [anon_sym_inline] = ACTIONS(965), [anon_sym_thread_local] = ACTIONS(965), [anon_sym_const] = ACTIONS(986), [anon_sym_volatile] = ACTIONS(986), [anon_sym_restrict] = ACTIONS(986), [anon_sym__Atomic] = ACTIONS(986), [anon_sym_mutable] = ACTIONS(986), [anon_sym_constexpr] = ACTIONS(986), [anon_sym_signed] = ACTIONS(989), [anon_sym_unsigned] = ACTIONS(989), [anon_sym_long] = ACTIONS(989), [anon_sym_short] = ACTIONS(989), [sym_primitive_type] = ACTIONS(992), [anon_sym_enum] = ACTIONS(995), [anon_sym_class] = ACTIONS(998), [anon_sym_struct] = ACTIONS(1001), [anon_sym_union] = ACTIONS(1004), [anon_sym_if] = ACTIONS(1164), [anon_sym_else] = ACTIONS(940), [anon_sym_switch] = ACTIONS(1167), [anon_sym_case] = ACTIONS(940), [anon_sym_default] = ACTIONS(940), [anon_sym_while] = ACTIONS(1170), [anon_sym_do] = ACTIONS(1173), [anon_sym_for] = ACTIONS(1176), [anon_sym_return] = ACTIONS(1179), [anon_sym_break] = ACTIONS(1182), [anon_sym_continue] = ACTIONS(1185), [anon_sym_goto] = ACTIONS(1188), [anon_sym_DASH_DASH] = ACTIONS(1034), [anon_sym_PLUS_PLUS] = ACTIONS(1034), [anon_sym_sizeof] = ACTIONS(1037), [sym_number_literal] = ACTIONS(1040), [anon_sym_L_SQUOTE] = ACTIONS(1043), [anon_sym_u_SQUOTE] = ACTIONS(1043), [anon_sym_U_SQUOTE] = ACTIONS(1043), [anon_sym_u8_SQUOTE] = ACTIONS(1043), [anon_sym_SQUOTE] = ACTIONS(1043), [anon_sym_L_DQUOTE] = ACTIONS(1046), [anon_sym_u_DQUOTE] = ACTIONS(1046), [anon_sym_U_DQUOTE] = ACTIONS(1046), [anon_sym_u8_DQUOTE] = ACTIONS(1046), [anon_sym_DQUOTE] = ACTIONS(1046), [sym_true] = ACTIONS(1049), [sym_false] = ACTIONS(1049), [sym_null] = ACTIONS(1049), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1052), [anon_sym_virtual] = ACTIONS(1055), [anon_sym_explicit] = ACTIONS(940), [sym_auto] = ACTIONS(1058), [anon_sym_typename] = ACTIONS(1061), [anon_sym_template] = ACTIONS(1064), [anon_sym_operator] = ACTIONS(940), [anon_sym_delete] = ACTIONS(1067), [anon_sym_throw] = ACTIONS(1191), [anon_sym_namespace] = ACTIONS(940), [anon_sym_using] = ACTIONS(940), [anon_sym_static_assert] = ACTIONS(940), [anon_sym_co_return] = ACTIONS(1194), [anon_sym_co_yield] = ACTIONS(1197), [anon_sym_try] = ACTIONS(1200), [anon_sym_co_await] = ACTIONS(1082), [anon_sym_new] = ACTIONS(1085), [sym_this] = ACTIONS(1049), [sym_nullptr] = ACTIONS(1049), [sym_raw_string_literal] = ACTIONS(1088), }, [76] = { [sym_declaration] = STATE(75), [sym_type_definition] = STATE(75), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3030), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(75), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(75), [sym_labeled_statement] = STATE(75), [sym_expression_statement] = STATE(75), [sym_if_statement] = STATE(75), [sym_switch_statement] = STATE(75), [sym_while_statement] = STATE(75), [sym_do_statement] = STATE(75), [sym_for_statement] = STATE(75), [sym_return_statement] = STATE(75), [sym_break_statement] = STATE(75), [sym_continue_statement] = STATE(75), [sym_goto_statement] = STATE(75), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(75), [sym_co_return_statement] = STATE(75), [sym_co_yield_statement] = STATE(75), [sym_throw_statement] = STATE(75), [sym_try_statement] = STATE(75), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(187), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(75), [ts_builtin_sym_end] = ACTIONS(923), [sym_identifier] = ACTIONS(1203), [aux_sym_preproc_include_token1] = ACTIONS(917), [aux_sym_preproc_def_token1] = ACTIONS(917), [aux_sym_preproc_if_token1] = ACTIONS(917), [aux_sym_preproc_ifdef_token1] = ACTIONS(917), [aux_sym_preproc_ifdef_token2] = ACTIONS(917), [sym_preproc_directive] = ACTIONS(917), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP_AMP] = ACTIONS(923), [anon_sym_AMP] = ACTIONS(925), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_typedef] = ACTIONS(35), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(917), [anon_sym___cdecl] = ACTIONS(917), [anon_sym___clrcall] = ACTIONS(917), [anon_sym___stdcall] = ACTIONS(917), [anon_sym___fastcall] = ACTIONS(917), [anon_sym___thiscall] = ACTIONS(917), [anon_sym___vectorcall] = ACTIONS(917), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(71), [anon_sym_else] = ACTIONS(917), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(917), [anon_sym_default] = ACTIONS(917), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(917), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(917), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_namespace] = ACTIONS(917), [anon_sym_using] = ACTIONS(917), [anon_sym_static_assert] = ACTIONS(917), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [77] = { [sym_declaration] = STATE(77), [sym_type_definition] = STATE(77), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(2976), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(77), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(77), [sym_labeled_statement] = STATE(77), [sym_expression_statement] = STATE(77), [sym_if_statement] = STATE(77), [sym_switch_statement] = STATE(77), [sym_while_statement] = STATE(77), [sym_do_statement] = STATE(77), [sym_for_statement] = STATE(77), [sym_return_statement] = STATE(77), [sym_break_statement] = STATE(77), [sym_continue_statement] = STATE(77), [sym_goto_statement] = STATE(77), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(77), [sym_co_return_statement] = STATE(77), [sym_co_yield_statement] = STATE(77), [sym_throw_statement] = STATE(77), [sym_try_statement] = STATE(77), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(185), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(77), [sym_identifier] = ACTIONS(1205), [aux_sym_preproc_include_token1] = ACTIONS(940), [aux_sym_preproc_def_token1] = ACTIONS(940), [aux_sym_preproc_if_token1] = ACTIONS(940), [aux_sym_preproc_ifdef_token1] = ACTIONS(940), [aux_sym_preproc_ifdef_token2] = ACTIONS(940), [sym_preproc_directive] = ACTIONS(940), [anon_sym_LPAREN2] = ACTIONS(942), [anon_sym_BANG] = ACTIONS(945), [anon_sym_TILDE] = ACTIONS(945), [anon_sym_DASH] = ACTIONS(948), [anon_sym_PLUS] = ACTIONS(948), [anon_sym_STAR] = ACTIONS(951), [anon_sym_AMP_AMP] = ACTIONS(954), [anon_sym_AMP] = ACTIONS(956), [anon_sym_SEMI] = ACTIONS(1208), [anon_sym_typedef] = ACTIONS(1211), [anon_sym_extern] = ACTIONS(965), [anon_sym___attribute__] = ACTIONS(968), [anon_sym_COLON_COLON] = ACTIONS(971), [anon_sym_LBRACK_LBRACK] = ACTIONS(974), [anon_sym___declspec] = ACTIONS(977), [anon_sym___based] = ACTIONS(940), [anon_sym___cdecl] = ACTIONS(940), [anon_sym___clrcall] = ACTIONS(940), [anon_sym___stdcall] = ACTIONS(940), [anon_sym___fastcall] = ACTIONS(940), [anon_sym___thiscall] = ACTIONS(940), [anon_sym___vectorcall] = ACTIONS(940), [anon_sym_LBRACE] = ACTIONS(1214), [anon_sym_RBRACE] = ACTIONS(954), [anon_sym_LBRACK] = ACTIONS(983), [anon_sym_static] = ACTIONS(965), [anon_sym_register] = ACTIONS(965), [anon_sym_inline] = ACTIONS(965), [anon_sym_thread_local] = ACTIONS(965), [anon_sym_const] = ACTIONS(986), [anon_sym_volatile] = ACTIONS(986), [anon_sym_restrict] = ACTIONS(986), [anon_sym__Atomic] = ACTIONS(986), [anon_sym_mutable] = ACTIONS(986), [anon_sym_constexpr] = ACTIONS(986), [anon_sym_signed] = ACTIONS(989), [anon_sym_unsigned] = ACTIONS(989), [anon_sym_long] = ACTIONS(989), [anon_sym_short] = ACTIONS(989), [sym_primitive_type] = ACTIONS(992), [anon_sym_enum] = ACTIONS(995), [anon_sym_class] = ACTIONS(998), [anon_sym_struct] = ACTIONS(1001), [anon_sym_union] = ACTIONS(1004), [anon_sym_if] = ACTIONS(1217), [anon_sym_else] = ACTIONS(940), [anon_sym_switch] = ACTIONS(1220), [anon_sym_case] = ACTIONS(940), [anon_sym_default] = ACTIONS(940), [anon_sym_while] = ACTIONS(1223), [anon_sym_do] = ACTIONS(1226), [anon_sym_for] = ACTIONS(1229), [anon_sym_return] = ACTIONS(1232), [anon_sym_break] = ACTIONS(1235), [anon_sym_continue] = ACTIONS(1238), [anon_sym_goto] = ACTIONS(1241), [anon_sym_DASH_DASH] = ACTIONS(1034), [anon_sym_PLUS_PLUS] = ACTIONS(1034), [anon_sym_sizeof] = ACTIONS(1037), [sym_number_literal] = ACTIONS(1040), [anon_sym_L_SQUOTE] = ACTIONS(1043), [anon_sym_u_SQUOTE] = ACTIONS(1043), [anon_sym_U_SQUOTE] = ACTIONS(1043), [anon_sym_u8_SQUOTE] = ACTIONS(1043), [anon_sym_SQUOTE] = ACTIONS(1043), [anon_sym_L_DQUOTE] = ACTIONS(1046), [anon_sym_u_DQUOTE] = ACTIONS(1046), [anon_sym_U_DQUOTE] = ACTIONS(1046), [anon_sym_u8_DQUOTE] = ACTIONS(1046), [anon_sym_DQUOTE] = ACTIONS(1046), [sym_true] = ACTIONS(1049), [sym_false] = ACTIONS(1049), [sym_null] = ACTIONS(1049), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1052), [anon_sym_virtual] = ACTIONS(1055), [anon_sym_explicit] = ACTIONS(940), [sym_auto] = ACTIONS(1058), [anon_sym_typename] = ACTIONS(1061), [anon_sym_template] = ACTIONS(1064), [anon_sym_operator] = ACTIONS(940), [anon_sym_delete] = ACTIONS(1067), [anon_sym_throw] = ACTIONS(1244), [anon_sym_namespace] = ACTIONS(940), [anon_sym_using] = ACTIONS(940), [anon_sym_static_assert] = ACTIONS(940), [anon_sym_co_return] = ACTIONS(1247), [anon_sym_co_yield] = ACTIONS(1250), [anon_sym_try] = ACTIONS(1253), [anon_sym_co_await] = ACTIONS(1082), [anon_sym_new] = ACTIONS(1085), [sym_this] = ACTIONS(1049), [sym_nullptr] = ACTIONS(1049), [sym_raw_string_literal] = ACTIONS(1088), }, [78] = { [sym_declaration] = STATE(77), [sym_type_definition] = STATE(77), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(2976), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(77), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(77), [sym_labeled_statement] = STATE(77), [sym_expression_statement] = STATE(77), [sym_if_statement] = STATE(77), [sym_switch_statement] = STATE(77), [sym_while_statement] = STATE(77), [sym_do_statement] = STATE(77), [sym_for_statement] = STATE(77), [sym_return_statement] = STATE(77), [sym_break_statement] = STATE(77), [sym_continue_statement] = STATE(77), [sym_goto_statement] = STATE(77), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(77), [sym_co_return_statement] = STATE(77), [sym_co_yield_statement] = STATE(77), [sym_throw_statement] = STATE(77), [sym_try_statement] = STATE(77), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(185), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(77), [sym_identifier] = ACTIONS(1150), [aux_sym_preproc_include_token1] = ACTIONS(1091), [aux_sym_preproc_def_token1] = ACTIONS(1091), [aux_sym_preproc_if_token1] = ACTIONS(1091), [aux_sym_preproc_ifdef_token1] = ACTIONS(1091), [aux_sym_preproc_ifdef_token2] = ACTIONS(1091), [sym_preproc_directive] = ACTIONS(1091), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP_AMP] = ACTIONS(1093), [anon_sym_AMP] = ACTIONS(925), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(1091), [anon_sym___cdecl] = ACTIONS(1091), [anon_sym___clrcall] = ACTIONS(1091), [anon_sym___stdcall] = ACTIONS(1091), [anon_sym___fastcall] = ACTIONS(1091), [anon_sym___thiscall] = ACTIONS(1091), [anon_sym___vectorcall] = ACTIONS(1091), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(1093), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_else] = ACTIONS(1091), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(1091), [anon_sym_default] = ACTIONS(1091), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(1091), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(1091), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(1091), [anon_sym_using] = ACTIONS(1091), [anon_sym_static_assert] = ACTIONS(1091), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [79] = { [sym_declaration] = STATE(72), [sym_type_definition] = STATE(72), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3093), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(72), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(72), [sym_labeled_statement] = STATE(72), [sym_expression_statement] = STATE(72), [sym_if_statement] = STATE(72), [sym_switch_statement] = STATE(72), [sym_while_statement] = STATE(72), [sym_do_statement] = STATE(72), [sym_for_statement] = STATE(72), [sym_return_statement] = STATE(72), [sym_break_statement] = STATE(72), [sym_continue_statement] = STATE(72), [sym_goto_statement] = STATE(72), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(72), [sym_co_return_statement] = STATE(72), [sym_co_yield_statement] = STATE(72), [sym_throw_statement] = STATE(72), [sym_try_statement] = STATE(72), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(202), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(72), [sym_identifier] = ACTIONS(1256), [aux_sym_preproc_include_token1] = ACTIONS(917), [aux_sym_preproc_def_token1] = ACTIONS(917), [aux_sym_preproc_if_token1] = ACTIONS(917), [aux_sym_preproc_if_token2] = ACTIONS(917), [aux_sym_preproc_ifdef_token1] = ACTIONS(917), [aux_sym_preproc_ifdef_token2] = ACTIONS(917), [sym_preproc_directive] = ACTIONS(917), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP_AMP] = ACTIONS(923), [anon_sym_AMP] = ACTIONS(925), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_typedef] = ACTIONS(764), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(917), [anon_sym___cdecl] = ACTIONS(917), [anon_sym___clrcall] = ACTIONS(917), [anon_sym___stdcall] = ACTIONS(917), [anon_sym___fastcall] = ACTIONS(917), [anon_sym___thiscall] = ACTIONS(917), [anon_sym___vectorcall] = ACTIONS(917), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(770), [anon_sym_else] = ACTIONS(917), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(917), [anon_sym_default] = ACTIONS(917), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(917), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(917), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_namespace] = ACTIONS(917), [anon_sym_using] = ACTIONS(917), [anon_sym_static_assert] = ACTIONS(917), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [80] = { [sym_declaration] = STATE(72), [sym_type_definition] = STATE(72), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3093), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(72), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(72), [sym_labeled_statement] = STATE(72), [sym_expression_statement] = STATE(72), [sym_if_statement] = STATE(72), [sym_switch_statement] = STATE(72), [sym_while_statement] = STATE(72), [sym_do_statement] = STATE(72), [sym_for_statement] = STATE(72), [sym_return_statement] = STATE(72), [sym_break_statement] = STATE(72), [sym_continue_statement] = STATE(72), [sym_goto_statement] = STATE(72), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(72), [sym_co_return_statement] = STATE(72), [sym_co_yield_statement] = STATE(72), [sym_throw_statement] = STATE(72), [sym_try_statement] = STATE(72), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(202), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(72), [sym_identifier] = ACTIONS(1256), [aux_sym_preproc_include_token1] = ACTIONS(1091), [aux_sym_preproc_def_token1] = ACTIONS(1091), [aux_sym_preproc_if_token1] = ACTIONS(1091), [aux_sym_preproc_if_token2] = ACTIONS(1091), [aux_sym_preproc_ifdef_token1] = ACTIONS(1091), [aux_sym_preproc_ifdef_token2] = ACTIONS(1091), [sym_preproc_directive] = ACTIONS(1091), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP_AMP] = ACTIONS(1093), [anon_sym_AMP] = ACTIONS(925), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_typedef] = ACTIONS(764), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(1091), [anon_sym___cdecl] = ACTIONS(1091), [anon_sym___clrcall] = ACTIONS(1091), [anon_sym___stdcall] = ACTIONS(1091), [anon_sym___fastcall] = ACTIONS(1091), [anon_sym___thiscall] = ACTIONS(1091), [anon_sym___vectorcall] = ACTIONS(1091), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(770), [anon_sym_else] = ACTIONS(1091), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(1091), [anon_sym_default] = ACTIONS(1091), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(1091), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(1091), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_namespace] = ACTIONS(1091), [anon_sym_using] = ACTIONS(1091), [anon_sym_static_assert] = ACTIONS(1091), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [81] = { [sym_declaration] = STATE(78), [sym_type_definition] = STATE(78), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(2976), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(78), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(78), [sym_labeled_statement] = STATE(78), [sym_expression_statement] = STATE(78), [sym_if_statement] = STATE(78), [sym_switch_statement] = STATE(78), [sym_while_statement] = STATE(78), [sym_do_statement] = STATE(78), [sym_for_statement] = STATE(78), [sym_return_statement] = STATE(78), [sym_break_statement] = STATE(78), [sym_continue_statement] = STATE(78), [sym_goto_statement] = STATE(78), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(78), [sym_co_return_statement] = STATE(78), [sym_co_yield_statement] = STATE(78), [sym_throw_statement] = STATE(78), [sym_try_statement] = STATE(78), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(185), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(78), [sym_identifier] = ACTIONS(1150), [aux_sym_preproc_include_token1] = ACTIONS(933), [aux_sym_preproc_def_token1] = ACTIONS(933), [aux_sym_preproc_if_token1] = ACTIONS(933), [aux_sym_preproc_ifdef_token1] = ACTIONS(933), [aux_sym_preproc_ifdef_token2] = ACTIONS(933), [sym_preproc_directive] = ACTIONS(933), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP_AMP] = ACTIONS(935), [anon_sym_AMP] = ACTIONS(925), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_typedef] = ACTIONS(157), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(933), [anon_sym___cdecl] = ACTIONS(933), [anon_sym___clrcall] = ACTIONS(933), [anon_sym___stdcall] = ACTIONS(933), [anon_sym___fastcall] = ACTIONS(933), [anon_sym___thiscall] = ACTIONS(933), [anon_sym___vectorcall] = ACTIONS(933), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_RBRACE] = ACTIONS(935), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(167), [anon_sym_else] = ACTIONS(933), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(933), [anon_sym_default] = ACTIONS(933), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(933), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(933), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_namespace] = ACTIONS(933), [anon_sym_using] = ACTIONS(933), [anon_sym_static_assert] = ACTIONS(933), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [82] = { [sym_declaration] = STATE(79), [sym_type_definition] = STATE(79), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3093), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(79), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(79), [sym_labeled_statement] = STATE(79), [sym_expression_statement] = STATE(79), [sym_if_statement] = STATE(79), [sym_switch_statement] = STATE(79), [sym_while_statement] = STATE(79), [sym_do_statement] = STATE(79), [sym_for_statement] = STATE(79), [sym_return_statement] = STATE(79), [sym_break_statement] = STATE(79), [sym_continue_statement] = STATE(79), [sym_goto_statement] = STATE(79), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(79), [sym_co_return_statement] = STATE(79), [sym_co_yield_statement] = STATE(79), [sym_throw_statement] = STATE(79), [sym_try_statement] = STATE(79), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(202), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(79), [sym_identifier] = ACTIONS(1256), [aux_sym_preproc_include_token1] = ACTIONS(1095), [aux_sym_preproc_def_token1] = ACTIONS(1095), [aux_sym_preproc_if_token1] = ACTIONS(1095), [aux_sym_preproc_if_token2] = ACTIONS(1095), [aux_sym_preproc_ifdef_token1] = ACTIONS(1095), [aux_sym_preproc_ifdef_token2] = ACTIONS(1095), [sym_preproc_directive] = ACTIONS(1095), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP_AMP] = ACTIONS(1097), [anon_sym_AMP] = ACTIONS(925), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_typedef] = ACTIONS(764), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(1095), [anon_sym___cdecl] = ACTIONS(1095), [anon_sym___clrcall] = ACTIONS(1095), [anon_sym___stdcall] = ACTIONS(1095), [anon_sym___fastcall] = ACTIONS(1095), [anon_sym___thiscall] = ACTIONS(1095), [anon_sym___vectorcall] = ACTIONS(1095), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(770), [anon_sym_else] = ACTIONS(1095), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(1095), [anon_sym_default] = ACTIONS(1095), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(1095), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(1095), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_namespace] = ACTIONS(1095), [anon_sym_using] = ACTIONS(1095), [anon_sym_static_assert] = ACTIONS(1095), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [83] = { [sym_declaration] = STATE(76), [sym_type_definition] = STATE(76), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3030), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(76), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(76), [sym_labeled_statement] = STATE(76), [sym_expression_statement] = STATE(76), [sym_if_statement] = STATE(76), [sym_switch_statement] = STATE(76), [sym_while_statement] = STATE(76), [sym_do_statement] = STATE(76), [sym_for_statement] = STATE(76), [sym_return_statement] = STATE(76), [sym_break_statement] = STATE(76), [sym_continue_statement] = STATE(76), [sym_goto_statement] = STATE(76), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(76), [sym_co_return_statement] = STATE(76), [sym_co_yield_statement] = STATE(76), [sym_throw_statement] = STATE(76), [sym_try_statement] = STATE(76), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(187), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(76), [ts_builtin_sym_end] = ACTIONS(1097), [sym_identifier] = ACTIONS(1203), [aux_sym_preproc_include_token1] = ACTIONS(1095), [aux_sym_preproc_def_token1] = ACTIONS(1095), [aux_sym_preproc_if_token1] = ACTIONS(1095), [aux_sym_preproc_ifdef_token1] = ACTIONS(1095), [aux_sym_preproc_ifdef_token2] = ACTIONS(1095), [sym_preproc_directive] = ACTIONS(1095), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP_AMP] = ACTIONS(1097), [anon_sym_AMP] = ACTIONS(925), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_typedef] = ACTIONS(35), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(1095), [anon_sym___cdecl] = ACTIONS(1095), [anon_sym___clrcall] = ACTIONS(1095), [anon_sym___stdcall] = ACTIONS(1095), [anon_sym___fastcall] = ACTIONS(1095), [anon_sym___thiscall] = ACTIONS(1095), [anon_sym___vectorcall] = ACTIONS(1095), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(71), [anon_sym_else] = ACTIONS(1095), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(1095), [anon_sym_default] = ACTIONS(1095), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(1095), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(1095), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_namespace] = ACTIONS(1095), [anon_sym_using] = ACTIONS(1095), [anon_sym_static_assert] = ACTIONS(1095), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [84] = { [sym_declaration] = STATE(85), [sym_type_definition] = STATE(85), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3030), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(85), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(85), [sym_labeled_statement] = STATE(85), [sym_expression_statement] = STATE(85), [sym_if_statement] = STATE(85), [sym_switch_statement] = STATE(85), [sym_while_statement] = STATE(85), [sym_do_statement] = STATE(85), [sym_for_statement] = STATE(85), [sym_return_statement] = STATE(85), [sym_break_statement] = STATE(85), [sym_continue_statement] = STATE(85), [sym_goto_statement] = STATE(85), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(85), [sym_co_return_statement] = STATE(85), [sym_co_yield_statement] = STATE(85), [sym_throw_statement] = STATE(85), [sym_try_statement] = STATE(85), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(187), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(85), [ts_builtin_sym_end] = ACTIONS(935), [sym_identifier] = ACTIONS(1203), [aux_sym_preproc_include_token1] = ACTIONS(933), [aux_sym_preproc_def_token1] = ACTIONS(933), [aux_sym_preproc_if_token1] = ACTIONS(933), [aux_sym_preproc_ifdef_token1] = ACTIONS(933), [aux_sym_preproc_ifdef_token2] = ACTIONS(933), [sym_preproc_directive] = ACTIONS(933), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP_AMP] = ACTIONS(935), [anon_sym_AMP] = ACTIONS(925), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_typedef] = ACTIONS(35), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(933), [anon_sym___cdecl] = ACTIONS(933), [anon_sym___clrcall] = ACTIONS(933), [anon_sym___stdcall] = ACTIONS(933), [anon_sym___fastcall] = ACTIONS(933), [anon_sym___thiscall] = ACTIONS(933), [anon_sym___vectorcall] = ACTIONS(933), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(71), [anon_sym_else] = ACTIONS(933), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(933), [anon_sym_default] = ACTIONS(933), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(933), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(933), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_namespace] = ACTIONS(933), [anon_sym_using] = ACTIONS(933), [anon_sym_static_assert] = ACTIONS(933), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [85] = { [sym_declaration] = STATE(75), [sym_type_definition] = STATE(75), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3030), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(75), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(75), [sym_labeled_statement] = STATE(75), [sym_expression_statement] = STATE(75), [sym_if_statement] = STATE(75), [sym_switch_statement] = STATE(75), [sym_while_statement] = STATE(75), [sym_do_statement] = STATE(75), [sym_for_statement] = STATE(75), [sym_return_statement] = STATE(75), [sym_break_statement] = STATE(75), [sym_continue_statement] = STATE(75), [sym_goto_statement] = STATE(75), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(75), [sym_co_return_statement] = STATE(75), [sym_co_yield_statement] = STATE(75), [sym_throw_statement] = STATE(75), [sym_try_statement] = STATE(75), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(187), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(75), [ts_builtin_sym_end] = ACTIONS(1093), [sym_identifier] = ACTIONS(1203), [aux_sym_preproc_include_token1] = ACTIONS(1091), [aux_sym_preproc_def_token1] = ACTIONS(1091), [aux_sym_preproc_if_token1] = ACTIONS(1091), [aux_sym_preproc_ifdef_token1] = ACTIONS(1091), [aux_sym_preproc_ifdef_token2] = ACTIONS(1091), [sym_preproc_directive] = ACTIONS(1091), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP_AMP] = ACTIONS(1093), [anon_sym_AMP] = ACTIONS(925), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_typedef] = ACTIONS(35), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(1091), [anon_sym___cdecl] = ACTIONS(1091), [anon_sym___clrcall] = ACTIONS(1091), [anon_sym___stdcall] = ACTIONS(1091), [anon_sym___fastcall] = ACTIONS(1091), [anon_sym___thiscall] = ACTIONS(1091), [anon_sym___vectorcall] = ACTIONS(1091), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(71), [anon_sym_else] = ACTIONS(1091), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(1091), [anon_sym_default] = ACTIONS(1091), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(1091), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(1091), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_namespace] = ACTIONS(1091), [anon_sym_using] = ACTIONS(1091), [anon_sym_static_assert] = ACTIONS(1091), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [86] = { [sym_declaration] = STATE(80), [sym_type_definition] = STATE(80), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3093), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(80), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(80), [sym_labeled_statement] = STATE(80), [sym_expression_statement] = STATE(80), [sym_if_statement] = STATE(80), [sym_switch_statement] = STATE(80), [sym_while_statement] = STATE(80), [sym_do_statement] = STATE(80), [sym_for_statement] = STATE(80), [sym_return_statement] = STATE(80), [sym_break_statement] = STATE(80), [sym_continue_statement] = STATE(80), [sym_goto_statement] = STATE(80), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(80), [sym_co_return_statement] = STATE(80), [sym_co_yield_statement] = STATE(80), [sym_throw_statement] = STATE(80), [sym_try_statement] = STATE(80), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(202), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(80), [sym_identifier] = ACTIONS(1256), [aux_sym_preproc_include_token1] = ACTIONS(933), [aux_sym_preproc_def_token1] = ACTIONS(933), [aux_sym_preproc_if_token1] = ACTIONS(933), [aux_sym_preproc_if_token2] = ACTIONS(933), [aux_sym_preproc_ifdef_token1] = ACTIONS(933), [aux_sym_preproc_ifdef_token2] = ACTIONS(933), [sym_preproc_directive] = ACTIONS(933), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP_AMP] = ACTIONS(935), [anon_sym_AMP] = ACTIONS(925), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_typedef] = ACTIONS(764), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(933), [anon_sym___cdecl] = ACTIONS(933), [anon_sym___clrcall] = ACTIONS(933), [anon_sym___stdcall] = ACTIONS(933), [anon_sym___fastcall] = ACTIONS(933), [anon_sym___thiscall] = ACTIONS(933), [anon_sym___vectorcall] = ACTIONS(933), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(770), [anon_sym_else] = ACTIONS(933), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(933), [anon_sym_default] = ACTIONS(933), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(933), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(933), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_namespace] = ACTIONS(933), [anon_sym_using] = ACTIONS(933), [anon_sym_static_assert] = ACTIONS(933), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [87] = { [sym_declaration] = STATE(87), [sym_type_definition] = STATE(87), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(2996), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(87), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(87), [sym_labeled_statement] = STATE(87), [sym_expression_statement] = STATE(87), [sym_if_statement] = STATE(87), [sym_switch_statement] = STATE(87), [sym_while_statement] = STATE(87), [sym_do_statement] = STATE(87), [sym_for_statement] = STATE(87), [sym_return_statement] = STATE(87), [sym_break_statement] = STATE(87), [sym_continue_statement] = STATE(87), [sym_goto_statement] = STATE(87), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(87), [sym_co_return_statement] = STATE(87), [sym_co_yield_statement] = STATE(87), [sym_throw_statement] = STATE(87), [sym_try_statement] = STATE(87), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(204), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(87), [sym_identifier] = ACTIONS(1258), [anon_sym_LPAREN2] = ACTIONS(942), [anon_sym_BANG] = ACTIONS(945), [anon_sym_TILDE] = ACTIONS(945), [anon_sym_DASH] = ACTIONS(948), [anon_sym_PLUS] = ACTIONS(948), [anon_sym_STAR] = ACTIONS(951), [anon_sym_AMP] = ACTIONS(951), [anon_sym_SEMI] = ACTIONS(1261), [anon_sym_typedef] = ACTIONS(1264), [anon_sym_extern] = ACTIONS(965), [anon_sym___attribute__] = ACTIONS(968), [anon_sym_COLON_COLON] = ACTIONS(971), [anon_sym_LBRACK_LBRACK] = ACTIONS(974), [anon_sym___declspec] = ACTIONS(977), [anon_sym_LBRACE] = ACTIONS(1267), [anon_sym_LBRACK] = ACTIONS(983), [anon_sym_static] = ACTIONS(965), [anon_sym_register] = ACTIONS(965), [anon_sym_inline] = ACTIONS(965), [anon_sym_thread_local] = ACTIONS(965), [anon_sym_const] = ACTIONS(986), [anon_sym_volatile] = ACTIONS(986), [anon_sym_restrict] = ACTIONS(986), [anon_sym__Atomic] = ACTIONS(986), [anon_sym_mutable] = ACTIONS(986), [anon_sym_constexpr] = ACTIONS(986), [anon_sym_signed] = ACTIONS(989), [anon_sym_unsigned] = ACTIONS(989), [anon_sym_long] = ACTIONS(989), [anon_sym_short] = ACTIONS(989), [sym_primitive_type] = ACTIONS(992), [anon_sym_enum] = ACTIONS(995), [anon_sym_class] = ACTIONS(998), [anon_sym_struct] = ACTIONS(1001), [anon_sym_union] = ACTIONS(1004), [anon_sym_if] = ACTIONS(1270), [anon_sym_else] = ACTIONS(940), [anon_sym_switch] = ACTIONS(1273), [anon_sym_while] = ACTIONS(1276), [anon_sym_do] = ACTIONS(1279), [anon_sym_for] = ACTIONS(1282), [anon_sym_return] = ACTIONS(1285), [anon_sym_break] = ACTIONS(1288), [anon_sym_continue] = ACTIONS(1291), [anon_sym_goto] = ACTIONS(1294), [anon_sym_DASH_DASH] = ACTIONS(1034), [anon_sym_PLUS_PLUS] = ACTIONS(1034), [anon_sym_sizeof] = ACTIONS(1037), [sym_number_literal] = ACTIONS(1040), [anon_sym_L_SQUOTE] = ACTIONS(1043), [anon_sym_u_SQUOTE] = ACTIONS(1043), [anon_sym_U_SQUOTE] = ACTIONS(1043), [anon_sym_u8_SQUOTE] = ACTIONS(1043), [anon_sym_SQUOTE] = ACTIONS(1043), [anon_sym_L_DQUOTE] = ACTIONS(1046), [anon_sym_u_DQUOTE] = ACTIONS(1046), [anon_sym_U_DQUOTE] = ACTIONS(1046), [anon_sym_u8_DQUOTE] = ACTIONS(1046), [anon_sym_DQUOTE] = ACTIONS(1046), [sym_true] = ACTIONS(1049), [sym_false] = ACTIONS(1049), [sym_null] = ACTIONS(1049), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1052), [anon_sym_virtual] = ACTIONS(1055), [sym_auto] = ACTIONS(1058), [anon_sym_typename] = ACTIONS(1061), [anon_sym_template] = ACTIONS(1064), [anon_sym_delete] = ACTIONS(1067), [anon_sym_throw] = ACTIONS(1297), [anon_sym_co_return] = ACTIONS(1300), [anon_sym_co_yield] = ACTIONS(1303), [anon_sym_try] = ACTIONS(1306), [anon_sym_co_await] = ACTIONS(1082), [anon_sym_new] = ACTIONS(1085), [sym_this] = ACTIONS(1049), [sym_nullptr] = ACTIONS(1049), [sym_raw_string_literal] = ACTIONS(1088), }, [88] = { [sym_declaration] = STATE(90), [sym_type_definition] = STATE(90), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(2996), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(90), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(90), [sym_labeled_statement] = STATE(90), [sym_expression_statement] = STATE(90), [sym_if_statement] = STATE(90), [sym_switch_statement] = STATE(90), [sym_while_statement] = STATE(90), [sym_do_statement] = STATE(90), [sym_for_statement] = STATE(90), [sym_return_statement] = STATE(90), [sym_break_statement] = STATE(90), [sym_continue_statement] = STATE(90), [sym_goto_statement] = STATE(90), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(90), [sym_co_return_statement] = STATE(90), [sym_co_yield_statement] = STATE(90), [sym_throw_statement] = STATE(90), [sym_try_statement] = STATE(90), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(204), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(90), [sym_identifier] = ACTIONS(1309), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_typedef] = ACTIONS(1313), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym___declspec] = ACTIONS(45), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(1317), [anon_sym_else] = ACTIONS(933), [anon_sym_switch] = ACTIONS(1319), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [89] = { [sym_declaration] = STATE(87), [sym_type_definition] = STATE(87), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(2996), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(87), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(87), [sym_labeled_statement] = STATE(87), [sym_expression_statement] = STATE(87), [sym_if_statement] = STATE(87), [sym_switch_statement] = STATE(87), [sym_while_statement] = STATE(87), [sym_do_statement] = STATE(87), [sym_for_statement] = STATE(87), [sym_return_statement] = STATE(87), [sym_break_statement] = STATE(87), [sym_continue_statement] = STATE(87), [sym_goto_statement] = STATE(87), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(87), [sym_co_return_statement] = STATE(87), [sym_co_yield_statement] = STATE(87), [sym_throw_statement] = STATE(87), [sym_try_statement] = STATE(87), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(204), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(87), [sym_identifier] = ACTIONS(1309), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_typedef] = ACTIONS(1313), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym___declspec] = ACTIONS(45), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(1317), [anon_sym_else] = ACTIONS(917), [anon_sym_switch] = ACTIONS(1319), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [90] = { [sym_declaration] = STATE(87), [sym_type_definition] = STATE(87), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(2996), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(87), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(87), [sym_labeled_statement] = STATE(87), [sym_expression_statement] = STATE(87), [sym_if_statement] = STATE(87), [sym_switch_statement] = STATE(87), [sym_while_statement] = STATE(87), [sym_do_statement] = STATE(87), [sym_for_statement] = STATE(87), [sym_return_statement] = STATE(87), [sym_break_statement] = STATE(87), [sym_continue_statement] = STATE(87), [sym_goto_statement] = STATE(87), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(87), [sym_co_return_statement] = STATE(87), [sym_co_yield_statement] = STATE(87), [sym_throw_statement] = STATE(87), [sym_try_statement] = STATE(87), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(204), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(87), [sym_identifier] = ACTIONS(1309), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_typedef] = ACTIONS(1313), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym___declspec] = ACTIONS(45), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(1317), [anon_sym_else] = ACTIONS(1091), [anon_sym_switch] = ACTIONS(1319), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [91] = { [sym_declaration] = STATE(89), [sym_type_definition] = STATE(89), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(2996), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(939), [sym_ms_declspec_modifier] = STATE(1634), [sym_compound_statement] = STATE(89), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_attributed_non_case_statement] = STATE(89), [sym_labeled_statement] = STATE(89), [sym_expression_statement] = STATE(89), [sym_if_statement] = STATE(89), [sym_switch_statement] = STATE(89), [sym_while_statement] = STATE(89), [sym_do_statement] = STATE(89), [sym_for_statement] = STATE(89), [sym_return_statement] = STATE(89), [sym_break_statement] = STATE(89), [sym_continue_statement] = STATE(89), [sym_goto_statement] = STATE(89), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(89), [sym_co_return_statement] = STATE(89), [sym_co_yield_statement] = STATE(89), [sym_throw_statement] = STATE(89), [sym_try_statement] = STATE(89), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_attributed_declarator_repeat1] = STATE(204), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_case_statement_repeat1] = STATE(89), [sym_identifier] = ACTIONS(1309), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_typedef] = ACTIONS(1313), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym___declspec] = ACTIONS(45), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_if] = ACTIONS(1317), [anon_sym_else] = ACTIONS(1095), [anon_sym_switch] = ACTIONS(1319), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [92] = { [sym__declaration_modifiers] = STATE(1629), [sym__declaration_specifiers] = STATE(2000), [sym_attribute_specifier] = STATE(1629), [sym_attribute_declaration] = STATE(1629), [sym_ms_declspec_modifier] = STATE(1629), [sym_storage_class_specifier] = STATE(1629), [sym_type_qualifier] = STATE(1629), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_parameter_declaration] = STATE(4410), [sym__expression] = STATE(2717), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4509), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1629), [sym_dependent_type] = STATE(2326), [sym_optional_parameter_declaration] = STATE(4410), [sym_variadic_parameter_declaration] = STATE(4410), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3655), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1629), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [sym_identifier] = ACTIONS(1343), [anon_sym_DOT_DOT_DOT] = ACTIONS(1345), [anon_sym_RPAREN] = ACTIONS(1347), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(1353), [anon_sym_class] = ACTIONS(1355), [anon_sym_struct] = ACTIONS(1357), [anon_sym_union] = ACTIONS(1359), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(1361), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [93] = { [sym_preproc_def] = STATE(106), [sym_preproc_function_def] = STATE(106), [sym_preproc_call] = STATE(106), [sym_preproc_if_in_field_declaration_list] = STATE(106), [sym_preproc_ifdef_in_field_declaration_list] = STATE(106), [sym_preproc_else_in_field_declaration_list] = STATE(5070), [sym_preproc_elif_in_field_declaration_list] = STATE(5070), [sym_type_definition] = STATE(106), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3257), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3763), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(106), [sym_field_declaration] = STATE(106), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1373), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(106), [sym_operator_cast] = STATE(4339), [sym_inline_method_definition] = STATE(106), [sym__constructor_specifiers] = STATE(1373), [sym_operator_cast_definition] = STATE(106), [sym_operator_cast_declaration] = STATE(106), [sym_constructor_or_destructor_definition] = STATE(106), [sym_constructor_or_destructor_declaration] = STATE(106), [sym_friend_declaration] = STATE(106), [sym_access_specifier] = STATE(106), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(106), [sym_alias_declaration] = STATE(106), [sym_static_assert_declaration] = STATE(106), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4339), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(106), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1373), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1365), [aux_sym_preproc_if_token1] = ACTIONS(1367), [aux_sym_preproc_if_token2] = ACTIONS(1369), [aux_sym_preproc_ifdef_token1] = ACTIONS(1371), [aux_sym_preproc_ifdef_token2] = ACTIONS(1371), [aux_sym_preproc_else_token1] = ACTIONS(1373), [aux_sym_preproc_elif_token1] = ACTIONS(1375), [sym_preproc_directive] = ACTIONS(1377), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1387), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1407), [anon_sym_private] = ACTIONS(1407), [anon_sym_protected] = ACTIONS(1407), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1411), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1413), [anon_sym_using] = ACTIONS(1415), [anon_sym_static_assert] = ACTIONS(1417), }, [94] = { [sym_preproc_def] = STATE(109), [sym_preproc_function_def] = STATE(109), [sym_preproc_call] = STATE(109), [sym_preproc_if_in_field_declaration_list] = STATE(109), [sym_preproc_ifdef_in_field_declaration_list] = STATE(109), [sym_preproc_else_in_field_declaration_list] = STATE(5380), [sym_preproc_elif_in_field_declaration_list] = STATE(5380), [sym_type_definition] = STATE(109), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3257), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3763), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(109), [sym_field_declaration] = STATE(109), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1373), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(109), [sym_operator_cast] = STATE(4339), [sym_inline_method_definition] = STATE(109), [sym__constructor_specifiers] = STATE(1373), [sym_operator_cast_definition] = STATE(109), [sym_operator_cast_declaration] = STATE(109), [sym_constructor_or_destructor_definition] = STATE(109), [sym_constructor_or_destructor_declaration] = STATE(109), [sym_friend_declaration] = STATE(109), [sym_access_specifier] = STATE(109), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(109), [sym_alias_declaration] = STATE(109), [sym_static_assert_declaration] = STATE(109), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4339), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(109), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1373), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1365), [aux_sym_preproc_if_token1] = ACTIONS(1367), [aux_sym_preproc_if_token2] = ACTIONS(1419), [aux_sym_preproc_ifdef_token1] = ACTIONS(1371), [aux_sym_preproc_ifdef_token2] = ACTIONS(1371), [aux_sym_preproc_else_token1] = ACTIONS(1373), [aux_sym_preproc_elif_token1] = ACTIONS(1375), [sym_preproc_directive] = ACTIONS(1377), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1387), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1407), [anon_sym_private] = ACTIONS(1407), [anon_sym_protected] = ACTIONS(1407), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1411), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1413), [anon_sym_using] = ACTIONS(1415), [anon_sym_static_assert] = ACTIONS(1417), }, [95] = { [sym_preproc_def] = STATE(109), [sym_preproc_function_def] = STATE(109), [sym_preproc_call] = STATE(109), [sym_preproc_if_in_field_declaration_list] = STATE(109), [sym_preproc_ifdef_in_field_declaration_list] = STATE(109), [sym_preproc_else_in_field_declaration_list] = STATE(5076), [sym_preproc_elif_in_field_declaration_list] = STATE(5076), [sym_type_definition] = STATE(109), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3257), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3763), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(109), [sym_field_declaration] = STATE(109), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1373), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(109), [sym_operator_cast] = STATE(4339), [sym_inline_method_definition] = STATE(109), [sym__constructor_specifiers] = STATE(1373), [sym_operator_cast_definition] = STATE(109), [sym_operator_cast_declaration] = STATE(109), [sym_constructor_or_destructor_definition] = STATE(109), [sym_constructor_or_destructor_declaration] = STATE(109), [sym_friend_declaration] = STATE(109), [sym_access_specifier] = STATE(109), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(109), [sym_alias_declaration] = STATE(109), [sym_static_assert_declaration] = STATE(109), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4339), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(109), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1373), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1365), [aux_sym_preproc_if_token1] = ACTIONS(1367), [aux_sym_preproc_if_token2] = ACTIONS(1421), [aux_sym_preproc_ifdef_token1] = ACTIONS(1371), [aux_sym_preproc_ifdef_token2] = ACTIONS(1371), [aux_sym_preproc_else_token1] = ACTIONS(1373), [aux_sym_preproc_elif_token1] = ACTIONS(1375), [sym_preproc_directive] = ACTIONS(1377), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1387), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1407), [anon_sym_private] = ACTIONS(1407), [anon_sym_protected] = ACTIONS(1407), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1411), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1413), [anon_sym_using] = ACTIONS(1415), [anon_sym_static_assert] = ACTIONS(1417), }, [96] = { [sym_preproc_def] = STATE(99), [sym_preproc_function_def] = STATE(99), [sym_preproc_call] = STATE(99), [sym_preproc_if_in_field_declaration_list] = STATE(99), [sym_preproc_ifdef_in_field_declaration_list] = STATE(99), [sym_preproc_else_in_field_declaration_list] = STATE(5407), [sym_preproc_elif_in_field_declaration_list] = STATE(5407), [sym_type_definition] = STATE(99), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3257), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3763), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(99), [sym_field_declaration] = STATE(99), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1373), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(99), [sym_operator_cast] = STATE(4339), [sym_inline_method_definition] = STATE(99), [sym__constructor_specifiers] = STATE(1373), [sym_operator_cast_definition] = STATE(99), [sym_operator_cast_declaration] = STATE(99), [sym_constructor_or_destructor_definition] = STATE(99), [sym_constructor_or_destructor_declaration] = STATE(99), [sym_friend_declaration] = STATE(99), [sym_access_specifier] = STATE(99), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(99), [sym_alias_declaration] = STATE(99), [sym_static_assert_declaration] = STATE(99), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4339), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(99), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1373), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1365), [aux_sym_preproc_if_token1] = ACTIONS(1367), [aux_sym_preproc_if_token2] = ACTIONS(1423), [aux_sym_preproc_ifdef_token1] = ACTIONS(1371), [aux_sym_preproc_ifdef_token2] = ACTIONS(1371), [aux_sym_preproc_else_token1] = ACTIONS(1373), [aux_sym_preproc_elif_token1] = ACTIONS(1375), [sym_preproc_directive] = ACTIONS(1377), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1387), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1407), [anon_sym_private] = ACTIONS(1407), [anon_sym_protected] = ACTIONS(1407), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1411), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1413), [anon_sym_using] = ACTIONS(1415), [anon_sym_static_assert] = ACTIONS(1417), }, [97] = { [sym_preproc_def] = STATE(94), [sym_preproc_function_def] = STATE(94), [sym_preproc_call] = STATE(94), [sym_preproc_if_in_field_declaration_list] = STATE(94), [sym_preproc_ifdef_in_field_declaration_list] = STATE(94), [sym_preproc_else_in_field_declaration_list] = STATE(5420), [sym_preproc_elif_in_field_declaration_list] = STATE(5420), [sym_type_definition] = STATE(94), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3257), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3763), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(94), [sym_field_declaration] = STATE(94), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1373), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(94), [sym_operator_cast] = STATE(4339), [sym_inline_method_definition] = STATE(94), [sym__constructor_specifiers] = STATE(1373), [sym_operator_cast_definition] = STATE(94), [sym_operator_cast_declaration] = STATE(94), [sym_constructor_or_destructor_definition] = STATE(94), [sym_constructor_or_destructor_declaration] = STATE(94), [sym_friend_declaration] = STATE(94), [sym_access_specifier] = STATE(94), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(94), [sym_alias_declaration] = STATE(94), [sym_static_assert_declaration] = STATE(94), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4339), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(94), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1373), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1365), [aux_sym_preproc_if_token1] = ACTIONS(1367), [aux_sym_preproc_if_token2] = ACTIONS(1425), [aux_sym_preproc_ifdef_token1] = ACTIONS(1371), [aux_sym_preproc_ifdef_token2] = ACTIONS(1371), [aux_sym_preproc_else_token1] = ACTIONS(1373), [aux_sym_preproc_elif_token1] = ACTIONS(1375), [sym_preproc_directive] = ACTIONS(1377), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1387), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1407), [anon_sym_private] = ACTIONS(1407), [anon_sym_protected] = ACTIONS(1407), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1411), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1413), [anon_sym_using] = ACTIONS(1415), [anon_sym_static_assert] = ACTIONS(1417), }, [98] = { [sym_preproc_def] = STATE(102), [sym_preproc_function_def] = STATE(102), [sym_preproc_call] = STATE(102), [sym_preproc_if_in_field_declaration_list] = STATE(102), [sym_preproc_ifdef_in_field_declaration_list] = STATE(102), [sym_preproc_else_in_field_declaration_list] = STATE(5156), [sym_preproc_elif_in_field_declaration_list] = STATE(5156), [sym_type_definition] = STATE(102), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3257), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3763), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(102), [sym_field_declaration] = STATE(102), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1373), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(102), [sym_operator_cast] = STATE(4339), [sym_inline_method_definition] = STATE(102), [sym__constructor_specifiers] = STATE(1373), [sym_operator_cast_definition] = STATE(102), [sym_operator_cast_declaration] = STATE(102), [sym_constructor_or_destructor_definition] = STATE(102), [sym_constructor_or_destructor_declaration] = STATE(102), [sym_friend_declaration] = STATE(102), [sym_access_specifier] = STATE(102), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(102), [sym_alias_declaration] = STATE(102), [sym_static_assert_declaration] = STATE(102), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4339), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(102), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1373), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1365), [aux_sym_preproc_if_token1] = ACTIONS(1367), [aux_sym_preproc_if_token2] = ACTIONS(1427), [aux_sym_preproc_ifdef_token1] = ACTIONS(1371), [aux_sym_preproc_ifdef_token2] = ACTIONS(1371), [aux_sym_preproc_else_token1] = ACTIONS(1373), [aux_sym_preproc_elif_token1] = ACTIONS(1375), [sym_preproc_directive] = ACTIONS(1377), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1387), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1407), [anon_sym_private] = ACTIONS(1407), [anon_sym_protected] = ACTIONS(1407), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1411), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1413), [anon_sym_using] = ACTIONS(1415), [anon_sym_static_assert] = ACTIONS(1417), }, [99] = { [sym_preproc_def] = STATE(109), [sym_preproc_function_def] = STATE(109), [sym_preproc_call] = STATE(109), [sym_preproc_if_in_field_declaration_list] = STATE(109), [sym_preproc_ifdef_in_field_declaration_list] = STATE(109), [sym_preproc_else_in_field_declaration_list] = STATE(5293), [sym_preproc_elif_in_field_declaration_list] = STATE(5293), [sym_type_definition] = STATE(109), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3257), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3763), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(109), [sym_field_declaration] = STATE(109), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1373), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(109), [sym_operator_cast] = STATE(4339), [sym_inline_method_definition] = STATE(109), [sym__constructor_specifiers] = STATE(1373), [sym_operator_cast_definition] = STATE(109), [sym_operator_cast_declaration] = STATE(109), [sym_constructor_or_destructor_definition] = STATE(109), [sym_constructor_or_destructor_declaration] = STATE(109), [sym_friend_declaration] = STATE(109), [sym_access_specifier] = STATE(109), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(109), [sym_alias_declaration] = STATE(109), [sym_static_assert_declaration] = STATE(109), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4339), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(109), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1373), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1365), [aux_sym_preproc_if_token1] = ACTIONS(1367), [aux_sym_preproc_if_token2] = ACTIONS(1429), [aux_sym_preproc_ifdef_token1] = ACTIONS(1371), [aux_sym_preproc_ifdef_token2] = ACTIONS(1371), [aux_sym_preproc_else_token1] = ACTIONS(1373), [aux_sym_preproc_elif_token1] = ACTIONS(1375), [sym_preproc_directive] = ACTIONS(1377), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1387), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1407), [anon_sym_private] = ACTIONS(1407), [anon_sym_protected] = ACTIONS(1407), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1411), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1413), [anon_sym_using] = ACTIONS(1415), [anon_sym_static_assert] = ACTIONS(1417), }, [100] = { [sym_preproc_def] = STATE(95), [sym_preproc_function_def] = STATE(95), [sym_preproc_call] = STATE(95), [sym_preproc_if_in_field_declaration_list] = STATE(95), [sym_preproc_ifdef_in_field_declaration_list] = STATE(95), [sym_preproc_else_in_field_declaration_list] = STATE(5362), [sym_preproc_elif_in_field_declaration_list] = STATE(5362), [sym_type_definition] = STATE(95), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3257), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3763), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(95), [sym_field_declaration] = STATE(95), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1373), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(95), [sym_operator_cast] = STATE(4339), [sym_inline_method_definition] = STATE(95), [sym__constructor_specifiers] = STATE(1373), [sym_operator_cast_definition] = STATE(95), [sym_operator_cast_declaration] = STATE(95), [sym_constructor_or_destructor_definition] = STATE(95), [sym_constructor_or_destructor_declaration] = STATE(95), [sym_friend_declaration] = STATE(95), [sym_access_specifier] = STATE(95), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(95), [sym_alias_declaration] = STATE(95), [sym_static_assert_declaration] = STATE(95), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4339), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(95), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1373), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1365), [aux_sym_preproc_if_token1] = ACTIONS(1367), [aux_sym_preproc_if_token2] = ACTIONS(1431), [aux_sym_preproc_ifdef_token1] = ACTIONS(1371), [aux_sym_preproc_ifdef_token2] = ACTIONS(1371), [aux_sym_preproc_else_token1] = ACTIONS(1373), [aux_sym_preproc_elif_token1] = ACTIONS(1375), [sym_preproc_directive] = ACTIONS(1377), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1387), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1407), [anon_sym_private] = ACTIONS(1407), [anon_sym_protected] = ACTIONS(1407), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1411), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1413), [anon_sym_using] = ACTIONS(1415), [anon_sym_static_assert] = ACTIONS(1417), }, [101] = { [sym_preproc_def] = STATE(105), [sym_preproc_function_def] = STATE(105), [sym_preproc_call] = STATE(105), [sym_preproc_if_in_field_declaration_list] = STATE(105), [sym_preproc_ifdef_in_field_declaration_list] = STATE(105), [sym_preproc_else_in_field_declaration_list] = STATE(5302), [sym_preproc_elif_in_field_declaration_list] = STATE(5302), [sym_type_definition] = STATE(105), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3257), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3763), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(105), [sym_field_declaration] = STATE(105), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1373), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(105), [sym_operator_cast] = STATE(4339), [sym_inline_method_definition] = STATE(105), [sym__constructor_specifiers] = STATE(1373), [sym_operator_cast_definition] = STATE(105), [sym_operator_cast_declaration] = STATE(105), [sym_constructor_or_destructor_definition] = STATE(105), [sym_constructor_or_destructor_declaration] = STATE(105), [sym_friend_declaration] = STATE(105), [sym_access_specifier] = STATE(105), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(105), [sym_alias_declaration] = STATE(105), [sym_static_assert_declaration] = STATE(105), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4339), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(105), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1373), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1365), [aux_sym_preproc_if_token1] = ACTIONS(1367), [aux_sym_preproc_if_token2] = ACTIONS(1433), [aux_sym_preproc_ifdef_token1] = ACTIONS(1371), [aux_sym_preproc_ifdef_token2] = ACTIONS(1371), [aux_sym_preproc_else_token1] = ACTIONS(1373), [aux_sym_preproc_elif_token1] = ACTIONS(1375), [sym_preproc_directive] = ACTIONS(1377), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1387), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1407), [anon_sym_private] = ACTIONS(1407), [anon_sym_protected] = ACTIONS(1407), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1411), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1413), [anon_sym_using] = ACTIONS(1415), [anon_sym_static_assert] = ACTIONS(1417), }, [102] = { [sym_preproc_def] = STATE(109), [sym_preproc_function_def] = STATE(109), [sym_preproc_call] = STATE(109), [sym_preproc_if_in_field_declaration_list] = STATE(109), [sym_preproc_ifdef_in_field_declaration_list] = STATE(109), [sym_preproc_else_in_field_declaration_list] = STATE(5089), [sym_preproc_elif_in_field_declaration_list] = STATE(5089), [sym_type_definition] = STATE(109), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3257), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3763), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(109), [sym_field_declaration] = STATE(109), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1373), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(109), [sym_operator_cast] = STATE(4339), [sym_inline_method_definition] = STATE(109), [sym__constructor_specifiers] = STATE(1373), [sym_operator_cast_definition] = STATE(109), [sym_operator_cast_declaration] = STATE(109), [sym_constructor_or_destructor_definition] = STATE(109), [sym_constructor_or_destructor_declaration] = STATE(109), [sym_friend_declaration] = STATE(109), [sym_access_specifier] = STATE(109), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(109), [sym_alias_declaration] = STATE(109), [sym_static_assert_declaration] = STATE(109), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4339), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(109), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1373), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1365), [aux_sym_preproc_if_token1] = ACTIONS(1367), [aux_sym_preproc_if_token2] = ACTIONS(1435), [aux_sym_preproc_ifdef_token1] = ACTIONS(1371), [aux_sym_preproc_ifdef_token2] = ACTIONS(1371), [aux_sym_preproc_else_token1] = ACTIONS(1373), [aux_sym_preproc_elif_token1] = ACTIONS(1375), [sym_preproc_directive] = ACTIONS(1377), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1387), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1407), [anon_sym_private] = ACTIONS(1407), [anon_sym_protected] = ACTIONS(1407), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1411), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1413), [anon_sym_using] = ACTIONS(1415), [anon_sym_static_assert] = ACTIONS(1417), }, [103] = { [sym_preproc_def] = STATE(104), [sym_preproc_function_def] = STATE(104), [sym_preproc_call] = STATE(104), [sym_preproc_if_in_field_declaration_list] = STATE(104), [sym_preproc_ifdef_in_field_declaration_list] = STATE(104), [sym_preproc_else_in_field_declaration_list] = STATE(5082), [sym_preproc_elif_in_field_declaration_list] = STATE(5082), [sym_type_definition] = STATE(104), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3257), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3763), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(104), [sym_field_declaration] = STATE(104), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1373), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(104), [sym_operator_cast] = STATE(4339), [sym_inline_method_definition] = STATE(104), [sym__constructor_specifiers] = STATE(1373), [sym_operator_cast_definition] = STATE(104), [sym_operator_cast_declaration] = STATE(104), [sym_constructor_or_destructor_definition] = STATE(104), [sym_constructor_or_destructor_declaration] = STATE(104), [sym_friend_declaration] = STATE(104), [sym_access_specifier] = STATE(104), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(104), [sym_alias_declaration] = STATE(104), [sym_static_assert_declaration] = STATE(104), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4339), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(104), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1373), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1365), [aux_sym_preproc_if_token1] = ACTIONS(1367), [aux_sym_preproc_if_token2] = ACTIONS(1437), [aux_sym_preproc_ifdef_token1] = ACTIONS(1371), [aux_sym_preproc_ifdef_token2] = ACTIONS(1371), [aux_sym_preproc_else_token1] = ACTIONS(1373), [aux_sym_preproc_elif_token1] = ACTIONS(1375), [sym_preproc_directive] = ACTIONS(1377), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1387), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1407), [anon_sym_private] = ACTIONS(1407), [anon_sym_protected] = ACTIONS(1407), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1411), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1413), [anon_sym_using] = ACTIONS(1415), [anon_sym_static_assert] = ACTIONS(1417), }, [104] = { [sym_preproc_def] = STATE(109), [sym_preproc_function_def] = STATE(109), [sym_preproc_call] = STATE(109), [sym_preproc_if_in_field_declaration_list] = STATE(109), [sym_preproc_ifdef_in_field_declaration_list] = STATE(109), [sym_preproc_else_in_field_declaration_list] = STATE(5079), [sym_preproc_elif_in_field_declaration_list] = STATE(5079), [sym_type_definition] = STATE(109), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3257), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3763), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(109), [sym_field_declaration] = STATE(109), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1373), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(109), [sym_operator_cast] = STATE(4339), [sym_inline_method_definition] = STATE(109), [sym__constructor_specifiers] = STATE(1373), [sym_operator_cast_definition] = STATE(109), [sym_operator_cast_declaration] = STATE(109), [sym_constructor_or_destructor_definition] = STATE(109), [sym_constructor_or_destructor_declaration] = STATE(109), [sym_friend_declaration] = STATE(109), [sym_access_specifier] = STATE(109), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(109), [sym_alias_declaration] = STATE(109), [sym_static_assert_declaration] = STATE(109), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4339), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(109), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1373), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1365), [aux_sym_preproc_if_token1] = ACTIONS(1367), [aux_sym_preproc_if_token2] = ACTIONS(1439), [aux_sym_preproc_ifdef_token1] = ACTIONS(1371), [aux_sym_preproc_ifdef_token2] = ACTIONS(1371), [aux_sym_preproc_else_token1] = ACTIONS(1373), [aux_sym_preproc_elif_token1] = ACTIONS(1375), [sym_preproc_directive] = ACTIONS(1377), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1387), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1407), [anon_sym_private] = ACTIONS(1407), [anon_sym_protected] = ACTIONS(1407), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1411), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1413), [anon_sym_using] = ACTIONS(1415), [anon_sym_static_assert] = ACTIONS(1417), }, [105] = { [sym_preproc_def] = STATE(109), [sym_preproc_function_def] = STATE(109), [sym_preproc_call] = STATE(109), [sym_preproc_if_in_field_declaration_list] = STATE(109), [sym_preproc_ifdef_in_field_declaration_list] = STATE(109), [sym_preproc_else_in_field_declaration_list] = STATE(5323), [sym_preproc_elif_in_field_declaration_list] = STATE(5323), [sym_type_definition] = STATE(109), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3257), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3763), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(109), [sym_field_declaration] = STATE(109), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1373), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(109), [sym_operator_cast] = STATE(4339), [sym_inline_method_definition] = STATE(109), [sym__constructor_specifiers] = STATE(1373), [sym_operator_cast_definition] = STATE(109), [sym_operator_cast_declaration] = STATE(109), [sym_constructor_or_destructor_definition] = STATE(109), [sym_constructor_or_destructor_declaration] = STATE(109), [sym_friend_declaration] = STATE(109), [sym_access_specifier] = STATE(109), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(109), [sym_alias_declaration] = STATE(109), [sym_static_assert_declaration] = STATE(109), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4339), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(109), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1373), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1365), [aux_sym_preproc_if_token1] = ACTIONS(1367), [aux_sym_preproc_if_token2] = ACTIONS(1441), [aux_sym_preproc_ifdef_token1] = ACTIONS(1371), [aux_sym_preproc_ifdef_token2] = ACTIONS(1371), [aux_sym_preproc_else_token1] = ACTIONS(1373), [aux_sym_preproc_elif_token1] = ACTIONS(1375), [sym_preproc_directive] = ACTIONS(1377), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1387), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1407), [anon_sym_private] = ACTIONS(1407), [anon_sym_protected] = ACTIONS(1407), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1411), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1413), [anon_sym_using] = ACTIONS(1415), [anon_sym_static_assert] = ACTIONS(1417), }, [106] = { [sym_preproc_def] = STATE(109), [sym_preproc_function_def] = STATE(109), [sym_preproc_call] = STATE(109), [sym_preproc_if_in_field_declaration_list] = STATE(109), [sym_preproc_ifdef_in_field_declaration_list] = STATE(109), [sym_preproc_else_in_field_declaration_list] = STATE(5098), [sym_preproc_elif_in_field_declaration_list] = STATE(5098), [sym_type_definition] = STATE(109), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3257), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3763), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(109), [sym_field_declaration] = STATE(109), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1373), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(109), [sym_operator_cast] = STATE(4339), [sym_inline_method_definition] = STATE(109), [sym__constructor_specifiers] = STATE(1373), [sym_operator_cast_definition] = STATE(109), [sym_operator_cast_declaration] = STATE(109), [sym_constructor_or_destructor_definition] = STATE(109), [sym_constructor_or_destructor_declaration] = STATE(109), [sym_friend_declaration] = STATE(109), [sym_access_specifier] = STATE(109), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(109), [sym_alias_declaration] = STATE(109), [sym_static_assert_declaration] = STATE(109), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4339), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(109), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1373), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1365), [aux_sym_preproc_if_token1] = ACTIONS(1367), [aux_sym_preproc_if_token2] = ACTIONS(1443), [aux_sym_preproc_ifdef_token1] = ACTIONS(1371), [aux_sym_preproc_ifdef_token2] = ACTIONS(1371), [aux_sym_preproc_else_token1] = ACTIONS(1373), [aux_sym_preproc_elif_token1] = ACTIONS(1375), [sym_preproc_directive] = ACTIONS(1377), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1387), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1407), [anon_sym_private] = ACTIONS(1407), [anon_sym_protected] = ACTIONS(1407), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1411), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1413), [anon_sym_using] = ACTIONS(1415), [anon_sym_static_assert] = ACTIONS(1417), }, [107] = { [sym_declaration] = STATE(1113), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3038), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(1634), [sym_ms_declspec_modifier] = STATE(1634), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_expression_statement] = STATE(1113), [sym__expression] = STATE(2708), [sym_comma_expression] = STATE(4834), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_condition_declaration] = STATE(5281), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [sym_identifier] = ACTIONS(1445), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1447), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [108] = { [sym_declaration] = STATE(1101), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3038), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(1634), [sym_ms_declspec_modifier] = STATE(1634), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_expression_statement] = STATE(1101), [sym__expression] = STATE(2725), [sym_comma_expression] = STATE(4973), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_condition_declaration] = STATE(5149), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [sym_identifier] = ACTIONS(1445), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1447), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [109] = { [sym_preproc_def] = STATE(109), [sym_preproc_function_def] = STATE(109), [sym_preproc_call] = STATE(109), [sym_preproc_if_in_field_declaration_list] = STATE(109), [sym_preproc_ifdef_in_field_declaration_list] = STATE(109), [sym_type_definition] = STATE(109), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3257), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3763), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(109), [sym_field_declaration] = STATE(109), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1373), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(109), [sym_operator_cast] = STATE(4339), [sym_inline_method_definition] = STATE(109), [sym__constructor_specifiers] = STATE(1373), [sym_operator_cast_definition] = STATE(109), [sym_operator_cast_declaration] = STATE(109), [sym_constructor_or_destructor_definition] = STATE(109), [sym_constructor_or_destructor_declaration] = STATE(109), [sym_friend_declaration] = STATE(109), [sym_access_specifier] = STATE(109), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(109), [sym_alias_declaration] = STATE(109), [sym_static_assert_declaration] = STATE(109), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4339), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(109), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1373), [sym_identifier] = ACTIONS(1449), [aux_sym_preproc_def_token1] = ACTIONS(1452), [aux_sym_preproc_if_token1] = ACTIONS(1455), [aux_sym_preproc_if_token2] = ACTIONS(1458), [aux_sym_preproc_ifdef_token1] = ACTIONS(1460), [aux_sym_preproc_ifdef_token2] = ACTIONS(1460), [aux_sym_preproc_else_token1] = ACTIONS(1458), [aux_sym_preproc_elif_token1] = ACTIONS(1458), [sym_preproc_directive] = ACTIONS(1463), [anon_sym_LPAREN2] = ACTIONS(1466), [anon_sym_TILDE] = ACTIONS(1469), [anon_sym_STAR] = ACTIONS(1472), [anon_sym_AMP_AMP] = ACTIONS(1475), [anon_sym_AMP] = ACTIONS(1478), [anon_sym_typedef] = ACTIONS(1481), [anon_sym_extern] = ACTIONS(1484), [anon_sym___attribute__] = ACTIONS(1487), [anon_sym_COLON_COLON] = ACTIONS(1490), [anon_sym_LBRACK_LBRACK] = ACTIONS(1493), [anon_sym___declspec] = ACTIONS(1496), [anon_sym___based] = ACTIONS(1499), [anon_sym_LBRACK] = ACTIONS(1502), [anon_sym_static] = ACTIONS(1484), [anon_sym_register] = ACTIONS(1484), [anon_sym_inline] = ACTIONS(1484), [anon_sym_thread_local] = ACTIONS(1484), [anon_sym_const] = ACTIONS(1505), [anon_sym_volatile] = ACTIONS(1505), [anon_sym_restrict] = ACTIONS(1505), [anon_sym__Atomic] = ACTIONS(1505), [anon_sym_mutable] = ACTIONS(1505), [anon_sym_constexpr] = ACTIONS(1505), [anon_sym_signed] = ACTIONS(1508), [anon_sym_unsigned] = ACTIONS(1508), [anon_sym_long] = ACTIONS(1508), [anon_sym_short] = ACTIONS(1508), [sym_primitive_type] = ACTIONS(1511), [anon_sym_enum] = ACTIONS(1514), [anon_sym_class] = ACTIONS(1517), [anon_sym_struct] = ACTIONS(1520), [anon_sym_union] = ACTIONS(1523), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1526), [anon_sym_virtual] = ACTIONS(1529), [anon_sym_explicit] = ACTIONS(1532), [anon_sym_public] = ACTIONS(1535), [anon_sym_private] = ACTIONS(1535), [anon_sym_protected] = ACTIONS(1535), [sym_auto] = ACTIONS(1511), [anon_sym_typename] = ACTIONS(1538), [anon_sym_template] = ACTIONS(1541), [anon_sym_operator] = ACTIONS(1544), [anon_sym_friend] = ACTIONS(1547), [anon_sym_using] = ACTIONS(1550), [anon_sym_static_assert] = ACTIONS(1553), }, [110] = { [sym_declaration] = STATE(1107), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(2910), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(1634), [sym_ms_declspec_modifier] = STATE(1634), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym__expression] = STATE(2873), [sym_comma_expression] = STATE(5390), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [sym_identifier] = ACTIONS(1445), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1556), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [111] = { [sym_declaration] = STATE(1109), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(2953), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(1634), [sym_ms_declspec_modifier] = STATE(1634), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym__expression] = STATE(2865), [sym_comma_expression] = STATE(5216), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [sym_identifier] = ACTIONS(1445), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1558), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [112] = { [sym_declaration] = STATE(1129), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(2925), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(1634), [sym_ms_declspec_modifier] = STATE(1634), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym__expression] = STATE(2789), [sym_comma_expression] = STATE(5355), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [sym_identifier] = ACTIONS(1445), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1560), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [113] = { [sym_declaration] = STATE(1105), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3027), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(1634), [sym_ms_declspec_modifier] = STATE(1634), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym__expression] = STATE(2808), [sym_comma_expression] = STATE(5147), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [sym_identifier] = ACTIONS(1445), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1562), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [114] = { [sym_declaration] = STATE(1140), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(2942), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(1634), [sym_ms_declspec_modifier] = STATE(1634), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym__expression] = STATE(2825), [sym_comma_expression] = STATE(5328), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [sym_identifier] = ACTIONS(1445), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1564), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [115] = { [sym_declaration] = STATE(1114), [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(2917), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(1634), [sym_ms_declspec_modifier] = STATE(1634), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym__expression] = STATE(2805), [sym_comma_expression] = STATE(5378), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym__class_name] = STATE(4703), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2625), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3646), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(2646), [sym_user_defined_literal] = STATE(2661), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [sym_identifier] = ACTIONS(1445), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1566), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym_LBRACK] = ACTIONS(929), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(61), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [116] = { [sym_preproc_def] = STATE(132), [sym_preproc_function_def] = STATE(132), [sym_preproc_call] = STATE(132), [sym_preproc_if_in_field_declaration_list] = STATE(132), [sym_preproc_ifdef_in_field_declaration_list] = STATE(132), [sym_type_definition] = STATE(132), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3252), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3760), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(132), [sym_field_declaration] = STATE(132), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1377), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(132), [sym_operator_cast] = STATE(4305), [sym_inline_method_definition] = STATE(132), [sym__constructor_specifiers] = STATE(1377), [sym_operator_cast_definition] = STATE(132), [sym_operator_cast_declaration] = STATE(132), [sym_constructor_or_destructor_definition] = STATE(132), [sym_constructor_or_destructor_declaration] = STATE(132), [sym_friend_declaration] = STATE(132), [sym_access_specifier] = STATE(132), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(132), [sym_alias_declaration] = STATE(132), [sym_static_assert_declaration] = STATE(132), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4305), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(132), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1377), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1568), [aux_sym_preproc_if_token1] = ACTIONS(1570), [aux_sym_preproc_ifdef_token1] = ACTIONS(1572), [aux_sym_preproc_ifdef_token2] = ACTIONS(1572), [sym_preproc_directive] = ACTIONS(1574), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1576), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_RBRACE] = ACTIONS(1578), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1580), [anon_sym_private] = ACTIONS(1580), [anon_sym_protected] = ACTIONS(1580), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1582), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1584), [anon_sym_using] = ACTIONS(1586), [anon_sym_static_assert] = ACTIONS(1588), }, [117] = { [sym_preproc_def] = STATE(126), [sym_preproc_function_def] = STATE(126), [sym_preproc_call] = STATE(126), [sym_preproc_if_in_field_declaration_list] = STATE(126), [sym_preproc_ifdef_in_field_declaration_list] = STATE(126), [sym_type_definition] = STATE(126), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3252), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3760), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(126), [sym_field_declaration] = STATE(126), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1377), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(126), [sym_operator_cast] = STATE(4305), [sym_inline_method_definition] = STATE(126), [sym__constructor_specifiers] = STATE(1377), [sym_operator_cast_definition] = STATE(126), [sym_operator_cast_declaration] = STATE(126), [sym_constructor_or_destructor_definition] = STATE(126), [sym_constructor_or_destructor_declaration] = STATE(126), [sym_friend_declaration] = STATE(126), [sym_access_specifier] = STATE(126), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(126), [sym_alias_declaration] = STATE(126), [sym_static_assert_declaration] = STATE(126), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4305), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(126), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1377), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1568), [aux_sym_preproc_if_token1] = ACTIONS(1570), [aux_sym_preproc_ifdef_token1] = ACTIONS(1572), [aux_sym_preproc_ifdef_token2] = ACTIONS(1572), [sym_preproc_directive] = ACTIONS(1574), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1576), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_RBRACE] = ACTIONS(1590), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1580), [anon_sym_private] = ACTIONS(1580), [anon_sym_protected] = ACTIONS(1580), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1582), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1584), [anon_sym_using] = ACTIONS(1586), [anon_sym_static_assert] = ACTIONS(1588), }, [118] = { [sym_preproc_def] = STATE(120), [sym_preproc_function_def] = STATE(120), [sym_preproc_call] = STATE(120), [sym_preproc_if_in_field_declaration_list] = STATE(120), [sym_preproc_ifdef_in_field_declaration_list] = STATE(120), [sym_type_definition] = STATE(120), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3252), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3760), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(120), [sym_field_declaration] = STATE(120), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1377), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(120), [sym_operator_cast] = STATE(4305), [sym_inline_method_definition] = STATE(120), [sym__constructor_specifiers] = STATE(1377), [sym_operator_cast_definition] = STATE(120), [sym_operator_cast_declaration] = STATE(120), [sym_constructor_or_destructor_definition] = STATE(120), [sym_constructor_or_destructor_declaration] = STATE(120), [sym_friend_declaration] = STATE(120), [sym_access_specifier] = STATE(120), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(120), [sym_alias_declaration] = STATE(120), [sym_static_assert_declaration] = STATE(120), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4305), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(120), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1377), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1568), [aux_sym_preproc_if_token1] = ACTIONS(1570), [aux_sym_preproc_ifdef_token1] = ACTIONS(1572), [aux_sym_preproc_ifdef_token2] = ACTIONS(1572), [sym_preproc_directive] = ACTIONS(1574), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1576), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_RBRACE] = ACTIONS(1592), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1580), [anon_sym_private] = ACTIONS(1580), [anon_sym_protected] = ACTIONS(1580), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1582), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1584), [anon_sym_using] = ACTIONS(1586), [anon_sym_static_assert] = ACTIONS(1588), }, [119] = { [sym_preproc_def] = STATE(132), [sym_preproc_function_def] = STATE(132), [sym_preproc_call] = STATE(132), [sym_preproc_if_in_field_declaration_list] = STATE(132), [sym_preproc_ifdef_in_field_declaration_list] = STATE(132), [sym_type_definition] = STATE(132), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3252), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3760), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(132), [sym_field_declaration] = STATE(132), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1377), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(132), [sym_operator_cast] = STATE(4305), [sym_inline_method_definition] = STATE(132), [sym__constructor_specifiers] = STATE(1377), [sym_operator_cast_definition] = STATE(132), [sym_operator_cast_declaration] = STATE(132), [sym_constructor_or_destructor_definition] = STATE(132), [sym_constructor_or_destructor_declaration] = STATE(132), [sym_friend_declaration] = STATE(132), [sym_access_specifier] = STATE(132), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(132), [sym_alias_declaration] = STATE(132), [sym_static_assert_declaration] = STATE(132), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4305), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(132), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1377), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1568), [aux_sym_preproc_if_token1] = ACTIONS(1570), [aux_sym_preproc_ifdef_token1] = ACTIONS(1572), [aux_sym_preproc_ifdef_token2] = ACTIONS(1572), [sym_preproc_directive] = ACTIONS(1574), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1576), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_RBRACE] = ACTIONS(1594), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1580), [anon_sym_private] = ACTIONS(1580), [anon_sym_protected] = ACTIONS(1580), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1582), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1584), [anon_sym_using] = ACTIONS(1586), [anon_sym_static_assert] = ACTIONS(1588), }, [120] = { [sym_preproc_def] = STATE(132), [sym_preproc_function_def] = STATE(132), [sym_preproc_call] = STATE(132), [sym_preproc_if_in_field_declaration_list] = STATE(132), [sym_preproc_ifdef_in_field_declaration_list] = STATE(132), [sym_type_definition] = STATE(132), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3252), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3760), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(132), [sym_field_declaration] = STATE(132), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1377), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(132), [sym_operator_cast] = STATE(4305), [sym_inline_method_definition] = STATE(132), [sym__constructor_specifiers] = STATE(1377), [sym_operator_cast_definition] = STATE(132), [sym_operator_cast_declaration] = STATE(132), [sym_constructor_or_destructor_definition] = STATE(132), [sym_constructor_or_destructor_declaration] = STATE(132), [sym_friend_declaration] = STATE(132), [sym_access_specifier] = STATE(132), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(132), [sym_alias_declaration] = STATE(132), [sym_static_assert_declaration] = STATE(132), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4305), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(132), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1377), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1568), [aux_sym_preproc_if_token1] = ACTIONS(1570), [aux_sym_preproc_ifdef_token1] = ACTIONS(1572), [aux_sym_preproc_ifdef_token2] = ACTIONS(1572), [sym_preproc_directive] = ACTIONS(1574), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1576), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_RBRACE] = ACTIONS(1596), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1580), [anon_sym_private] = ACTIONS(1580), [anon_sym_protected] = ACTIONS(1580), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1582), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1584), [anon_sym_using] = ACTIONS(1586), [anon_sym_static_assert] = ACTIONS(1588), }, [121] = { [sym_preproc_def] = STATE(130), [sym_preproc_function_def] = STATE(130), [sym_preproc_call] = STATE(130), [sym_preproc_if_in_field_declaration_list] = STATE(130), [sym_preproc_ifdef_in_field_declaration_list] = STATE(130), [sym_type_definition] = STATE(130), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3252), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3760), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(130), [sym_field_declaration] = STATE(130), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1377), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(130), [sym_operator_cast] = STATE(4305), [sym_inline_method_definition] = STATE(130), [sym__constructor_specifiers] = STATE(1377), [sym_operator_cast_definition] = STATE(130), [sym_operator_cast_declaration] = STATE(130), [sym_constructor_or_destructor_definition] = STATE(130), [sym_constructor_or_destructor_declaration] = STATE(130), [sym_friend_declaration] = STATE(130), [sym_access_specifier] = STATE(130), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(130), [sym_alias_declaration] = STATE(130), [sym_static_assert_declaration] = STATE(130), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4305), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(130), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1377), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1568), [aux_sym_preproc_if_token1] = ACTIONS(1570), [aux_sym_preproc_ifdef_token1] = ACTIONS(1572), [aux_sym_preproc_ifdef_token2] = ACTIONS(1572), [sym_preproc_directive] = ACTIONS(1574), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1576), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_RBRACE] = ACTIONS(1598), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1580), [anon_sym_private] = ACTIONS(1580), [anon_sym_protected] = ACTIONS(1580), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1582), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1584), [anon_sym_using] = ACTIONS(1586), [anon_sym_static_assert] = ACTIONS(1588), }, [122] = { [sym_preproc_def] = STATE(123), [sym_preproc_function_def] = STATE(123), [sym_preproc_call] = STATE(123), [sym_preproc_if_in_field_declaration_list] = STATE(123), [sym_preproc_ifdef_in_field_declaration_list] = STATE(123), [sym_type_definition] = STATE(123), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3227), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3732), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(123), [sym_field_declaration] = STATE(123), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1374), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(123), [sym_operator_cast] = STATE(4214), [sym_inline_method_definition] = STATE(123), [sym__constructor_specifiers] = STATE(1374), [sym_operator_cast_definition] = STATE(123), [sym_operator_cast_declaration] = STATE(123), [sym_constructor_or_destructor_definition] = STATE(123), [sym_constructor_or_destructor_declaration] = STATE(123), [sym_friend_declaration] = STATE(123), [sym_access_specifier] = STATE(123), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(123), [sym_alias_declaration] = STATE(123), [sym_static_assert_declaration] = STATE(123), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4214), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(123), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1374), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1600), [aux_sym_preproc_if_token1] = ACTIONS(1602), [aux_sym_preproc_if_token2] = ACTIONS(1604), [aux_sym_preproc_ifdef_token1] = ACTIONS(1606), [aux_sym_preproc_ifdef_token2] = ACTIONS(1606), [sym_preproc_directive] = ACTIONS(1608), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1610), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1612), [anon_sym_private] = ACTIONS(1612), [anon_sym_protected] = ACTIONS(1612), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1614), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1616), [anon_sym_using] = ACTIONS(1618), [anon_sym_static_assert] = ACTIONS(1620), }, [123] = { [sym_preproc_def] = STATE(125), [sym_preproc_function_def] = STATE(125), [sym_preproc_call] = STATE(125), [sym_preproc_if_in_field_declaration_list] = STATE(125), [sym_preproc_ifdef_in_field_declaration_list] = STATE(125), [sym_type_definition] = STATE(125), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3227), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3732), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(125), [sym_field_declaration] = STATE(125), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1374), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(125), [sym_operator_cast] = STATE(4214), [sym_inline_method_definition] = STATE(125), [sym__constructor_specifiers] = STATE(1374), [sym_operator_cast_definition] = STATE(125), [sym_operator_cast_declaration] = STATE(125), [sym_constructor_or_destructor_definition] = STATE(125), [sym_constructor_or_destructor_declaration] = STATE(125), [sym_friend_declaration] = STATE(125), [sym_access_specifier] = STATE(125), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(125), [sym_alias_declaration] = STATE(125), [sym_static_assert_declaration] = STATE(125), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4214), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(125), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1374), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1600), [aux_sym_preproc_if_token1] = ACTIONS(1602), [aux_sym_preproc_if_token2] = ACTIONS(1622), [aux_sym_preproc_ifdef_token1] = ACTIONS(1606), [aux_sym_preproc_ifdef_token2] = ACTIONS(1606), [sym_preproc_directive] = ACTIONS(1608), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1610), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1612), [anon_sym_private] = ACTIONS(1612), [anon_sym_protected] = ACTIONS(1612), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1614), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1616), [anon_sym_using] = ACTIONS(1618), [anon_sym_static_assert] = ACTIONS(1620), }, [124] = { [sym_preproc_def] = STATE(119), [sym_preproc_function_def] = STATE(119), [sym_preproc_call] = STATE(119), [sym_preproc_if_in_field_declaration_list] = STATE(119), [sym_preproc_ifdef_in_field_declaration_list] = STATE(119), [sym_type_definition] = STATE(119), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3252), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3760), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(119), [sym_field_declaration] = STATE(119), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1377), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(119), [sym_operator_cast] = STATE(4305), [sym_inline_method_definition] = STATE(119), [sym__constructor_specifiers] = STATE(1377), [sym_operator_cast_definition] = STATE(119), [sym_operator_cast_declaration] = STATE(119), [sym_constructor_or_destructor_definition] = STATE(119), [sym_constructor_or_destructor_declaration] = STATE(119), [sym_friend_declaration] = STATE(119), [sym_access_specifier] = STATE(119), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(119), [sym_alias_declaration] = STATE(119), [sym_static_assert_declaration] = STATE(119), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4305), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(119), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1377), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1568), [aux_sym_preproc_if_token1] = ACTIONS(1570), [aux_sym_preproc_ifdef_token1] = ACTIONS(1572), [aux_sym_preproc_ifdef_token2] = ACTIONS(1572), [sym_preproc_directive] = ACTIONS(1574), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1576), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_RBRACE] = ACTIONS(1624), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1580), [anon_sym_private] = ACTIONS(1580), [anon_sym_protected] = ACTIONS(1580), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1582), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1584), [anon_sym_using] = ACTIONS(1586), [anon_sym_static_assert] = ACTIONS(1588), }, [125] = { [sym_preproc_def] = STATE(125), [sym_preproc_function_def] = STATE(125), [sym_preproc_call] = STATE(125), [sym_preproc_if_in_field_declaration_list] = STATE(125), [sym_preproc_ifdef_in_field_declaration_list] = STATE(125), [sym_type_definition] = STATE(125), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3227), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3732), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(125), [sym_field_declaration] = STATE(125), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1374), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(125), [sym_operator_cast] = STATE(4214), [sym_inline_method_definition] = STATE(125), [sym__constructor_specifiers] = STATE(1374), [sym_operator_cast_definition] = STATE(125), [sym_operator_cast_declaration] = STATE(125), [sym_constructor_or_destructor_definition] = STATE(125), [sym_constructor_or_destructor_declaration] = STATE(125), [sym_friend_declaration] = STATE(125), [sym_access_specifier] = STATE(125), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(125), [sym_alias_declaration] = STATE(125), [sym_static_assert_declaration] = STATE(125), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4214), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(125), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1374), [sym_identifier] = ACTIONS(1449), [aux_sym_preproc_def_token1] = ACTIONS(1626), [aux_sym_preproc_if_token1] = ACTIONS(1629), [aux_sym_preproc_if_token2] = ACTIONS(1458), [aux_sym_preproc_ifdef_token1] = ACTIONS(1632), [aux_sym_preproc_ifdef_token2] = ACTIONS(1632), [sym_preproc_directive] = ACTIONS(1635), [anon_sym_LPAREN2] = ACTIONS(1466), [anon_sym_TILDE] = ACTIONS(1469), [anon_sym_STAR] = ACTIONS(1472), [anon_sym_AMP_AMP] = ACTIONS(1475), [anon_sym_AMP] = ACTIONS(1478), [anon_sym_typedef] = ACTIONS(1638), [anon_sym_extern] = ACTIONS(1484), [anon_sym___attribute__] = ACTIONS(1487), [anon_sym_COLON_COLON] = ACTIONS(1490), [anon_sym_LBRACK_LBRACK] = ACTIONS(1493), [anon_sym___declspec] = ACTIONS(1496), [anon_sym___based] = ACTIONS(1499), [anon_sym_LBRACK] = ACTIONS(1502), [anon_sym_static] = ACTIONS(1484), [anon_sym_register] = ACTIONS(1484), [anon_sym_inline] = ACTIONS(1484), [anon_sym_thread_local] = ACTIONS(1484), [anon_sym_const] = ACTIONS(1505), [anon_sym_volatile] = ACTIONS(1505), [anon_sym_restrict] = ACTIONS(1505), [anon_sym__Atomic] = ACTIONS(1505), [anon_sym_mutable] = ACTIONS(1505), [anon_sym_constexpr] = ACTIONS(1505), [anon_sym_signed] = ACTIONS(1508), [anon_sym_unsigned] = ACTIONS(1508), [anon_sym_long] = ACTIONS(1508), [anon_sym_short] = ACTIONS(1508), [sym_primitive_type] = ACTIONS(1511), [anon_sym_enum] = ACTIONS(1514), [anon_sym_class] = ACTIONS(1517), [anon_sym_struct] = ACTIONS(1520), [anon_sym_union] = ACTIONS(1523), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1526), [anon_sym_virtual] = ACTIONS(1529), [anon_sym_explicit] = ACTIONS(1532), [anon_sym_public] = ACTIONS(1641), [anon_sym_private] = ACTIONS(1641), [anon_sym_protected] = ACTIONS(1641), [sym_auto] = ACTIONS(1511), [anon_sym_typename] = ACTIONS(1538), [anon_sym_template] = ACTIONS(1644), [anon_sym_operator] = ACTIONS(1544), [anon_sym_friend] = ACTIONS(1647), [anon_sym_using] = ACTIONS(1650), [anon_sym_static_assert] = ACTIONS(1653), }, [126] = { [sym_preproc_def] = STATE(132), [sym_preproc_function_def] = STATE(132), [sym_preproc_call] = STATE(132), [sym_preproc_if_in_field_declaration_list] = STATE(132), [sym_preproc_ifdef_in_field_declaration_list] = STATE(132), [sym_type_definition] = STATE(132), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3252), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3760), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(132), [sym_field_declaration] = STATE(132), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1377), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(132), [sym_operator_cast] = STATE(4305), [sym_inline_method_definition] = STATE(132), [sym__constructor_specifiers] = STATE(1377), [sym_operator_cast_definition] = STATE(132), [sym_operator_cast_declaration] = STATE(132), [sym_constructor_or_destructor_definition] = STATE(132), [sym_constructor_or_destructor_declaration] = STATE(132), [sym_friend_declaration] = STATE(132), [sym_access_specifier] = STATE(132), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(132), [sym_alias_declaration] = STATE(132), [sym_static_assert_declaration] = STATE(132), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4305), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(132), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1377), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1568), [aux_sym_preproc_if_token1] = ACTIONS(1570), [aux_sym_preproc_ifdef_token1] = ACTIONS(1572), [aux_sym_preproc_ifdef_token2] = ACTIONS(1572), [sym_preproc_directive] = ACTIONS(1574), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1576), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_RBRACE] = ACTIONS(1656), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1580), [anon_sym_private] = ACTIONS(1580), [anon_sym_protected] = ACTIONS(1580), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1582), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1584), [anon_sym_using] = ACTIONS(1586), [anon_sym_static_assert] = ACTIONS(1588), }, [127] = { [sym_preproc_def] = STATE(116), [sym_preproc_function_def] = STATE(116), [sym_preproc_call] = STATE(116), [sym_preproc_if_in_field_declaration_list] = STATE(116), [sym_preproc_ifdef_in_field_declaration_list] = STATE(116), [sym_type_definition] = STATE(116), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3252), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3760), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(116), [sym_field_declaration] = STATE(116), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1377), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(116), [sym_operator_cast] = STATE(4305), [sym_inline_method_definition] = STATE(116), [sym__constructor_specifiers] = STATE(1377), [sym_operator_cast_definition] = STATE(116), [sym_operator_cast_declaration] = STATE(116), [sym_constructor_or_destructor_definition] = STATE(116), [sym_constructor_or_destructor_declaration] = STATE(116), [sym_friend_declaration] = STATE(116), [sym_access_specifier] = STATE(116), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(116), [sym_alias_declaration] = STATE(116), [sym_static_assert_declaration] = STATE(116), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4305), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(116), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1377), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1568), [aux_sym_preproc_if_token1] = ACTIONS(1570), [aux_sym_preproc_ifdef_token1] = ACTIONS(1572), [aux_sym_preproc_ifdef_token2] = ACTIONS(1572), [sym_preproc_directive] = ACTIONS(1574), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1576), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_RBRACE] = ACTIONS(1658), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1580), [anon_sym_private] = ACTIONS(1580), [anon_sym_protected] = ACTIONS(1580), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1582), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1584), [anon_sym_using] = ACTIONS(1586), [anon_sym_static_assert] = ACTIONS(1588), }, [128] = { [sym_preproc_def] = STATE(133), [sym_preproc_function_def] = STATE(133), [sym_preproc_call] = STATE(133), [sym_preproc_if_in_field_declaration_list] = STATE(133), [sym_preproc_ifdef_in_field_declaration_list] = STATE(133), [sym_type_definition] = STATE(133), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3252), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3760), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(133), [sym_field_declaration] = STATE(133), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1377), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(133), [sym_operator_cast] = STATE(4305), [sym_inline_method_definition] = STATE(133), [sym__constructor_specifiers] = STATE(1377), [sym_operator_cast_definition] = STATE(133), [sym_operator_cast_declaration] = STATE(133), [sym_constructor_or_destructor_definition] = STATE(133), [sym_constructor_or_destructor_declaration] = STATE(133), [sym_friend_declaration] = STATE(133), [sym_access_specifier] = STATE(133), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(133), [sym_alias_declaration] = STATE(133), [sym_static_assert_declaration] = STATE(133), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4305), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(133), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1377), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1568), [aux_sym_preproc_if_token1] = ACTIONS(1570), [aux_sym_preproc_ifdef_token1] = ACTIONS(1572), [aux_sym_preproc_ifdef_token2] = ACTIONS(1572), [sym_preproc_directive] = ACTIONS(1574), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1576), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_RBRACE] = ACTIONS(1660), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1580), [anon_sym_private] = ACTIONS(1580), [anon_sym_protected] = ACTIONS(1580), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1582), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1584), [anon_sym_using] = ACTIONS(1586), [anon_sym_static_assert] = ACTIONS(1588), }, [129] = { [sym_preproc_def] = STATE(132), [sym_preproc_function_def] = STATE(132), [sym_preproc_call] = STATE(132), [sym_preproc_if_in_field_declaration_list] = STATE(132), [sym_preproc_ifdef_in_field_declaration_list] = STATE(132), [sym_type_definition] = STATE(132), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3252), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3760), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(132), [sym_field_declaration] = STATE(132), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1377), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(132), [sym_operator_cast] = STATE(4305), [sym_inline_method_definition] = STATE(132), [sym__constructor_specifiers] = STATE(1377), [sym_operator_cast_definition] = STATE(132), [sym_operator_cast_declaration] = STATE(132), [sym_constructor_or_destructor_definition] = STATE(132), [sym_constructor_or_destructor_declaration] = STATE(132), [sym_friend_declaration] = STATE(132), [sym_access_specifier] = STATE(132), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(132), [sym_alias_declaration] = STATE(132), [sym_static_assert_declaration] = STATE(132), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4305), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(132), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1377), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1568), [aux_sym_preproc_if_token1] = ACTIONS(1570), [aux_sym_preproc_ifdef_token1] = ACTIONS(1572), [aux_sym_preproc_ifdef_token2] = ACTIONS(1572), [sym_preproc_directive] = ACTIONS(1574), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1576), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_RBRACE] = ACTIONS(1662), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1580), [anon_sym_private] = ACTIONS(1580), [anon_sym_protected] = ACTIONS(1580), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1582), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1584), [anon_sym_using] = ACTIONS(1586), [anon_sym_static_assert] = ACTIONS(1588), }, [130] = { [sym_preproc_def] = STATE(132), [sym_preproc_function_def] = STATE(132), [sym_preproc_call] = STATE(132), [sym_preproc_if_in_field_declaration_list] = STATE(132), [sym_preproc_ifdef_in_field_declaration_list] = STATE(132), [sym_type_definition] = STATE(132), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3252), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3760), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(132), [sym_field_declaration] = STATE(132), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1377), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(132), [sym_operator_cast] = STATE(4305), [sym_inline_method_definition] = STATE(132), [sym__constructor_specifiers] = STATE(1377), [sym_operator_cast_definition] = STATE(132), [sym_operator_cast_declaration] = STATE(132), [sym_constructor_or_destructor_definition] = STATE(132), [sym_constructor_or_destructor_declaration] = STATE(132), [sym_friend_declaration] = STATE(132), [sym_access_specifier] = STATE(132), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(132), [sym_alias_declaration] = STATE(132), [sym_static_assert_declaration] = STATE(132), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4305), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(132), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1377), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1568), [aux_sym_preproc_if_token1] = ACTIONS(1570), [aux_sym_preproc_ifdef_token1] = ACTIONS(1572), [aux_sym_preproc_ifdef_token2] = ACTIONS(1572), [sym_preproc_directive] = ACTIONS(1574), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1576), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_RBRACE] = ACTIONS(1664), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1580), [anon_sym_private] = ACTIONS(1580), [anon_sym_protected] = ACTIONS(1580), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1582), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1584), [anon_sym_using] = ACTIONS(1586), [anon_sym_static_assert] = ACTIONS(1588), }, [131] = { [sym_preproc_def] = STATE(129), [sym_preproc_function_def] = STATE(129), [sym_preproc_call] = STATE(129), [sym_preproc_if_in_field_declaration_list] = STATE(129), [sym_preproc_ifdef_in_field_declaration_list] = STATE(129), [sym_type_definition] = STATE(129), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3252), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3760), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(129), [sym_field_declaration] = STATE(129), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1377), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(129), [sym_operator_cast] = STATE(4305), [sym_inline_method_definition] = STATE(129), [sym__constructor_specifiers] = STATE(1377), [sym_operator_cast_definition] = STATE(129), [sym_operator_cast_declaration] = STATE(129), [sym_constructor_or_destructor_definition] = STATE(129), [sym_constructor_or_destructor_declaration] = STATE(129), [sym_friend_declaration] = STATE(129), [sym_access_specifier] = STATE(129), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(129), [sym_alias_declaration] = STATE(129), [sym_static_assert_declaration] = STATE(129), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4305), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(129), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1377), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1568), [aux_sym_preproc_if_token1] = ACTIONS(1570), [aux_sym_preproc_ifdef_token1] = ACTIONS(1572), [aux_sym_preproc_ifdef_token2] = ACTIONS(1572), [sym_preproc_directive] = ACTIONS(1574), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1576), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_RBRACE] = ACTIONS(1666), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1580), [anon_sym_private] = ACTIONS(1580), [anon_sym_protected] = ACTIONS(1580), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1582), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1584), [anon_sym_using] = ACTIONS(1586), [anon_sym_static_assert] = ACTIONS(1588), }, [132] = { [sym_preproc_def] = STATE(132), [sym_preproc_function_def] = STATE(132), [sym_preproc_call] = STATE(132), [sym_preproc_if_in_field_declaration_list] = STATE(132), [sym_preproc_ifdef_in_field_declaration_list] = STATE(132), [sym_type_definition] = STATE(132), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3252), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3760), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(132), [sym_field_declaration] = STATE(132), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1377), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(132), [sym_operator_cast] = STATE(4305), [sym_inline_method_definition] = STATE(132), [sym__constructor_specifiers] = STATE(1377), [sym_operator_cast_definition] = STATE(132), [sym_operator_cast_declaration] = STATE(132), [sym_constructor_or_destructor_definition] = STATE(132), [sym_constructor_or_destructor_declaration] = STATE(132), [sym_friend_declaration] = STATE(132), [sym_access_specifier] = STATE(132), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(132), [sym_alias_declaration] = STATE(132), [sym_static_assert_declaration] = STATE(132), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4305), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(132), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1377), [sym_identifier] = ACTIONS(1449), [aux_sym_preproc_def_token1] = ACTIONS(1668), [aux_sym_preproc_if_token1] = ACTIONS(1671), [aux_sym_preproc_ifdef_token1] = ACTIONS(1674), [aux_sym_preproc_ifdef_token2] = ACTIONS(1674), [sym_preproc_directive] = ACTIONS(1677), [anon_sym_LPAREN2] = ACTIONS(1466), [anon_sym_TILDE] = ACTIONS(1469), [anon_sym_STAR] = ACTIONS(1472), [anon_sym_AMP_AMP] = ACTIONS(1475), [anon_sym_AMP] = ACTIONS(1478), [anon_sym_typedef] = ACTIONS(1680), [anon_sym_extern] = ACTIONS(1484), [anon_sym___attribute__] = ACTIONS(1487), [anon_sym_COLON_COLON] = ACTIONS(1490), [anon_sym_LBRACK_LBRACK] = ACTIONS(1493), [anon_sym___declspec] = ACTIONS(1496), [anon_sym___based] = ACTIONS(1499), [anon_sym_RBRACE] = ACTIONS(1683), [anon_sym_LBRACK] = ACTIONS(1502), [anon_sym_static] = ACTIONS(1484), [anon_sym_register] = ACTIONS(1484), [anon_sym_inline] = ACTIONS(1484), [anon_sym_thread_local] = ACTIONS(1484), [anon_sym_const] = ACTIONS(1505), [anon_sym_volatile] = ACTIONS(1505), [anon_sym_restrict] = ACTIONS(1505), [anon_sym__Atomic] = ACTIONS(1505), [anon_sym_mutable] = ACTIONS(1505), [anon_sym_constexpr] = ACTIONS(1505), [anon_sym_signed] = ACTIONS(1508), [anon_sym_unsigned] = ACTIONS(1508), [anon_sym_long] = ACTIONS(1508), [anon_sym_short] = ACTIONS(1508), [sym_primitive_type] = ACTIONS(1511), [anon_sym_enum] = ACTIONS(1514), [anon_sym_class] = ACTIONS(1517), [anon_sym_struct] = ACTIONS(1520), [anon_sym_union] = ACTIONS(1523), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1526), [anon_sym_virtual] = ACTIONS(1529), [anon_sym_explicit] = ACTIONS(1532), [anon_sym_public] = ACTIONS(1685), [anon_sym_private] = ACTIONS(1685), [anon_sym_protected] = ACTIONS(1685), [sym_auto] = ACTIONS(1511), [anon_sym_typename] = ACTIONS(1538), [anon_sym_template] = ACTIONS(1688), [anon_sym_operator] = ACTIONS(1544), [anon_sym_friend] = ACTIONS(1691), [anon_sym_using] = ACTIONS(1694), [anon_sym_static_assert] = ACTIONS(1697), }, [133] = { [sym_preproc_def] = STATE(132), [sym_preproc_function_def] = STATE(132), [sym_preproc_call] = STATE(132), [sym_preproc_if_in_field_declaration_list] = STATE(132), [sym_preproc_ifdef_in_field_declaration_list] = STATE(132), [sym_type_definition] = STATE(132), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3252), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3760), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2527), [sym_sized_type_specifier] = STATE(2577), [sym_enum_specifier] = STATE(2577), [sym_struct_specifier] = STATE(2577), [sym_union_specifier] = STATE(2577), [sym__field_declaration_list_item] = STATE(132), [sym_field_declaration] = STATE(132), [sym_decltype] = STATE(2577), [sym_class_specifier] = STATE(2577), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1377), [sym_dependent_type] = STATE(2577), [sym_template_declaration] = STATE(132), [sym_operator_cast] = STATE(4305), [sym_inline_method_definition] = STATE(132), [sym__constructor_specifiers] = STATE(1377), [sym_operator_cast_definition] = STATE(132), [sym_operator_cast_declaration] = STATE(132), [sym_constructor_or_destructor_definition] = STATE(132), [sym_constructor_or_destructor_declaration] = STATE(132), [sym_friend_declaration] = STATE(132), [sym_access_specifier] = STATE(132), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_using_declaration] = STATE(132), [sym_alias_declaration] = STATE(132), [sym_static_assert_declaration] = STATE(132), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3525), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2555), [sym_qualified_operator_cast_identifier] = STATE(4305), [sym_operator_name] = STATE(3782), [aux_sym_preproc_if_in_field_declaration_list_repeat1] = STATE(132), [aux_sym__declaration_specifiers_repeat1] = STATE(1635), [aux_sym_sized_type_specifier_repeat1] = STATE(2641), [aux_sym_operator_cast_definition_repeat1] = STATE(1377), [sym_identifier] = ACTIONS(1363), [aux_sym_preproc_def_token1] = ACTIONS(1568), [aux_sym_preproc_if_token1] = ACTIONS(1570), [aux_sym_preproc_ifdef_token1] = ACTIONS(1572), [aux_sym_preproc_ifdef_token2] = ACTIONS(1572), [sym_preproc_directive] = ACTIONS(1574), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_typedef] = ACTIONS(1576), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(1389), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_RBRACE] = ACTIONS(1700), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1393), [anon_sym_unsigned] = ACTIONS(1393), [anon_sym_long] = ACTIONS(1393), [anon_sym_short] = ACTIONS(1393), [sym_primitive_type] = ACTIONS(1395), [anon_sym_enum] = ACTIONS(1397), [anon_sym_class] = ACTIONS(1399), [anon_sym_struct] = ACTIONS(1401), [anon_sym_union] = ACTIONS(1403), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1405), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [anon_sym_public] = ACTIONS(1580), [anon_sym_private] = ACTIONS(1580), [anon_sym_protected] = ACTIONS(1580), [sym_auto] = ACTIONS(1395), [anon_sym_typename] = ACTIONS(1409), [anon_sym_template] = ACTIONS(1582), [anon_sym_operator] = ACTIONS(117), [anon_sym_friend] = ACTIONS(1584), [anon_sym_using] = ACTIONS(1586), [anon_sym_static_assert] = ACTIONS(1588), }, [134] = { [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4022), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3782), [sym_array_declarator] = STATE(3782), [sym_type_qualifier] = STATE(2380), [sym__type_specifier] = STATE(3233), [sym_sized_type_specifier] = STATE(2128), [sym_enum_specifier] = STATE(2128), [sym_struct_specifier] = STATE(2128), [sym_union_specifier] = STATE(2128), [sym__expression] = STATE(2774), [sym_comma_expression] = STATE(5365), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_type_descriptor] = STATE(5400), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2128), [sym_class_specifier] = STATE(2128), [sym__class_name] = STATE(4703), [sym_dependent_type] = STATE(2128), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(2691), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3634), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(3527), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(2380), [aux_sym_sized_type_specifier_repeat1] = STATE(1692), [sym_identifier] = ACTIONS(1702), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1704), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1706), [anon_sym_unsigned] = ACTIONS(1706), [anon_sym_long] = ACTIONS(1706), [anon_sym_short] = ACTIONS(1706), [sym_primitive_type] = ACTIONS(1708), [anon_sym_enum] = ACTIONS(1710), [anon_sym_class] = ACTIONS(1712), [anon_sym_struct] = ACTIONS(1714), [anon_sym_union] = ACTIONS(1716), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1718), [sym_auto] = ACTIONS(1720), [anon_sym_typename] = ACTIONS(1722), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(1724), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [135] = { [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4022), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3782), [sym_array_declarator] = STATE(3782), [sym_type_qualifier] = STATE(2380), [sym__type_specifier] = STATE(3233), [sym_sized_type_specifier] = STATE(2128), [sym_enum_specifier] = STATE(2128), [sym_struct_specifier] = STATE(2128), [sym_union_specifier] = STATE(2128), [sym__expression] = STATE(2774), [sym_comma_expression] = STATE(5365), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_type_descriptor] = STATE(5364), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2128), [sym_class_specifier] = STATE(2128), [sym__class_name] = STATE(4703), [sym_dependent_type] = STATE(2128), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(2691), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3634), [sym_qualified_identifier] = STATE(1949), [sym_qualified_type_identifier] = STATE(3527), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(2380), [aux_sym_sized_type_specifier_repeat1] = STATE(1692), [sym_identifier] = ACTIONS(1702), [anon_sym_LPAREN2] = ACTIONS(19), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(23), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1704), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1706), [anon_sym_unsigned] = ACTIONS(1706), [anon_sym_long] = ACTIONS(1706), [anon_sym_short] = ACTIONS(1706), [sym_primitive_type] = ACTIONS(1708), [anon_sym_enum] = ACTIONS(1710), [anon_sym_class] = ACTIONS(1712), [anon_sym_struct] = ACTIONS(1714), [anon_sym_union] = ACTIONS(1716), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1718), [sym_auto] = ACTIONS(1720), [anon_sym_typename] = ACTIONS(1722), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(1724), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [136] = { [sym_attribute_declaration] = STATE(1376), [sym_compound_statement] = STATE(800), [sym_labeled_statement] = STATE(800), [sym_expression_statement] = STATE(800), [sym_if_statement] = STATE(800), [sym_switch_statement] = STATE(800), [sym_case_statement] = STATE(800), [sym_while_statement] = STATE(800), [sym_do_statement] = STATE(800), [sym_for_statement] = STATE(800), [sym_return_statement] = STATE(800), [sym_break_statement] = STATE(800), [sym_continue_statement] = STATE(800), [sym_goto_statement] = STATE(800), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(800), [sym_co_return_statement] = STATE(800), [sym_co_yield_statement] = STATE(800), [sym_throw_statement] = STATE(800), [sym_try_statement] = STATE(800), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_attributed_declarator_repeat1] = STATE(1376), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(929), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [137] = { [sym_catch_clause] = STATE(138), [aux_sym_try_statement_repeat1] = STATE(138), [sym_identifier] = ACTIONS(1730), [aux_sym_preproc_include_token1] = ACTIONS(1730), [aux_sym_preproc_def_token1] = ACTIONS(1730), [aux_sym_preproc_if_token1] = ACTIONS(1730), [aux_sym_preproc_if_token2] = ACTIONS(1730), [aux_sym_preproc_ifdef_token1] = ACTIONS(1730), [aux_sym_preproc_ifdef_token2] = ACTIONS(1730), [aux_sym_preproc_else_token1] = ACTIONS(1730), [aux_sym_preproc_elif_token1] = ACTIONS(1730), [sym_preproc_directive] = ACTIONS(1730), [anon_sym_LPAREN2] = ACTIONS(1732), [anon_sym_BANG] = ACTIONS(1732), [anon_sym_TILDE] = ACTIONS(1732), [anon_sym_DASH] = ACTIONS(1730), [anon_sym_PLUS] = ACTIONS(1730), [anon_sym_STAR] = ACTIONS(1732), [anon_sym_AMP_AMP] = ACTIONS(1732), [anon_sym_AMP] = ACTIONS(1730), [anon_sym_SEMI] = ACTIONS(1732), [anon_sym_typedef] = ACTIONS(1730), [anon_sym_extern] = ACTIONS(1730), [anon_sym___attribute__] = ACTIONS(1730), [anon_sym_COLON_COLON] = ACTIONS(1732), [anon_sym_LBRACK_LBRACK] = ACTIONS(1732), [anon_sym___declspec] = ACTIONS(1730), [anon_sym___based] = ACTIONS(1730), [anon_sym___cdecl] = ACTIONS(1730), [anon_sym___clrcall] = ACTIONS(1730), [anon_sym___stdcall] = ACTIONS(1730), [anon_sym___fastcall] = ACTIONS(1730), [anon_sym___thiscall] = ACTIONS(1730), [anon_sym___vectorcall] = ACTIONS(1730), [anon_sym_LBRACE] = ACTIONS(1732), [anon_sym_LBRACK] = ACTIONS(1730), [anon_sym_static] = ACTIONS(1730), [anon_sym_register] = ACTIONS(1730), [anon_sym_inline] = ACTIONS(1730), [anon_sym_thread_local] = ACTIONS(1730), [anon_sym_const] = ACTIONS(1730), [anon_sym_volatile] = ACTIONS(1730), [anon_sym_restrict] = ACTIONS(1730), [anon_sym__Atomic] = ACTIONS(1730), [anon_sym_mutable] = ACTIONS(1730), [anon_sym_constexpr] = ACTIONS(1730), [anon_sym_signed] = ACTIONS(1730), [anon_sym_unsigned] = ACTIONS(1730), [anon_sym_long] = ACTIONS(1730), [anon_sym_short] = ACTIONS(1730), [sym_primitive_type] = ACTIONS(1730), [anon_sym_enum] = ACTIONS(1730), [anon_sym_class] = ACTIONS(1730), [anon_sym_struct] = ACTIONS(1730), [anon_sym_union] = ACTIONS(1730), [anon_sym_if] = ACTIONS(1730), [anon_sym_else] = ACTIONS(1730), [anon_sym_switch] = ACTIONS(1730), [anon_sym_case] = ACTIONS(1730), [anon_sym_default] = ACTIONS(1730), [anon_sym_while] = ACTIONS(1730), [anon_sym_do] = ACTIONS(1730), [anon_sym_for] = ACTIONS(1730), [anon_sym_return] = ACTIONS(1730), [anon_sym_break] = ACTIONS(1730), [anon_sym_continue] = ACTIONS(1730), [anon_sym_goto] = ACTIONS(1730), [anon_sym_DASH_DASH] = ACTIONS(1732), [anon_sym_PLUS_PLUS] = ACTIONS(1732), [anon_sym_sizeof] = ACTIONS(1730), [sym_number_literal] = ACTIONS(1732), [anon_sym_L_SQUOTE] = ACTIONS(1732), [anon_sym_u_SQUOTE] = ACTIONS(1732), [anon_sym_U_SQUOTE] = ACTIONS(1732), [anon_sym_u8_SQUOTE] = ACTIONS(1732), [anon_sym_SQUOTE] = ACTIONS(1732), [anon_sym_L_DQUOTE] = ACTIONS(1732), [anon_sym_u_DQUOTE] = ACTIONS(1732), [anon_sym_U_DQUOTE] = ACTIONS(1732), [anon_sym_u8_DQUOTE] = ACTIONS(1732), [anon_sym_DQUOTE] = ACTIONS(1732), [sym_true] = ACTIONS(1730), [sym_false] = ACTIONS(1730), [sym_null] = ACTIONS(1730), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1730), [anon_sym_virtual] = ACTIONS(1730), [anon_sym_explicit] = ACTIONS(1730), [sym_auto] = ACTIONS(1730), [anon_sym_typename] = ACTIONS(1730), [anon_sym_template] = ACTIONS(1730), [anon_sym_operator] = ACTIONS(1730), [anon_sym_delete] = ACTIONS(1730), [anon_sym_throw] = ACTIONS(1730), [anon_sym_namespace] = ACTIONS(1730), [anon_sym_using] = ACTIONS(1730), [anon_sym_static_assert] = ACTIONS(1730), [anon_sym_co_return] = ACTIONS(1730), [anon_sym_co_yield] = ACTIONS(1730), [anon_sym_try] = ACTIONS(1730), [anon_sym_catch] = ACTIONS(1734), [anon_sym_co_await] = ACTIONS(1730), [anon_sym_new] = ACTIONS(1730), [sym_this] = ACTIONS(1730), [sym_nullptr] = ACTIONS(1730), [sym_raw_string_literal] = ACTIONS(1732), }, [138] = { [sym_catch_clause] = STATE(138), [aux_sym_try_statement_repeat1] = STATE(138), [sym_identifier] = ACTIONS(1736), [aux_sym_preproc_include_token1] = ACTIONS(1736), [aux_sym_preproc_def_token1] = ACTIONS(1736), [aux_sym_preproc_if_token1] = ACTIONS(1736), [aux_sym_preproc_if_token2] = ACTIONS(1736), [aux_sym_preproc_ifdef_token1] = ACTIONS(1736), [aux_sym_preproc_ifdef_token2] = ACTIONS(1736), [aux_sym_preproc_else_token1] = ACTIONS(1736), [aux_sym_preproc_elif_token1] = ACTIONS(1736), [sym_preproc_directive] = ACTIONS(1736), [anon_sym_LPAREN2] = ACTIONS(1738), [anon_sym_BANG] = ACTIONS(1738), [anon_sym_TILDE] = ACTIONS(1738), [anon_sym_DASH] = ACTIONS(1736), [anon_sym_PLUS] = ACTIONS(1736), [anon_sym_STAR] = ACTIONS(1738), [anon_sym_AMP_AMP] = ACTIONS(1738), [anon_sym_AMP] = ACTIONS(1736), [anon_sym_SEMI] = ACTIONS(1738), [anon_sym_typedef] = ACTIONS(1736), [anon_sym_extern] = ACTIONS(1736), [anon_sym___attribute__] = ACTIONS(1736), [anon_sym_COLON_COLON] = ACTIONS(1738), [anon_sym_LBRACK_LBRACK] = ACTIONS(1738), [anon_sym___declspec] = ACTIONS(1736), [anon_sym___based] = ACTIONS(1736), [anon_sym___cdecl] = ACTIONS(1736), [anon_sym___clrcall] = ACTIONS(1736), [anon_sym___stdcall] = ACTIONS(1736), [anon_sym___fastcall] = ACTIONS(1736), [anon_sym___thiscall] = ACTIONS(1736), [anon_sym___vectorcall] = ACTIONS(1736), [anon_sym_LBRACE] = ACTIONS(1738), [anon_sym_LBRACK] = ACTIONS(1736), [anon_sym_static] = ACTIONS(1736), [anon_sym_register] = ACTIONS(1736), [anon_sym_inline] = ACTIONS(1736), [anon_sym_thread_local] = ACTIONS(1736), [anon_sym_const] = ACTIONS(1736), [anon_sym_volatile] = ACTIONS(1736), [anon_sym_restrict] = ACTIONS(1736), [anon_sym__Atomic] = ACTIONS(1736), [anon_sym_mutable] = ACTIONS(1736), [anon_sym_constexpr] = ACTIONS(1736), [anon_sym_signed] = ACTIONS(1736), [anon_sym_unsigned] = ACTIONS(1736), [anon_sym_long] = ACTIONS(1736), [anon_sym_short] = ACTIONS(1736), [sym_primitive_type] = ACTIONS(1736), [anon_sym_enum] = ACTIONS(1736), [anon_sym_class] = ACTIONS(1736), [anon_sym_struct] = ACTIONS(1736), [anon_sym_union] = ACTIONS(1736), [anon_sym_if] = ACTIONS(1736), [anon_sym_else] = ACTIONS(1736), [anon_sym_switch] = ACTIONS(1736), [anon_sym_case] = ACTIONS(1736), [anon_sym_default] = ACTIONS(1736), [anon_sym_while] = ACTIONS(1736), [anon_sym_do] = ACTIONS(1736), [anon_sym_for] = ACTIONS(1736), [anon_sym_return] = ACTIONS(1736), [anon_sym_break] = ACTIONS(1736), [anon_sym_continue] = ACTIONS(1736), [anon_sym_goto] = ACTIONS(1736), [anon_sym_DASH_DASH] = ACTIONS(1738), [anon_sym_PLUS_PLUS] = ACTIONS(1738), [anon_sym_sizeof] = ACTIONS(1736), [sym_number_literal] = ACTIONS(1738), [anon_sym_L_SQUOTE] = ACTIONS(1738), [anon_sym_u_SQUOTE] = ACTIONS(1738), [anon_sym_U_SQUOTE] = ACTIONS(1738), [anon_sym_u8_SQUOTE] = ACTIONS(1738), [anon_sym_SQUOTE] = ACTIONS(1738), [anon_sym_L_DQUOTE] = ACTIONS(1738), [anon_sym_u_DQUOTE] = ACTIONS(1738), [anon_sym_U_DQUOTE] = ACTIONS(1738), [anon_sym_u8_DQUOTE] = ACTIONS(1738), [anon_sym_DQUOTE] = ACTIONS(1738), [sym_true] = ACTIONS(1736), [sym_false] = ACTIONS(1736), [sym_null] = ACTIONS(1736), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1736), [anon_sym_virtual] = ACTIONS(1736), [anon_sym_explicit] = ACTIONS(1736), [sym_auto] = ACTIONS(1736), [anon_sym_typename] = ACTIONS(1736), [anon_sym_template] = ACTIONS(1736), [anon_sym_operator] = ACTIONS(1736), [anon_sym_delete] = ACTIONS(1736), [anon_sym_throw] = ACTIONS(1736), [anon_sym_namespace] = ACTIONS(1736), [anon_sym_using] = ACTIONS(1736), [anon_sym_static_assert] = ACTIONS(1736), [anon_sym_co_return] = ACTIONS(1736), [anon_sym_co_yield] = ACTIONS(1736), [anon_sym_try] = ACTIONS(1736), [anon_sym_catch] = ACTIONS(1740), [anon_sym_co_await] = ACTIONS(1736), [anon_sym_new] = ACTIONS(1736), [sym_this] = ACTIONS(1736), [sym_nullptr] = ACTIONS(1736), [sym_raw_string_literal] = ACTIONS(1738), }, [139] = { [sym_attribute_declaration] = STATE(1376), [sym_compound_statement] = STATE(660), [sym_labeled_statement] = STATE(660), [sym_expression_statement] = STATE(660), [sym_if_statement] = STATE(660), [sym_switch_statement] = STATE(660), [sym_case_statement] = STATE(660), [sym_while_statement] = STATE(660), [sym_do_statement] = STATE(660), [sym_for_statement] = STATE(660), [sym_return_statement] = STATE(660), [sym_break_statement] = STATE(660), [sym_continue_statement] = STATE(660), [sym_goto_statement] = STATE(660), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(660), [sym_co_return_statement] = STATE(660), [sym_co_yield_statement] = STATE(660), [sym_throw_statement] = STATE(660), [sym_try_statement] = STATE(660), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_attributed_declarator_repeat1] = STATE(1376), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(929), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [140] = { [sym_attribute_declaration] = STATE(1376), [sym_compound_statement] = STATE(408), [sym_labeled_statement] = STATE(408), [sym_expression_statement] = STATE(408), [sym_if_statement] = STATE(408), [sym_switch_statement] = STATE(408), [sym_case_statement] = STATE(408), [sym_while_statement] = STATE(408), [sym_do_statement] = STATE(408), [sym_for_statement] = STATE(408), [sym_return_statement] = STATE(408), [sym_break_statement] = STATE(408), [sym_continue_statement] = STATE(408), [sym_goto_statement] = STATE(408), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(408), [sym_co_return_statement] = STATE(408), [sym_co_yield_statement] = STATE(408), [sym_throw_statement] = STATE(408), [sym_try_statement] = STATE(408), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_attributed_declarator_repeat1] = STATE(1376), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(929), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [141] = { [sym_attribute_declaration] = STATE(1376), [sym_compound_statement] = STATE(719), [sym_labeled_statement] = STATE(719), [sym_expression_statement] = STATE(719), [sym_if_statement] = STATE(719), [sym_switch_statement] = STATE(719), [sym_case_statement] = STATE(719), [sym_while_statement] = STATE(719), [sym_do_statement] = STATE(719), [sym_for_statement] = STATE(719), [sym_return_statement] = STATE(719), [sym_break_statement] = STATE(719), [sym_continue_statement] = STATE(719), [sym_goto_statement] = STATE(719), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(719), [sym_co_return_statement] = STATE(719), [sym_co_yield_statement] = STATE(719), [sym_throw_statement] = STATE(719), [sym_try_statement] = STATE(719), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_attributed_declarator_repeat1] = STATE(1376), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(929), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [142] = { [sym_identifier] = ACTIONS(1749), [aux_sym_preproc_include_token1] = ACTIONS(1749), [aux_sym_preproc_def_token1] = ACTIONS(1749), [aux_sym_preproc_if_token1] = ACTIONS(1749), [aux_sym_preproc_if_token2] = ACTIONS(1749), [aux_sym_preproc_ifdef_token1] = ACTIONS(1749), [aux_sym_preproc_ifdef_token2] = ACTIONS(1749), [aux_sym_preproc_else_token1] = ACTIONS(1749), [aux_sym_preproc_elif_token1] = ACTIONS(1749), [sym_preproc_directive] = ACTIONS(1749), [anon_sym_LPAREN2] = ACTIONS(1751), [anon_sym_BANG] = ACTIONS(1751), [anon_sym_TILDE] = ACTIONS(1751), [anon_sym_DASH] = ACTIONS(1749), [anon_sym_PLUS] = ACTIONS(1749), [anon_sym_STAR] = ACTIONS(1751), [anon_sym_AMP_AMP] = ACTIONS(1751), [anon_sym_AMP] = ACTIONS(1749), [anon_sym_SEMI] = ACTIONS(1751), [anon_sym_typedef] = ACTIONS(1749), [anon_sym_extern] = ACTIONS(1749), [anon_sym___attribute__] = ACTIONS(1749), [anon_sym_COLON_COLON] = ACTIONS(1751), [anon_sym_LBRACK_LBRACK] = ACTIONS(1751), [anon_sym___declspec] = ACTIONS(1749), [anon_sym___based] = ACTIONS(1749), [anon_sym___cdecl] = ACTIONS(1749), [anon_sym___clrcall] = ACTIONS(1749), [anon_sym___stdcall] = ACTIONS(1749), [anon_sym___fastcall] = ACTIONS(1749), [anon_sym___thiscall] = ACTIONS(1749), [anon_sym___vectorcall] = ACTIONS(1749), [anon_sym_LBRACE] = ACTIONS(1751), [anon_sym_LBRACK] = ACTIONS(1749), [anon_sym_static] = ACTIONS(1749), [anon_sym_register] = ACTIONS(1749), [anon_sym_inline] = ACTIONS(1749), [anon_sym_thread_local] = ACTIONS(1749), [anon_sym_const] = ACTIONS(1749), [anon_sym_volatile] = ACTIONS(1749), [anon_sym_restrict] = ACTIONS(1749), [anon_sym__Atomic] = ACTIONS(1749), [anon_sym_mutable] = ACTIONS(1749), [anon_sym_constexpr] = ACTIONS(1749), [anon_sym_signed] = ACTIONS(1749), [anon_sym_unsigned] = ACTIONS(1749), [anon_sym_long] = ACTIONS(1749), [anon_sym_short] = ACTIONS(1749), [sym_primitive_type] = ACTIONS(1749), [anon_sym_enum] = ACTIONS(1749), [anon_sym_class] = ACTIONS(1749), [anon_sym_struct] = ACTIONS(1749), [anon_sym_union] = ACTIONS(1749), [anon_sym_if] = ACTIONS(1749), [anon_sym_else] = ACTIONS(1749), [anon_sym_switch] = ACTIONS(1749), [anon_sym_case] = ACTIONS(1749), [anon_sym_default] = ACTIONS(1749), [anon_sym_while] = ACTIONS(1749), [anon_sym_do] = ACTIONS(1749), [anon_sym_for] = ACTIONS(1749), [anon_sym_return] = ACTIONS(1749), [anon_sym_break] = ACTIONS(1749), [anon_sym_continue] = ACTIONS(1749), [anon_sym_goto] = ACTIONS(1749), [anon_sym_DASH_DASH] = ACTIONS(1751), [anon_sym_PLUS_PLUS] = ACTIONS(1751), [anon_sym_sizeof] = ACTIONS(1749), [sym_number_literal] = ACTIONS(1751), [anon_sym_L_SQUOTE] = ACTIONS(1751), [anon_sym_u_SQUOTE] = ACTIONS(1751), [anon_sym_U_SQUOTE] = ACTIONS(1751), [anon_sym_u8_SQUOTE] = ACTIONS(1751), [anon_sym_SQUOTE] = ACTIONS(1751), [anon_sym_L_DQUOTE] = ACTIONS(1751), [anon_sym_u_DQUOTE] = ACTIONS(1751), [anon_sym_U_DQUOTE] = ACTIONS(1751), [anon_sym_u8_DQUOTE] = ACTIONS(1751), [anon_sym_DQUOTE] = ACTIONS(1751), [sym_true] = ACTIONS(1749), [sym_false] = ACTIONS(1749), [sym_null] = ACTIONS(1749), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1749), [anon_sym_virtual] = ACTIONS(1749), [anon_sym_explicit] = ACTIONS(1749), [sym_auto] = ACTIONS(1749), [anon_sym_typename] = ACTIONS(1749), [anon_sym_template] = ACTIONS(1749), [anon_sym_operator] = ACTIONS(1749), [anon_sym_delete] = ACTIONS(1749), [anon_sym_throw] = ACTIONS(1749), [anon_sym_namespace] = ACTIONS(1749), [anon_sym_using] = ACTIONS(1749), [anon_sym_static_assert] = ACTIONS(1749), [anon_sym_co_return] = ACTIONS(1749), [anon_sym_co_yield] = ACTIONS(1749), [anon_sym_try] = ACTIONS(1749), [anon_sym_catch] = ACTIONS(1749), [anon_sym_co_await] = ACTIONS(1749), [anon_sym_new] = ACTIONS(1749), [sym_this] = ACTIONS(1749), [sym_nullptr] = ACTIONS(1749), [sym_raw_string_literal] = ACTIONS(1751), }, [143] = { [sym_catch_clause] = STATE(143), [aux_sym_try_statement_repeat1] = STATE(143), [sym_identifier] = ACTIONS(1736), [aux_sym_preproc_include_token1] = ACTIONS(1736), [aux_sym_preproc_def_token1] = ACTIONS(1736), [aux_sym_preproc_if_token1] = ACTIONS(1736), [aux_sym_preproc_ifdef_token1] = ACTIONS(1736), [aux_sym_preproc_ifdef_token2] = ACTIONS(1736), [sym_preproc_directive] = ACTIONS(1736), [anon_sym_LPAREN2] = ACTIONS(1738), [anon_sym_BANG] = ACTIONS(1738), [anon_sym_TILDE] = ACTIONS(1738), [anon_sym_DASH] = ACTIONS(1736), [anon_sym_PLUS] = ACTIONS(1736), [anon_sym_STAR] = ACTIONS(1738), [anon_sym_AMP_AMP] = ACTIONS(1738), [anon_sym_AMP] = ACTIONS(1736), [anon_sym_SEMI] = ACTIONS(1738), [anon_sym_typedef] = ACTIONS(1736), [anon_sym_extern] = ACTIONS(1736), [anon_sym___attribute__] = ACTIONS(1736), [anon_sym_COLON_COLON] = ACTIONS(1738), [anon_sym_LBRACK_LBRACK] = ACTIONS(1738), [anon_sym___declspec] = ACTIONS(1736), [anon_sym___based] = ACTIONS(1736), [anon_sym___cdecl] = ACTIONS(1736), [anon_sym___clrcall] = ACTIONS(1736), [anon_sym___stdcall] = ACTIONS(1736), [anon_sym___fastcall] = ACTIONS(1736), [anon_sym___thiscall] = ACTIONS(1736), [anon_sym___vectorcall] = ACTIONS(1736), [anon_sym_LBRACE] = ACTIONS(1738), [anon_sym_RBRACE] = ACTIONS(1738), [anon_sym_LBRACK] = ACTIONS(1736), [anon_sym_static] = ACTIONS(1736), [anon_sym_register] = ACTIONS(1736), [anon_sym_inline] = ACTIONS(1736), [anon_sym_thread_local] = ACTIONS(1736), [anon_sym_const] = ACTIONS(1736), [anon_sym_volatile] = ACTIONS(1736), [anon_sym_restrict] = ACTIONS(1736), [anon_sym__Atomic] = ACTIONS(1736), [anon_sym_mutable] = ACTIONS(1736), [anon_sym_constexpr] = ACTIONS(1736), [anon_sym_signed] = ACTIONS(1736), [anon_sym_unsigned] = ACTIONS(1736), [anon_sym_long] = ACTIONS(1736), [anon_sym_short] = ACTIONS(1736), [sym_primitive_type] = ACTIONS(1736), [anon_sym_enum] = ACTIONS(1736), [anon_sym_class] = ACTIONS(1736), [anon_sym_struct] = ACTIONS(1736), [anon_sym_union] = ACTIONS(1736), [anon_sym_if] = ACTIONS(1736), [anon_sym_else] = ACTIONS(1736), [anon_sym_switch] = ACTIONS(1736), [anon_sym_case] = ACTIONS(1736), [anon_sym_default] = ACTIONS(1736), [anon_sym_while] = ACTIONS(1736), [anon_sym_do] = ACTIONS(1736), [anon_sym_for] = ACTIONS(1736), [anon_sym_return] = ACTIONS(1736), [anon_sym_break] = ACTIONS(1736), [anon_sym_continue] = ACTIONS(1736), [anon_sym_goto] = ACTIONS(1736), [anon_sym_DASH_DASH] = ACTIONS(1738), [anon_sym_PLUS_PLUS] = ACTIONS(1738), [anon_sym_sizeof] = ACTIONS(1736), [sym_number_literal] = ACTIONS(1738), [anon_sym_L_SQUOTE] = ACTIONS(1738), [anon_sym_u_SQUOTE] = ACTIONS(1738), [anon_sym_U_SQUOTE] = ACTIONS(1738), [anon_sym_u8_SQUOTE] = ACTIONS(1738), [anon_sym_SQUOTE] = ACTIONS(1738), [anon_sym_L_DQUOTE] = ACTIONS(1738), [anon_sym_u_DQUOTE] = ACTIONS(1738), [anon_sym_U_DQUOTE] = ACTIONS(1738), [anon_sym_u8_DQUOTE] = ACTIONS(1738), [anon_sym_DQUOTE] = ACTIONS(1738), [sym_true] = ACTIONS(1736), [sym_false] = ACTIONS(1736), [sym_null] = ACTIONS(1736), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1736), [anon_sym_virtual] = ACTIONS(1736), [anon_sym_explicit] = ACTIONS(1736), [sym_auto] = ACTIONS(1736), [anon_sym_typename] = ACTIONS(1736), [anon_sym_template] = ACTIONS(1736), [anon_sym_operator] = ACTIONS(1736), [anon_sym_delete] = ACTIONS(1736), [anon_sym_throw] = ACTIONS(1736), [anon_sym_namespace] = ACTIONS(1736), [anon_sym_using] = ACTIONS(1736), [anon_sym_static_assert] = ACTIONS(1736), [anon_sym_co_return] = ACTIONS(1736), [anon_sym_co_yield] = ACTIONS(1736), [anon_sym_try] = ACTIONS(1736), [anon_sym_catch] = ACTIONS(1753), [anon_sym_co_await] = ACTIONS(1736), [anon_sym_new] = ACTIONS(1736), [sym_this] = ACTIONS(1736), [sym_nullptr] = ACTIONS(1736), [sym_raw_string_literal] = ACTIONS(1738), }, [144] = { [sym_identifier] = ACTIONS(1756), [aux_sym_preproc_include_token1] = ACTIONS(1756), [aux_sym_preproc_def_token1] = ACTIONS(1756), [aux_sym_preproc_if_token1] = ACTIONS(1756), [aux_sym_preproc_if_token2] = ACTIONS(1756), [aux_sym_preproc_ifdef_token1] = ACTIONS(1756), [aux_sym_preproc_ifdef_token2] = ACTIONS(1756), [aux_sym_preproc_else_token1] = ACTIONS(1756), [aux_sym_preproc_elif_token1] = ACTIONS(1756), [sym_preproc_directive] = ACTIONS(1756), [anon_sym_LPAREN2] = ACTIONS(1758), [anon_sym_BANG] = ACTIONS(1758), [anon_sym_TILDE] = ACTIONS(1758), [anon_sym_DASH] = ACTIONS(1756), [anon_sym_PLUS] = ACTIONS(1756), [anon_sym_STAR] = ACTIONS(1758), [anon_sym_AMP_AMP] = ACTIONS(1758), [anon_sym_AMP] = ACTIONS(1756), [anon_sym_SEMI] = ACTIONS(1758), [anon_sym_typedef] = ACTIONS(1756), [anon_sym_extern] = ACTIONS(1756), [anon_sym___attribute__] = ACTIONS(1756), [anon_sym_COLON_COLON] = ACTIONS(1758), [anon_sym_LBRACK_LBRACK] = ACTIONS(1758), [anon_sym___declspec] = ACTIONS(1756), [anon_sym___based] = ACTIONS(1756), [anon_sym___cdecl] = ACTIONS(1756), [anon_sym___clrcall] = ACTIONS(1756), [anon_sym___stdcall] = ACTIONS(1756), [anon_sym___fastcall] = ACTIONS(1756), [anon_sym___thiscall] = ACTIONS(1756), [anon_sym___vectorcall] = ACTIONS(1756), [anon_sym_LBRACE] = ACTIONS(1758), [anon_sym_LBRACK] = ACTIONS(1756), [anon_sym_static] = ACTIONS(1756), [anon_sym_register] = ACTIONS(1756), [anon_sym_inline] = ACTIONS(1756), [anon_sym_thread_local] = ACTIONS(1756), [anon_sym_const] = ACTIONS(1756), [anon_sym_volatile] = ACTIONS(1756), [anon_sym_restrict] = ACTIONS(1756), [anon_sym__Atomic] = ACTIONS(1756), [anon_sym_mutable] = ACTIONS(1756), [anon_sym_constexpr] = ACTIONS(1756), [anon_sym_signed] = ACTIONS(1756), [anon_sym_unsigned] = ACTIONS(1756), [anon_sym_long] = ACTIONS(1756), [anon_sym_short] = ACTIONS(1756), [sym_primitive_type] = ACTIONS(1756), [anon_sym_enum] = ACTIONS(1756), [anon_sym_class] = ACTIONS(1756), [anon_sym_struct] = ACTIONS(1756), [anon_sym_union] = ACTIONS(1756), [anon_sym_if] = ACTIONS(1756), [anon_sym_else] = ACTIONS(1756), [anon_sym_switch] = ACTIONS(1756), [anon_sym_case] = ACTIONS(1756), [anon_sym_default] = ACTIONS(1756), [anon_sym_while] = ACTIONS(1756), [anon_sym_do] = ACTIONS(1756), [anon_sym_for] = ACTIONS(1756), [anon_sym_return] = ACTIONS(1756), [anon_sym_break] = ACTIONS(1756), [anon_sym_continue] = ACTIONS(1756), [anon_sym_goto] = ACTIONS(1756), [anon_sym_DASH_DASH] = ACTIONS(1758), [anon_sym_PLUS_PLUS] = ACTIONS(1758), [anon_sym_sizeof] = ACTIONS(1756), [sym_number_literal] = ACTIONS(1758), [anon_sym_L_SQUOTE] = ACTIONS(1758), [anon_sym_u_SQUOTE] = ACTIONS(1758), [anon_sym_U_SQUOTE] = ACTIONS(1758), [anon_sym_u8_SQUOTE] = ACTIONS(1758), [anon_sym_SQUOTE] = ACTIONS(1758), [anon_sym_L_DQUOTE] = ACTIONS(1758), [anon_sym_u_DQUOTE] = ACTIONS(1758), [anon_sym_U_DQUOTE] = ACTIONS(1758), [anon_sym_u8_DQUOTE] = ACTIONS(1758), [anon_sym_DQUOTE] = ACTIONS(1758), [sym_true] = ACTIONS(1756), [sym_false] = ACTIONS(1756), [sym_null] = ACTIONS(1756), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1756), [anon_sym_virtual] = ACTIONS(1756), [anon_sym_explicit] = ACTIONS(1756), [sym_auto] = ACTIONS(1756), [anon_sym_typename] = ACTIONS(1756), [anon_sym_template] = ACTIONS(1756), [anon_sym_operator] = ACTIONS(1756), [anon_sym_delete] = ACTIONS(1756), [anon_sym_throw] = ACTIONS(1756), [anon_sym_namespace] = ACTIONS(1756), [anon_sym_using] = ACTIONS(1756), [anon_sym_static_assert] = ACTIONS(1756), [anon_sym_co_return] = ACTIONS(1756), [anon_sym_co_yield] = ACTIONS(1756), [anon_sym_try] = ACTIONS(1756), [anon_sym_catch] = ACTIONS(1756), [anon_sym_co_await] = ACTIONS(1756), [anon_sym_new] = ACTIONS(1756), [sym_this] = ACTIONS(1756), [sym_nullptr] = ACTIONS(1756), [sym_raw_string_literal] = ACTIONS(1758), }, [145] = { [sym_catch_clause] = STATE(145), [aux_sym_try_statement_repeat1] = STATE(145), [ts_builtin_sym_end] = ACTIONS(1738), [sym_identifier] = ACTIONS(1736), [aux_sym_preproc_include_token1] = ACTIONS(1736), [aux_sym_preproc_def_token1] = ACTIONS(1736), [aux_sym_preproc_if_token1] = ACTIONS(1736), [aux_sym_preproc_ifdef_token1] = ACTIONS(1736), [aux_sym_preproc_ifdef_token2] = ACTIONS(1736), [sym_preproc_directive] = ACTIONS(1736), [anon_sym_LPAREN2] = ACTIONS(1738), [anon_sym_BANG] = ACTIONS(1738), [anon_sym_TILDE] = ACTIONS(1738), [anon_sym_DASH] = ACTIONS(1736), [anon_sym_PLUS] = ACTIONS(1736), [anon_sym_STAR] = ACTIONS(1738), [anon_sym_AMP_AMP] = ACTIONS(1738), [anon_sym_AMP] = ACTIONS(1736), [anon_sym_SEMI] = ACTIONS(1738), [anon_sym_typedef] = ACTIONS(1736), [anon_sym_extern] = ACTIONS(1736), [anon_sym___attribute__] = ACTIONS(1736), [anon_sym_COLON_COLON] = ACTIONS(1738), [anon_sym_LBRACK_LBRACK] = ACTIONS(1738), [anon_sym___declspec] = ACTIONS(1736), [anon_sym___based] = ACTIONS(1736), [anon_sym___cdecl] = ACTIONS(1736), [anon_sym___clrcall] = ACTIONS(1736), [anon_sym___stdcall] = ACTIONS(1736), [anon_sym___fastcall] = ACTIONS(1736), [anon_sym___thiscall] = ACTIONS(1736), [anon_sym___vectorcall] = ACTIONS(1736), [anon_sym_LBRACE] = ACTIONS(1738), [anon_sym_LBRACK] = ACTIONS(1736), [anon_sym_static] = ACTIONS(1736), [anon_sym_register] = ACTIONS(1736), [anon_sym_inline] = ACTIONS(1736), [anon_sym_thread_local] = ACTIONS(1736), [anon_sym_const] = ACTIONS(1736), [anon_sym_volatile] = ACTIONS(1736), [anon_sym_restrict] = ACTIONS(1736), [anon_sym__Atomic] = ACTIONS(1736), [anon_sym_mutable] = ACTIONS(1736), [anon_sym_constexpr] = ACTIONS(1736), [anon_sym_signed] = ACTIONS(1736), [anon_sym_unsigned] = ACTIONS(1736), [anon_sym_long] = ACTIONS(1736), [anon_sym_short] = ACTIONS(1736), [sym_primitive_type] = ACTIONS(1736), [anon_sym_enum] = ACTIONS(1736), [anon_sym_class] = ACTIONS(1736), [anon_sym_struct] = ACTIONS(1736), [anon_sym_union] = ACTIONS(1736), [anon_sym_if] = ACTIONS(1736), [anon_sym_else] = ACTIONS(1736), [anon_sym_switch] = ACTIONS(1736), [anon_sym_case] = ACTIONS(1736), [anon_sym_default] = ACTIONS(1736), [anon_sym_while] = ACTIONS(1736), [anon_sym_do] = ACTIONS(1736), [anon_sym_for] = ACTIONS(1736), [anon_sym_return] = ACTIONS(1736), [anon_sym_break] = ACTIONS(1736), [anon_sym_continue] = ACTIONS(1736), [anon_sym_goto] = ACTIONS(1736), [anon_sym_DASH_DASH] = ACTIONS(1738), [anon_sym_PLUS_PLUS] = ACTIONS(1738), [anon_sym_sizeof] = ACTIONS(1736), [sym_number_literal] = ACTIONS(1738), [anon_sym_L_SQUOTE] = ACTIONS(1738), [anon_sym_u_SQUOTE] = ACTIONS(1738), [anon_sym_U_SQUOTE] = ACTIONS(1738), [anon_sym_u8_SQUOTE] = ACTIONS(1738), [anon_sym_SQUOTE] = ACTIONS(1738), [anon_sym_L_DQUOTE] = ACTIONS(1738), [anon_sym_u_DQUOTE] = ACTIONS(1738), [anon_sym_U_DQUOTE] = ACTIONS(1738), [anon_sym_u8_DQUOTE] = ACTIONS(1738), [anon_sym_DQUOTE] = ACTIONS(1738), [sym_true] = ACTIONS(1736), [sym_false] = ACTIONS(1736), [sym_null] = ACTIONS(1736), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1736), [anon_sym_virtual] = ACTIONS(1736), [anon_sym_explicit] = ACTIONS(1736), [sym_auto] = ACTIONS(1736), [anon_sym_typename] = ACTIONS(1736), [anon_sym_template] = ACTIONS(1736), [anon_sym_operator] = ACTIONS(1736), [anon_sym_delete] = ACTIONS(1736), [anon_sym_throw] = ACTIONS(1736), [anon_sym_namespace] = ACTIONS(1736), [anon_sym_using] = ACTIONS(1736), [anon_sym_static_assert] = ACTIONS(1736), [anon_sym_co_return] = ACTIONS(1736), [anon_sym_co_yield] = ACTIONS(1736), [anon_sym_try] = ACTIONS(1736), [anon_sym_catch] = ACTIONS(1760), [anon_sym_co_await] = ACTIONS(1736), [anon_sym_new] = ACTIONS(1736), [sym_this] = ACTIONS(1736), [sym_nullptr] = ACTIONS(1736), [sym_raw_string_literal] = ACTIONS(1738), }, [146] = { [sym_identifier] = ACTIONS(1763), [aux_sym_preproc_include_token1] = ACTIONS(1763), [aux_sym_preproc_def_token1] = ACTIONS(1763), [aux_sym_preproc_if_token1] = ACTIONS(1763), [aux_sym_preproc_if_token2] = ACTIONS(1763), [aux_sym_preproc_ifdef_token1] = ACTIONS(1763), [aux_sym_preproc_ifdef_token2] = ACTIONS(1763), [aux_sym_preproc_else_token1] = ACTIONS(1763), [aux_sym_preproc_elif_token1] = ACTIONS(1763), [sym_preproc_directive] = ACTIONS(1763), [anon_sym_LPAREN2] = ACTIONS(1765), [anon_sym_BANG] = ACTIONS(1765), [anon_sym_TILDE] = ACTIONS(1765), [anon_sym_DASH] = ACTIONS(1763), [anon_sym_PLUS] = ACTIONS(1763), [anon_sym_STAR] = ACTIONS(1765), [anon_sym_AMP_AMP] = ACTIONS(1765), [anon_sym_AMP] = ACTIONS(1763), [anon_sym_SEMI] = ACTIONS(1765), [anon_sym_typedef] = ACTIONS(1763), [anon_sym_extern] = ACTIONS(1763), [anon_sym___attribute__] = ACTIONS(1763), [anon_sym_COLON_COLON] = ACTIONS(1765), [anon_sym_LBRACK_LBRACK] = ACTIONS(1765), [anon_sym___declspec] = ACTIONS(1763), [anon_sym___based] = ACTIONS(1763), [anon_sym___cdecl] = ACTIONS(1763), [anon_sym___clrcall] = ACTIONS(1763), [anon_sym___stdcall] = ACTIONS(1763), [anon_sym___fastcall] = ACTIONS(1763), [anon_sym___thiscall] = ACTIONS(1763), [anon_sym___vectorcall] = ACTIONS(1763), [anon_sym_LBRACE] = ACTIONS(1765), [anon_sym_LBRACK] = ACTIONS(1763), [anon_sym_static] = ACTIONS(1763), [anon_sym_register] = ACTIONS(1763), [anon_sym_inline] = ACTIONS(1763), [anon_sym_thread_local] = ACTIONS(1763), [anon_sym_const] = ACTIONS(1763), [anon_sym_volatile] = ACTIONS(1763), [anon_sym_restrict] = ACTIONS(1763), [anon_sym__Atomic] = ACTIONS(1763), [anon_sym_mutable] = ACTIONS(1763), [anon_sym_constexpr] = ACTIONS(1763), [anon_sym_signed] = ACTIONS(1763), [anon_sym_unsigned] = ACTIONS(1763), [anon_sym_long] = ACTIONS(1763), [anon_sym_short] = ACTIONS(1763), [sym_primitive_type] = ACTIONS(1763), [anon_sym_enum] = ACTIONS(1763), [anon_sym_class] = ACTIONS(1763), [anon_sym_struct] = ACTIONS(1763), [anon_sym_union] = ACTIONS(1763), [anon_sym_if] = ACTIONS(1763), [anon_sym_else] = ACTIONS(1763), [anon_sym_switch] = ACTIONS(1763), [anon_sym_case] = ACTIONS(1763), [anon_sym_default] = ACTIONS(1763), [anon_sym_while] = ACTIONS(1763), [anon_sym_do] = ACTIONS(1763), [anon_sym_for] = ACTIONS(1763), [anon_sym_return] = ACTIONS(1763), [anon_sym_break] = ACTIONS(1763), [anon_sym_continue] = ACTIONS(1763), [anon_sym_goto] = ACTIONS(1763), [anon_sym_DASH_DASH] = ACTIONS(1765), [anon_sym_PLUS_PLUS] = ACTIONS(1765), [anon_sym_sizeof] = ACTIONS(1763), [sym_number_literal] = ACTIONS(1765), [anon_sym_L_SQUOTE] = ACTIONS(1765), [anon_sym_u_SQUOTE] = ACTIONS(1765), [anon_sym_U_SQUOTE] = ACTIONS(1765), [anon_sym_u8_SQUOTE] = ACTIONS(1765), [anon_sym_SQUOTE] = ACTIONS(1765), [anon_sym_L_DQUOTE] = ACTIONS(1765), [anon_sym_u_DQUOTE] = ACTIONS(1765), [anon_sym_U_DQUOTE] = ACTIONS(1765), [anon_sym_u8_DQUOTE] = ACTIONS(1765), [anon_sym_DQUOTE] = ACTIONS(1765), [sym_true] = ACTIONS(1763), [sym_false] = ACTIONS(1763), [sym_null] = ACTIONS(1763), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1763), [anon_sym_virtual] = ACTIONS(1763), [anon_sym_explicit] = ACTIONS(1763), [sym_auto] = ACTIONS(1763), [anon_sym_typename] = ACTIONS(1763), [anon_sym_template] = ACTIONS(1763), [anon_sym_operator] = ACTIONS(1763), [anon_sym_delete] = ACTIONS(1763), [anon_sym_throw] = ACTIONS(1763), [anon_sym_namespace] = ACTIONS(1763), [anon_sym_using] = ACTIONS(1763), [anon_sym_static_assert] = ACTIONS(1763), [anon_sym_co_return] = ACTIONS(1763), [anon_sym_co_yield] = ACTIONS(1763), [anon_sym_try] = ACTIONS(1763), [anon_sym_catch] = ACTIONS(1763), [anon_sym_co_await] = ACTIONS(1763), [anon_sym_new] = ACTIONS(1763), [sym_this] = ACTIONS(1763), [sym_nullptr] = ACTIONS(1763), [sym_raw_string_literal] = ACTIONS(1765), }, [147] = { [sym_catch_clause] = STATE(148), [aux_sym_try_statement_repeat1] = STATE(148), [sym_identifier] = ACTIONS(1730), [aux_sym_preproc_include_token1] = ACTIONS(1730), [aux_sym_preproc_def_token1] = ACTIONS(1730), [aux_sym_preproc_if_token1] = ACTIONS(1730), [aux_sym_preproc_if_token2] = ACTIONS(1730), [aux_sym_preproc_ifdef_token1] = ACTIONS(1730), [aux_sym_preproc_ifdef_token2] = ACTIONS(1730), [sym_preproc_directive] = ACTIONS(1730), [anon_sym_LPAREN2] = ACTIONS(1732), [anon_sym_BANG] = ACTIONS(1732), [anon_sym_TILDE] = ACTIONS(1732), [anon_sym_DASH] = ACTIONS(1730), [anon_sym_PLUS] = ACTIONS(1730), [anon_sym_STAR] = ACTIONS(1732), [anon_sym_AMP_AMP] = ACTIONS(1732), [anon_sym_AMP] = ACTIONS(1730), [anon_sym_SEMI] = ACTIONS(1732), [anon_sym_typedef] = ACTIONS(1730), [anon_sym_extern] = ACTIONS(1730), [anon_sym___attribute__] = ACTIONS(1730), [anon_sym_COLON_COLON] = ACTIONS(1732), [anon_sym_LBRACK_LBRACK] = ACTIONS(1732), [anon_sym___declspec] = ACTIONS(1730), [anon_sym___based] = ACTIONS(1730), [anon_sym___cdecl] = ACTIONS(1730), [anon_sym___clrcall] = ACTIONS(1730), [anon_sym___stdcall] = ACTIONS(1730), [anon_sym___fastcall] = ACTIONS(1730), [anon_sym___thiscall] = ACTIONS(1730), [anon_sym___vectorcall] = ACTIONS(1730), [anon_sym_LBRACE] = ACTIONS(1732), [anon_sym_LBRACK] = ACTIONS(1730), [anon_sym_static] = ACTIONS(1730), [anon_sym_register] = ACTIONS(1730), [anon_sym_inline] = ACTIONS(1730), [anon_sym_thread_local] = ACTIONS(1730), [anon_sym_const] = ACTIONS(1730), [anon_sym_volatile] = ACTIONS(1730), [anon_sym_restrict] = ACTIONS(1730), [anon_sym__Atomic] = ACTIONS(1730), [anon_sym_mutable] = ACTIONS(1730), [anon_sym_constexpr] = ACTIONS(1730), [anon_sym_signed] = ACTIONS(1730), [anon_sym_unsigned] = ACTIONS(1730), [anon_sym_long] = ACTIONS(1730), [anon_sym_short] = ACTIONS(1730), [sym_primitive_type] = ACTIONS(1730), [anon_sym_enum] = ACTIONS(1730), [anon_sym_class] = ACTIONS(1730), [anon_sym_struct] = ACTIONS(1730), [anon_sym_union] = ACTIONS(1730), [anon_sym_if] = ACTIONS(1730), [anon_sym_else] = ACTIONS(1730), [anon_sym_switch] = ACTIONS(1730), [anon_sym_case] = ACTIONS(1730), [anon_sym_default] = ACTIONS(1730), [anon_sym_while] = ACTIONS(1730), [anon_sym_do] = ACTIONS(1730), [anon_sym_for] = ACTIONS(1730), [anon_sym_return] = ACTIONS(1730), [anon_sym_break] = ACTIONS(1730), [anon_sym_continue] = ACTIONS(1730), [anon_sym_goto] = ACTIONS(1730), [anon_sym_DASH_DASH] = ACTIONS(1732), [anon_sym_PLUS_PLUS] = ACTIONS(1732), [anon_sym_sizeof] = ACTIONS(1730), [sym_number_literal] = ACTIONS(1732), [anon_sym_L_SQUOTE] = ACTIONS(1732), [anon_sym_u_SQUOTE] = ACTIONS(1732), [anon_sym_U_SQUOTE] = ACTIONS(1732), [anon_sym_u8_SQUOTE] = ACTIONS(1732), [anon_sym_SQUOTE] = ACTIONS(1732), [anon_sym_L_DQUOTE] = ACTIONS(1732), [anon_sym_u_DQUOTE] = ACTIONS(1732), [anon_sym_U_DQUOTE] = ACTIONS(1732), [anon_sym_u8_DQUOTE] = ACTIONS(1732), [anon_sym_DQUOTE] = ACTIONS(1732), [sym_true] = ACTIONS(1730), [sym_false] = ACTIONS(1730), [sym_null] = ACTIONS(1730), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1730), [anon_sym_virtual] = ACTIONS(1730), [anon_sym_explicit] = ACTIONS(1730), [sym_auto] = ACTIONS(1730), [anon_sym_typename] = ACTIONS(1730), [anon_sym_template] = ACTIONS(1730), [anon_sym_operator] = ACTIONS(1730), [anon_sym_delete] = ACTIONS(1730), [anon_sym_throw] = ACTIONS(1730), [anon_sym_namespace] = ACTIONS(1730), [anon_sym_using] = ACTIONS(1730), [anon_sym_static_assert] = ACTIONS(1730), [anon_sym_co_return] = ACTIONS(1730), [anon_sym_co_yield] = ACTIONS(1730), [anon_sym_try] = ACTIONS(1730), [anon_sym_catch] = ACTIONS(1767), [anon_sym_co_await] = ACTIONS(1730), [anon_sym_new] = ACTIONS(1730), [sym_this] = ACTIONS(1730), [sym_nullptr] = ACTIONS(1730), [sym_raw_string_literal] = ACTIONS(1732), }, [148] = { [sym_catch_clause] = STATE(148), [aux_sym_try_statement_repeat1] = STATE(148), [sym_identifier] = ACTIONS(1736), [aux_sym_preproc_include_token1] = ACTIONS(1736), [aux_sym_preproc_def_token1] = ACTIONS(1736), [aux_sym_preproc_if_token1] = ACTIONS(1736), [aux_sym_preproc_if_token2] = ACTIONS(1736), [aux_sym_preproc_ifdef_token1] = ACTIONS(1736), [aux_sym_preproc_ifdef_token2] = ACTIONS(1736), [sym_preproc_directive] = ACTIONS(1736), [anon_sym_LPAREN2] = ACTIONS(1738), [anon_sym_BANG] = ACTIONS(1738), [anon_sym_TILDE] = ACTIONS(1738), [anon_sym_DASH] = ACTIONS(1736), [anon_sym_PLUS] = ACTIONS(1736), [anon_sym_STAR] = ACTIONS(1738), [anon_sym_AMP_AMP] = ACTIONS(1738), [anon_sym_AMP] = ACTIONS(1736), [anon_sym_SEMI] = ACTIONS(1738), [anon_sym_typedef] = ACTIONS(1736), [anon_sym_extern] = ACTIONS(1736), [anon_sym___attribute__] = ACTIONS(1736), [anon_sym_COLON_COLON] = ACTIONS(1738), [anon_sym_LBRACK_LBRACK] = ACTIONS(1738), [anon_sym___declspec] = ACTIONS(1736), [anon_sym___based] = ACTIONS(1736), [anon_sym___cdecl] = ACTIONS(1736), [anon_sym___clrcall] = ACTIONS(1736), [anon_sym___stdcall] = ACTIONS(1736), [anon_sym___fastcall] = ACTIONS(1736), [anon_sym___thiscall] = ACTIONS(1736), [anon_sym___vectorcall] = ACTIONS(1736), [anon_sym_LBRACE] = ACTIONS(1738), [anon_sym_LBRACK] = ACTIONS(1736), [anon_sym_static] = ACTIONS(1736), [anon_sym_register] = ACTIONS(1736), [anon_sym_inline] = ACTIONS(1736), [anon_sym_thread_local] = ACTIONS(1736), [anon_sym_const] = ACTIONS(1736), [anon_sym_volatile] = ACTIONS(1736), [anon_sym_restrict] = ACTIONS(1736), [anon_sym__Atomic] = ACTIONS(1736), [anon_sym_mutable] = ACTIONS(1736), [anon_sym_constexpr] = ACTIONS(1736), [anon_sym_signed] = ACTIONS(1736), [anon_sym_unsigned] = ACTIONS(1736), [anon_sym_long] = ACTIONS(1736), [anon_sym_short] = ACTIONS(1736), [sym_primitive_type] = ACTIONS(1736), [anon_sym_enum] = ACTIONS(1736), [anon_sym_class] = ACTIONS(1736), [anon_sym_struct] = ACTIONS(1736), [anon_sym_union] = ACTIONS(1736), [anon_sym_if] = ACTIONS(1736), [anon_sym_else] = ACTIONS(1736), [anon_sym_switch] = ACTIONS(1736), [anon_sym_case] = ACTIONS(1736), [anon_sym_default] = ACTIONS(1736), [anon_sym_while] = ACTIONS(1736), [anon_sym_do] = ACTIONS(1736), [anon_sym_for] = ACTIONS(1736), [anon_sym_return] = ACTIONS(1736), [anon_sym_break] = ACTIONS(1736), [anon_sym_continue] = ACTIONS(1736), [anon_sym_goto] = ACTIONS(1736), [anon_sym_DASH_DASH] = ACTIONS(1738), [anon_sym_PLUS_PLUS] = ACTIONS(1738), [anon_sym_sizeof] = ACTIONS(1736), [sym_number_literal] = ACTIONS(1738), [anon_sym_L_SQUOTE] = ACTIONS(1738), [anon_sym_u_SQUOTE] = ACTIONS(1738), [anon_sym_U_SQUOTE] = ACTIONS(1738), [anon_sym_u8_SQUOTE] = ACTIONS(1738), [anon_sym_SQUOTE] = ACTIONS(1738), [anon_sym_L_DQUOTE] = ACTIONS(1738), [anon_sym_u_DQUOTE] = ACTIONS(1738), [anon_sym_U_DQUOTE] = ACTIONS(1738), [anon_sym_u8_DQUOTE] = ACTIONS(1738), [anon_sym_DQUOTE] = ACTIONS(1738), [sym_true] = ACTIONS(1736), [sym_false] = ACTIONS(1736), [sym_null] = ACTIONS(1736), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1736), [anon_sym_virtual] = ACTIONS(1736), [anon_sym_explicit] = ACTIONS(1736), [sym_auto] = ACTIONS(1736), [anon_sym_typename] = ACTIONS(1736), [anon_sym_template] = ACTIONS(1736), [anon_sym_operator] = ACTIONS(1736), [anon_sym_delete] = ACTIONS(1736), [anon_sym_throw] = ACTIONS(1736), [anon_sym_namespace] = ACTIONS(1736), [anon_sym_using] = ACTIONS(1736), [anon_sym_static_assert] = ACTIONS(1736), [anon_sym_co_return] = ACTIONS(1736), [anon_sym_co_yield] = ACTIONS(1736), [anon_sym_try] = ACTIONS(1736), [anon_sym_catch] = ACTIONS(1769), [anon_sym_co_await] = ACTIONS(1736), [anon_sym_new] = ACTIONS(1736), [sym_this] = ACTIONS(1736), [sym_nullptr] = ACTIONS(1736), [sym_raw_string_literal] = ACTIONS(1738), }, [149] = { [sym_catch_clause] = STATE(143), [aux_sym_try_statement_repeat1] = STATE(143), [sym_identifier] = ACTIONS(1730), [aux_sym_preproc_include_token1] = ACTIONS(1730), [aux_sym_preproc_def_token1] = ACTIONS(1730), [aux_sym_preproc_if_token1] = ACTIONS(1730), [aux_sym_preproc_ifdef_token1] = ACTIONS(1730), [aux_sym_preproc_ifdef_token2] = ACTIONS(1730), [sym_preproc_directive] = ACTIONS(1730), [anon_sym_LPAREN2] = ACTIONS(1732), [anon_sym_BANG] = ACTIONS(1732), [anon_sym_TILDE] = ACTIONS(1732), [anon_sym_DASH] = ACTIONS(1730), [anon_sym_PLUS] = ACTIONS(1730), [anon_sym_STAR] = ACTIONS(1732), [anon_sym_AMP_AMP] = ACTIONS(1732), [anon_sym_AMP] = ACTIONS(1730), [anon_sym_SEMI] = ACTIONS(1732), [anon_sym_typedef] = ACTIONS(1730), [anon_sym_extern] = ACTIONS(1730), [anon_sym___attribute__] = ACTIONS(1730), [anon_sym_COLON_COLON] = ACTIONS(1732), [anon_sym_LBRACK_LBRACK] = ACTIONS(1732), [anon_sym___declspec] = ACTIONS(1730), [anon_sym___based] = ACTIONS(1730), [anon_sym___cdecl] = ACTIONS(1730), [anon_sym___clrcall] = ACTIONS(1730), [anon_sym___stdcall] = ACTIONS(1730), [anon_sym___fastcall] = ACTIONS(1730), [anon_sym___thiscall] = ACTIONS(1730), [anon_sym___vectorcall] = ACTIONS(1730), [anon_sym_LBRACE] = ACTIONS(1732), [anon_sym_RBRACE] = ACTIONS(1732), [anon_sym_LBRACK] = ACTIONS(1730), [anon_sym_static] = ACTIONS(1730), [anon_sym_register] = ACTIONS(1730), [anon_sym_inline] = ACTIONS(1730), [anon_sym_thread_local] = ACTIONS(1730), [anon_sym_const] = ACTIONS(1730), [anon_sym_volatile] = ACTIONS(1730), [anon_sym_restrict] = ACTIONS(1730), [anon_sym__Atomic] = ACTIONS(1730), [anon_sym_mutable] = ACTIONS(1730), [anon_sym_constexpr] = ACTIONS(1730), [anon_sym_signed] = ACTIONS(1730), [anon_sym_unsigned] = ACTIONS(1730), [anon_sym_long] = ACTIONS(1730), [anon_sym_short] = ACTIONS(1730), [sym_primitive_type] = ACTIONS(1730), [anon_sym_enum] = ACTIONS(1730), [anon_sym_class] = ACTIONS(1730), [anon_sym_struct] = ACTIONS(1730), [anon_sym_union] = ACTIONS(1730), [anon_sym_if] = ACTIONS(1730), [anon_sym_else] = ACTIONS(1730), [anon_sym_switch] = ACTIONS(1730), [anon_sym_case] = ACTIONS(1730), [anon_sym_default] = ACTIONS(1730), [anon_sym_while] = ACTIONS(1730), [anon_sym_do] = ACTIONS(1730), [anon_sym_for] = ACTIONS(1730), [anon_sym_return] = ACTIONS(1730), [anon_sym_break] = ACTIONS(1730), [anon_sym_continue] = ACTIONS(1730), [anon_sym_goto] = ACTIONS(1730), [anon_sym_DASH_DASH] = ACTIONS(1732), [anon_sym_PLUS_PLUS] = ACTIONS(1732), [anon_sym_sizeof] = ACTIONS(1730), [sym_number_literal] = ACTIONS(1732), [anon_sym_L_SQUOTE] = ACTIONS(1732), [anon_sym_u_SQUOTE] = ACTIONS(1732), [anon_sym_U_SQUOTE] = ACTIONS(1732), [anon_sym_u8_SQUOTE] = ACTIONS(1732), [anon_sym_SQUOTE] = ACTIONS(1732), [anon_sym_L_DQUOTE] = ACTIONS(1732), [anon_sym_u_DQUOTE] = ACTIONS(1732), [anon_sym_U_DQUOTE] = ACTIONS(1732), [anon_sym_u8_DQUOTE] = ACTIONS(1732), [anon_sym_DQUOTE] = ACTIONS(1732), [sym_true] = ACTIONS(1730), [sym_false] = ACTIONS(1730), [sym_null] = ACTIONS(1730), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1730), [anon_sym_virtual] = ACTIONS(1730), [anon_sym_explicit] = ACTIONS(1730), [sym_auto] = ACTIONS(1730), [anon_sym_typename] = ACTIONS(1730), [anon_sym_template] = ACTIONS(1730), [anon_sym_operator] = ACTIONS(1730), [anon_sym_delete] = ACTIONS(1730), [anon_sym_throw] = ACTIONS(1730), [anon_sym_namespace] = ACTIONS(1730), [anon_sym_using] = ACTIONS(1730), [anon_sym_static_assert] = ACTIONS(1730), [anon_sym_co_return] = ACTIONS(1730), [anon_sym_co_yield] = ACTIONS(1730), [anon_sym_try] = ACTIONS(1730), [anon_sym_catch] = ACTIONS(1772), [anon_sym_co_await] = ACTIONS(1730), [anon_sym_new] = ACTIONS(1730), [sym_this] = ACTIONS(1730), [sym_nullptr] = ACTIONS(1730), [sym_raw_string_literal] = ACTIONS(1732), }, [150] = { [sym_catch_clause] = STATE(145), [aux_sym_try_statement_repeat1] = STATE(145), [ts_builtin_sym_end] = ACTIONS(1732), [sym_identifier] = ACTIONS(1730), [aux_sym_preproc_include_token1] = ACTIONS(1730), [aux_sym_preproc_def_token1] = ACTIONS(1730), [aux_sym_preproc_if_token1] = ACTIONS(1730), [aux_sym_preproc_ifdef_token1] = ACTIONS(1730), [aux_sym_preproc_ifdef_token2] = ACTIONS(1730), [sym_preproc_directive] = ACTIONS(1730), [anon_sym_LPAREN2] = ACTIONS(1732), [anon_sym_BANG] = ACTIONS(1732), [anon_sym_TILDE] = ACTIONS(1732), [anon_sym_DASH] = ACTIONS(1730), [anon_sym_PLUS] = ACTIONS(1730), [anon_sym_STAR] = ACTIONS(1732), [anon_sym_AMP_AMP] = ACTIONS(1732), [anon_sym_AMP] = ACTIONS(1730), [anon_sym_SEMI] = ACTIONS(1732), [anon_sym_typedef] = ACTIONS(1730), [anon_sym_extern] = ACTIONS(1730), [anon_sym___attribute__] = ACTIONS(1730), [anon_sym_COLON_COLON] = ACTIONS(1732), [anon_sym_LBRACK_LBRACK] = ACTIONS(1732), [anon_sym___declspec] = ACTIONS(1730), [anon_sym___based] = ACTIONS(1730), [anon_sym___cdecl] = ACTIONS(1730), [anon_sym___clrcall] = ACTIONS(1730), [anon_sym___stdcall] = ACTIONS(1730), [anon_sym___fastcall] = ACTIONS(1730), [anon_sym___thiscall] = ACTIONS(1730), [anon_sym___vectorcall] = ACTIONS(1730), [anon_sym_LBRACE] = ACTIONS(1732), [anon_sym_LBRACK] = ACTIONS(1730), [anon_sym_static] = ACTIONS(1730), [anon_sym_register] = ACTIONS(1730), [anon_sym_inline] = ACTIONS(1730), [anon_sym_thread_local] = ACTIONS(1730), [anon_sym_const] = ACTIONS(1730), [anon_sym_volatile] = ACTIONS(1730), [anon_sym_restrict] = ACTIONS(1730), [anon_sym__Atomic] = ACTIONS(1730), [anon_sym_mutable] = ACTIONS(1730), [anon_sym_constexpr] = ACTIONS(1730), [anon_sym_signed] = ACTIONS(1730), [anon_sym_unsigned] = ACTIONS(1730), [anon_sym_long] = ACTIONS(1730), [anon_sym_short] = ACTIONS(1730), [sym_primitive_type] = ACTIONS(1730), [anon_sym_enum] = ACTIONS(1730), [anon_sym_class] = ACTIONS(1730), [anon_sym_struct] = ACTIONS(1730), [anon_sym_union] = ACTIONS(1730), [anon_sym_if] = ACTIONS(1730), [anon_sym_else] = ACTIONS(1730), [anon_sym_switch] = ACTIONS(1730), [anon_sym_case] = ACTIONS(1730), [anon_sym_default] = ACTIONS(1730), [anon_sym_while] = ACTIONS(1730), [anon_sym_do] = ACTIONS(1730), [anon_sym_for] = ACTIONS(1730), [anon_sym_return] = ACTIONS(1730), [anon_sym_break] = ACTIONS(1730), [anon_sym_continue] = ACTIONS(1730), [anon_sym_goto] = ACTIONS(1730), [anon_sym_DASH_DASH] = ACTIONS(1732), [anon_sym_PLUS_PLUS] = ACTIONS(1732), [anon_sym_sizeof] = ACTIONS(1730), [sym_number_literal] = ACTIONS(1732), [anon_sym_L_SQUOTE] = ACTIONS(1732), [anon_sym_u_SQUOTE] = ACTIONS(1732), [anon_sym_U_SQUOTE] = ACTIONS(1732), [anon_sym_u8_SQUOTE] = ACTIONS(1732), [anon_sym_SQUOTE] = ACTIONS(1732), [anon_sym_L_DQUOTE] = ACTIONS(1732), [anon_sym_u_DQUOTE] = ACTIONS(1732), [anon_sym_U_DQUOTE] = ACTIONS(1732), [anon_sym_u8_DQUOTE] = ACTIONS(1732), [anon_sym_DQUOTE] = ACTIONS(1732), [sym_true] = ACTIONS(1730), [sym_false] = ACTIONS(1730), [sym_null] = ACTIONS(1730), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1730), [anon_sym_virtual] = ACTIONS(1730), [anon_sym_explicit] = ACTIONS(1730), [sym_auto] = ACTIONS(1730), [anon_sym_typename] = ACTIONS(1730), [anon_sym_template] = ACTIONS(1730), [anon_sym_operator] = ACTIONS(1730), [anon_sym_delete] = ACTIONS(1730), [anon_sym_throw] = ACTIONS(1730), [anon_sym_namespace] = ACTIONS(1730), [anon_sym_using] = ACTIONS(1730), [anon_sym_static_assert] = ACTIONS(1730), [anon_sym_co_return] = ACTIONS(1730), [anon_sym_co_yield] = ACTIONS(1730), [anon_sym_try] = ACTIONS(1730), [anon_sym_catch] = ACTIONS(1774), [anon_sym_co_await] = ACTIONS(1730), [anon_sym_new] = ACTIONS(1730), [sym_this] = ACTIONS(1730), [sym_nullptr] = ACTIONS(1730), [sym_raw_string_literal] = ACTIONS(1732), }, [151] = { [sym_compound_statement] = STATE(206), [sym_labeled_statement] = STATE(206), [sym_expression_statement] = STATE(206), [sym_if_statement] = STATE(206), [sym_switch_statement] = STATE(206), [sym_case_statement] = STATE(206), [sym_while_statement] = STATE(206), [sym_do_statement] = STATE(206), [sym_for_statement] = STATE(206), [sym_return_statement] = STATE(206), [sym_break_statement] = STATE(206), [sym_continue_statement] = STATE(206), [sym_goto_statement] = STATE(206), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(206), [sym_co_return_statement] = STATE(206), [sym_co_yield_statement] = STATE(206), [sym_throw_statement] = STATE(206), [sym_try_statement] = STATE(206), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [152] = { [sym_identifier] = ACTIONS(1778), [aux_sym_preproc_include_token1] = ACTIONS(1778), [aux_sym_preproc_def_token1] = ACTIONS(1778), [aux_sym_preproc_if_token1] = ACTIONS(1778), [aux_sym_preproc_if_token2] = ACTIONS(1778), [aux_sym_preproc_ifdef_token1] = ACTIONS(1778), [aux_sym_preproc_ifdef_token2] = ACTIONS(1778), [aux_sym_preproc_else_token1] = ACTIONS(1778), [aux_sym_preproc_elif_token1] = ACTIONS(1778), [sym_preproc_directive] = ACTIONS(1778), [anon_sym_LPAREN2] = ACTIONS(1780), [anon_sym_BANG] = ACTIONS(1780), [anon_sym_TILDE] = ACTIONS(1780), [anon_sym_DASH] = ACTIONS(1778), [anon_sym_PLUS] = ACTIONS(1778), [anon_sym_STAR] = ACTIONS(1780), [anon_sym_AMP_AMP] = ACTIONS(1780), [anon_sym_AMP] = ACTIONS(1778), [anon_sym_SEMI] = ACTIONS(1780), [anon_sym_typedef] = ACTIONS(1778), [anon_sym_extern] = ACTIONS(1778), [anon_sym___attribute__] = ACTIONS(1778), [anon_sym_COLON_COLON] = ACTIONS(1780), [anon_sym_LBRACK_LBRACK] = ACTIONS(1780), [anon_sym___declspec] = ACTIONS(1778), [anon_sym___based] = ACTIONS(1778), [anon_sym___cdecl] = ACTIONS(1778), [anon_sym___clrcall] = ACTIONS(1778), [anon_sym___stdcall] = ACTIONS(1778), [anon_sym___fastcall] = ACTIONS(1778), [anon_sym___thiscall] = ACTIONS(1778), [anon_sym___vectorcall] = ACTIONS(1778), [anon_sym_LBRACE] = ACTIONS(1780), [anon_sym_LBRACK] = ACTIONS(1778), [anon_sym_static] = ACTIONS(1778), [anon_sym_register] = ACTIONS(1778), [anon_sym_inline] = ACTIONS(1778), [anon_sym_thread_local] = ACTIONS(1778), [anon_sym_const] = ACTIONS(1778), [anon_sym_volatile] = ACTIONS(1778), [anon_sym_restrict] = ACTIONS(1778), [anon_sym__Atomic] = ACTIONS(1778), [anon_sym_mutable] = ACTIONS(1778), [anon_sym_constexpr] = ACTIONS(1778), [anon_sym_signed] = ACTIONS(1778), [anon_sym_unsigned] = ACTIONS(1778), [anon_sym_long] = ACTIONS(1778), [anon_sym_short] = ACTIONS(1778), [sym_primitive_type] = ACTIONS(1778), [anon_sym_enum] = ACTIONS(1778), [anon_sym_class] = ACTIONS(1778), [anon_sym_struct] = ACTIONS(1778), [anon_sym_union] = ACTIONS(1778), [anon_sym_if] = ACTIONS(1778), [anon_sym_else] = ACTIONS(1778), [anon_sym_switch] = ACTIONS(1778), [anon_sym_case] = ACTIONS(1778), [anon_sym_default] = ACTIONS(1778), [anon_sym_while] = ACTIONS(1778), [anon_sym_do] = ACTIONS(1778), [anon_sym_for] = ACTIONS(1778), [anon_sym_return] = ACTIONS(1778), [anon_sym_break] = ACTIONS(1778), [anon_sym_continue] = ACTIONS(1778), [anon_sym_goto] = ACTIONS(1778), [anon_sym_DASH_DASH] = ACTIONS(1780), [anon_sym_PLUS_PLUS] = ACTIONS(1780), [anon_sym_sizeof] = ACTIONS(1778), [sym_number_literal] = ACTIONS(1780), [anon_sym_L_SQUOTE] = ACTIONS(1780), [anon_sym_u_SQUOTE] = ACTIONS(1780), [anon_sym_U_SQUOTE] = ACTIONS(1780), [anon_sym_u8_SQUOTE] = ACTIONS(1780), [anon_sym_SQUOTE] = ACTIONS(1780), [anon_sym_L_DQUOTE] = ACTIONS(1780), [anon_sym_u_DQUOTE] = ACTIONS(1780), [anon_sym_U_DQUOTE] = ACTIONS(1780), [anon_sym_u8_DQUOTE] = ACTIONS(1780), [anon_sym_DQUOTE] = ACTIONS(1780), [sym_true] = ACTIONS(1778), [sym_false] = ACTIONS(1778), [sym_null] = ACTIONS(1778), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1778), [anon_sym_virtual] = ACTIONS(1778), [anon_sym_explicit] = ACTIONS(1778), [sym_auto] = ACTIONS(1778), [anon_sym_typename] = ACTIONS(1778), [anon_sym_template] = ACTIONS(1778), [anon_sym_operator] = ACTIONS(1778), [anon_sym_delete] = ACTIONS(1778), [anon_sym_throw] = ACTIONS(1778), [anon_sym_namespace] = ACTIONS(1778), [anon_sym_using] = ACTIONS(1778), [anon_sym_static_assert] = ACTIONS(1778), [anon_sym_co_return] = ACTIONS(1778), [anon_sym_co_yield] = ACTIONS(1778), [anon_sym_try] = ACTIONS(1778), [anon_sym_co_await] = ACTIONS(1778), [anon_sym_new] = ACTIONS(1778), [sym_this] = ACTIONS(1778), [sym_nullptr] = ACTIONS(1778), [sym_raw_string_literal] = ACTIONS(1780), }, [153] = { [sym_compound_statement] = STATE(599), [sym_labeled_statement] = STATE(599), [sym_expression_statement] = STATE(599), [sym_if_statement] = STATE(599), [sym_switch_statement] = STATE(599), [sym_case_statement] = STATE(599), [sym_while_statement] = STATE(599), [sym_do_statement] = STATE(599), [sym_for_statement] = STATE(599), [sym_return_statement] = STATE(599), [sym_break_statement] = STATE(599), [sym_continue_statement] = STATE(599), [sym_goto_statement] = STATE(599), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(599), [sym_co_return_statement] = STATE(599), [sym_co_yield_statement] = STATE(599), [sym_throw_statement] = STATE(599), [sym_try_statement] = STATE(599), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [154] = { [sym_compound_statement] = STATE(302), [sym_labeled_statement] = STATE(302), [sym_expression_statement] = STATE(302), [sym_if_statement] = STATE(302), [sym_switch_statement] = STATE(302), [sym_case_statement] = STATE(302), [sym_while_statement] = STATE(302), [sym_do_statement] = STATE(302), [sym_for_statement] = STATE(302), [sym_return_statement] = STATE(302), [sym_break_statement] = STATE(302), [sym_continue_statement] = STATE(302), [sym_goto_statement] = STATE(302), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(302), [sym_co_return_statement] = STATE(302), [sym_co_yield_statement] = STATE(302), [sym_throw_statement] = STATE(302), [sym_try_statement] = STATE(302), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [155] = { [sym_compound_statement] = STATE(616), [sym_labeled_statement] = STATE(625), [sym_expression_statement] = STATE(626), [sym_if_statement] = STATE(639), [sym_switch_statement] = STATE(640), [sym_case_statement] = STATE(645), [sym_while_statement] = STATE(648), [sym_do_statement] = STATE(651), [sym_for_statement] = STATE(652), [sym_return_statement] = STATE(655), [sym_break_statement] = STATE(654), [sym_continue_statement] = STATE(653), [sym_goto_statement] = STATE(649), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(646), [sym_co_return_statement] = STATE(644), [sym_co_yield_statement] = STATE(642), [sym_throw_statement] = STATE(637), [sym_try_statement] = STATE(635), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [156] = { [sym_compound_statement] = STATE(615), [sym_labeled_statement] = STATE(615), [sym_expression_statement] = STATE(615), [sym_if_statement] = STATE(615), [sym_switch_statement] = STATE(615), [sym_case_statement] = STATE(615), [sym_while_statement] = STATE(615), [sym_do_statement] = STATE(615), [sym_for_statement] = STATE(615), [sym_return_statement] = STATE(615), [sym_break_statement] = STATE(615), [sym_continue_statement] = STATE(615), [sym_goto_statement] = STATE(615), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(615), [sym_co_return_statement] = STATE(615), [sym_co_yield_statement] = STATE(615), [sym_throw_statement] = STATE(615), [sym_try_statement] = STATE(615), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [157] = { [sym_compound_statement] = STATE(600), [sym_labeled_statement] = STATE(600), [sym_expression_statement] = STATE(600), [sym_if_statement] = STATE(600), [sym_switch_statement] = STATE(600), [sym_case_statement] = STATE(600), [sym_while_statement] = STATE(600), [sym_do_statement] = STATE(600), [sym_for_statement] = STATE(600), [sym_return_statement] = STATE(600), [sym_break_statement] = STATE(600), [sym_continue_statement] = STATE(600), [sym_goto_statement] = STATE(600), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(600), [sym_co_return_statement] = STATE(600), [sym_co_yield_statement] = STATE(600), [sym_throw_statement] = STATE(600), [sym_try_statement] = STATE(600), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [158] = { [sym_compound_statement] = STATE(573), [sym_labeled_statement] = STATE(573), [sym_expression_statement] = STATE(573), [sym_if_statement] = STATE(573), [sym_switch_statement] = STATE(573), [sym_case_statement] = STATE(573), [sym_while_statement] = STATE(573), [sym_do_statement] = STATE(573), [sym_for_statement] = STATE(573), [sym_return_statement] = STATE(573), [sym_break_statement] = STATE(573), [sym_continue_statement] = STATE(573), [sym_goto_statement] = STATE(573), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(573), [sym_co_return_statement] = STATE(573), [sym_co_yield_statement] = STATE(573), [sym_throw_statement] = STATE(573), [sym_try_statement] = STATE(573), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [159] = { [sym_compound_statement] = STATE(571), [sym_labeled_statement] = STATE(571), [sym_expression_statement] = STATE(571), [sym_if_statement] = STATE(571), [sym_switch_statement] = STATE(571), [sym_case_statement] = STATE(571), [sym_while_statement] = STATE(571), [sym_do_statement] = STATE(571), [sym_for_statement] = STATE(571), [sym_return_statement] = STATE(571), [sym_break_statement] = STATE(571), [sym_continue_statement] = STATE(571), [sym_goto_statement] = STATE(571), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(571), [sym_co_return_statement] = STATE(571), [sym_co_yield_statement] = STATE(571), [sym_throw_statement] = STATE(571), [sym_try_statement] = STATE(571), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [160] = { [sym_compound_statement] = STATE(568), [sym_labeled_statement] = STATE(568), [sym_expression_statement] = STATE(568), [sym_if_statement] = STATE(568), [sym_switch_statement] = STATE(568), [sym_case_statement] = STATE(568), [sym_while_statement] = STATE(568), [sym_do_statement] = STATE(568), [sym_for_statement] = STATE(568), [sym_return_statement] = STATE(568), [sym_break_statement] = STATE(568), [sym_continue_statement] = STATE(568), [sym_goto_statement] = STATE(568), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(568), [sym_co_return_statement] = STATE(568), [sym_co_yield_statement] = STATE(568), [sym_throw_statement] = STATE(568), [sym_try_statement] = STATE(568), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [161] = { [sym_compound_statement] = STATE(566), [sym_labeled_statement] = STATE(566), [sym_expression_statement] = STATE(566), [sym_if_statement] = STATE(566), [sym_switch_statement] = STATE(566), [sym_case_statement] = STATE(566), [sym_while_statement] = STATE(566), [sym_do_statement] = STATE(566), [sym_for_statement] = STATE(566), [sym_return_statement] = STATE(566), [sym_break_statement] = STATE(566), [sym_continue_statement] = STATE(566), [sym_goto_statement] = STATE(566), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(566), [sym_co_return_statement] = STATE(566), [sym_co_yield_statement] = STATE(566), [sym_throw_statement] = STATE(566), [sym_try_statement] = STATE(566), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [162] = { [sym_compound_statement] = STATE(565), [sym_labeled_statement] = STATE(565), [sym_expression_statement] = STATE(565), [sym_if_statement] = STATE(565), [sym_switch_statement] = STATE(565), [sym_case_statement] = STATE(565), [sym_while_statement] = STATE(565), [sym_do_statement] = STATE(565), [sym_for_statement] = STATE(565), [sym_return_statement] = STATE(565), [sym_break_statement] = STATE(565), [sym_continue_statement] = STATE(565), [sym_goto_statement] = STATE(565), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(565), [sym_co_return_statement] = STATE(565), [sym_co_yield_statement] = STATE(565), [sym_throw_statement] = STATE(565), [sym_try_statement] = STATE(565), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [163] = { [sym_compound_statement] = STATE(564), [sym_labeled_statement] = STATE(564), [sym_expression_statement] = STATE(564), [sym_if_statement] = STATE(564), [sym_switch_statement] = STATE(564), [sym_case_statement] = STATE(564), [sym_while_statement] = STATE(564), [sym_do_statement] = STATE(564), [sym_for_statement] = STATE(564), [sym_return_statement] = STATE(564), [sym_break_statement] = STATE(564), [sym_continue_statement] = STATE(564), [sym_goto_statement] = STATE(564), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(564), [sym_co_return_statement] = STATE(564), [sym_co_yield_statement] = STATE(564), [sym_throw_statement] = STATE(564), [sym_try_statement] = STATE(564), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [164] = { [sym_compound_statement] = STATE(562), [sym_labeled_statement] = STATE(562), [sym_expression_statement] = STATE(562), [sym_if_statement] = STATE(562), [sym_switch_statement] = STATE(562), [sym_case_statement] = STATE(562), [sym_while_statement] = STATE(562), [sym_do_statement] = STATE(562), [sym_for_statement] = STATE(562), [sym_return_statement] = STATE(562), [sym_break_statement] = STATE(562), [sym_continue_statement] = STATE(562), [sym_goto_statement] = STATE(562), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(562), [sym_co_return_statement] = STATE(562), [sym_co_yield_statement] = STATE(562), [sym_throw_statement] = STATE(562), [sym_try_statement] = STATE(562), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [165] = { [sym_compound_statement] = STATE(907), [sym_labeled_statement] = STATE(907), [sym_expression_statement] = STATE(907), [sym_if_statement] = STATE(907), [sym_switch_statement] = STATE(907), [sym_case_statement] = STATE(907), [sym_while_statement] = STATE(907), [sym_do_statement] = STATE(907), [sym_for_statement] = STATE(907), [sym_return_statement] = STATE(907), [sym_break_statement] = STATE(907), [sym_continue_statement] = STATE(907), [sym_goto_statement] = STATE(907), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(907), [sym_co_return_statement] = STATE(907), [sym_co_yield_statement] = STATE(907), [sym_throw_statement] = STATE(907), [sym_try_statement] = STATE(907), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1782), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1317), [anon_sym_switch] = ACTIONS(1319), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [166] = { [sym_compound_statement] = STATE(558), [sym_labeled_statement] = STATE(556), [sym_expression_statement] = STATE(555), [sym_if_statement] = STATE(550), [sym_switch_statement] = STATE(549), [sym_case_statement] = STATE(548), [sym_while_statement] = STATE(545), [sym_do_statement] = STATE(544), [sym_for_statement] = STATE(543), [sym_return_statement] = STATE(539), [sym_break_statement] = STATE(532), [sym_continue_statement] = STATE(529), [sym_goto_statement] = STATE(527), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(523), [sym_co_return_statement] = STATE(521), [sym_co_yield_statement] = STATE(520), [sym_throw_statement] = STATE(519), [sym_try_statement] = STATE(518), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [167] = { [sym_compound_statement] = STATE(450), [sym_labeled_statement] = STATE(450), [sym_expression_statement] = STATE(450), [sym_if_statement] = STATE(450), [sym_switch_statement] = STATE(450), [sym_case_statement] = STATE(450), [sym_while_statement] = STATE(450), [sym_do_statement] = STATE(450), [sym_for_statement] = STATE(450), [sym_return_statement] = STATE(450), [sym_break_statement] = STATE(450), [sym_continue_statement] = STATE(450), [sym_goto_statement] = STATE(450), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(450), [sym_co_return_statement] = STATE(450), [sym_co_yield_statement] = STATE(450), [sym_throw_statement] = STATE(450), [sym_try_statement] = STATE(450), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [168] = { [sym_compound_statement] = STATE(481), [sym_labeled_statement] = STATE(481), [sym_expression_statement] = STATE(481), [sym_if_statement] = STATE(481), [sym_switch_statement] = STATE(481), [sym_case_statement] = STATE(481), [sym_while_statement] = STATE(481), [sym_do_statement] = STATE(481), [sym_for_statement] = STATE(481), [sym_return_statement] = STATE(481), [sym_break_statement] = STATE(481), [sym_continue_statement] = STATE(481), [sym_goto_statement] = STATE(481), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(481), [sym_co_return_statement] = STATE(481), [sym_co_yield_statement] = STATE(481), [sym_throw_statement] = STATE(481), [sym_try_statement] = STATE(481), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [169] = { [sym_compound_statement] = STATE(480), [sym_labeled_statement] = STATE(480), [sym_expression_statement] = STATE(480), [sym_if_statement] = STATE(480), [sym_switch_statement] = STATE(480), [sym_case_statement] = STATE(480), [sym_while_statement] = STATE(480), [sym_do_statement] = STATE(480), [sym_for_statement] = STATE(480), [sym_return_statement] = STATE(480), [sym_break_statement] = STATE(480), [sym_continue_statement] = STATE(480), [sym_goto_statement] = STATE(480), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(480), [sym_co_return_statement] = STATE(480), [sym_co_yield_statement] = STATE(480), [sym_throw_statement] = STATE(480), [sym_try_statement] = STATE(480), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [170] = { [sym_compound_statement] = STATE(589), [sym_labeled_statement] = STATE(589), [sym_expression_statement] = STATE(589), [sym_if_statement] = STATE(589), [sym_switch_statement] = STATE(589), [sym_case_statement] = STATE(589), [sym_while_statement] = STATE(589), [sym_do_statement] = STATE(589), [sym_for_statement] = STATE(589), [sym_return_statement] = STATE(589), [sym_break_statement] = STATE(589), [sym_continue_statement] = STATE(589), [sym_goto_statement] = STATE(589), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(589), [sym_co_return_statement] = STATE(589), [sym_co_yield_statement] = STATE(589), [sym_throw_statement] = STATE(589), [sym_try_statement] = STATE(589), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [171] = { [sym_compound_statement] = STATE(5374), [sym_labeled_statement] = STATE(5374), [sym_expression_statement] = STATE(5374), [sym_if_statement] = STATE(5374), [sym_switch_statement] = STATE(5374), [sym_case_statement] = STATE(5374), [sym_while_statement] = STATE(5374), [sym_do_statement] = STATE(5374), [sym_for_statement] = STATE(5374), [sym_return_statement] = STATE(5374), [sym_break_statement] = STATE(5374), [sym_continue_statement] = STATE(5374), [sym_goto_statement] = STATE(5374), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(5374), [sym_co_return_statement] = STATE(5374), [sym_co_yield_statement] = STATE(5374), [sym_throw_statement] = STATE(5374), [sym_try_statement] = STATE(5374), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [172] = { [sym_compound_statement] = STATE(588), [sym_labeled_statement] = STATE(588), [sym_expression_statement] = STATE(588), [sym_if_statement] = STATE(588), [sym_switch_statement] = STATE(588), [sym_case_statement] = STATE(588), [sym_while_statement] = STATE(588), [sym_do_statement] = STATE(588), [sym_for_statement] = STATE(588), [sym_return_statement] = STATE(588), [sym_break_statement] = STATE(588), [sym_continue_statement] = STATE(588), [sym_goto_statement] = STATE(588), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(588), [sym_co_return_statement] = STATE(588), [sym_co_yield_statement] = STATE(588), [sym_throw_statement] = STATE(588), [sym_try_statement] = STATE(588), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [173] = { [sym_compound_statement] = STATE(587), [sym_labeled_statement] = STATE(587), [sym_expression_statement] = STATE(587), [sym_if_statement] = STATE(587), [sym_switch_statement] = STATE(587), [sym_case_statement] = STATE(587), [sym_while_statement] = STATE(587), [sym_do_statement] = STATE(587), [sym_for_statement] = STATE(587), [sym_return_statement] = STATE(587), [sym_break_statement] = STATE(587), [sym_continue_statement] = STATE(587), [sym_goto_statement] = STATE(587), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(587), [sym_co_return_statement] = STATE(587), [sym_co_yield_statement] = STATE(587), [sym_throw_statement] = STATE(587), [sym_try_statement] = STATE(587), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [174] = { [sym_compound_statement] = STATE(583), [sym_labeled_statement] = STATE(583), [sym_expression_statement] = STATE(583), [sym_if_statement] = STATE(583), [sym_switch_statement] = STATE(583), [sym_case_statement] = STATE(583), [sym_while_statement] = STATE(583), [sym_do_statement] = STATE(583), [sym_for_statement] = STATE(583), [sym_return_statement] = STATE(583), [sym_break_statement] = STATE(583), [sym_continue_statement] = STATE(583), [sym_goto_statement] = STATE(583), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(583), [sym_co_return_statement] = STATE(583), [sym_co_yield_statement] = STATE(583), [sym_throw_statement] = STATE(583), [sym_try_statement] = STATE(583), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [175] = { [sym_compound_statement] = STATE(578), [sym_labeled_statement] = STATE(578), [sym_expression_statement] = STATE(578), [sym_if_statement] = STATE(578), [sym_switch_statement] = STATE(578), [sym_case_statement] = STATE(578), [sym_while_statement] = STATE(578), [sym_do_statement] = STATE(578), [sym_for_statement] = STATE(578), [sym_return_statement] = STATE(578), [sym_break_statement] = STATE(578), [sym_continue_statement] = STATE(578), [sym_goto_statement] = STATE(578), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(578), [sym_co_return_statement] = STATE(578), [sym_co_yield_statement] = STATE(578), [sym_throw_statement] = STATE(578), [sym_try_statement] = STATE(578), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [176] = { [sym_compound_statement] = STATE(479), [sym_labeled_statement] = STATE(479), [sym_expression_statement] = STATE(479), [sym_if_statement] = STATE(479), [sym_switch_statement] = STATE(479), [sym_case_statement] = STATE(479), [sym_while_statement] = STATE(479), [sym_do_statement] = STATE(479), [sym_for_statement] = STATE(479), [sym_return_statement] = STATE(479), [sym_break_statement] = STATE(479), [sym_continue_statement] = STATE(479), [sym_goto_statement] = STATE(479), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(479), [sym_co_return_statement] = STATE(479), [sym_co_yield_statement] = STATE(479), [sym_throw_statement] = STATE(479), [sym_try_statement] = STATE(479), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [177] = { [sym_compound_statement] = STATE(5350), [sym_labeled_statement] = STATE(5350), [sym_expression_statement] = STATE(5350), [sym_if_statement] = STATE(5350), [sym_switch_statement] = STATE(5350), [sym_case_statement] = STATE(5350), [sym_while_statement] = STATE(5350), [sym_do_statement] = STATE(5350), [sym_for_statement] = STATE(5350), [sym_return_statement] = STATE(5350), [sym_break_statement] = STATE(5350), [sym_continue_statement] = STATE(5350), [sym_goto_statement] = STATE(5350), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(5350), [sym_co_return_statement] = STATE(5350), [sym_co_yield_statement] = STATE(5350), [sym_throw_statement] = STATE(5350), [sym_try_statement] = STATE(5350), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [178] = { [sym_compound_statement] = STATE(927), [sym_labeled_statement] = STATE(927), [sym_expression_statement] = STATE(927), [sym_if_statement] = STATE(927), [sym_switch_statement] = STATE(927), [sym_case_statement] = STATE(927), [sym_while_statement] = STATE(927), [sym_do_statement] = STATE(927), [sym_for_statement] = STATE(927), [sym_return_statement] = STATE(927), [sym_break_statement] = STATE(927), [sym_continue_statement] = STATE(927), [sym_goto_statement] = STATE(927), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(927), [sym_co_return_statement] = STATE(927), [sym_co_yield_statement] = STATE(927), [sym_throw_statement] = STATE(927), [sym_try_statement] = STATE(927), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1782), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1317), [anon_sym_switch] = ACTIONS(1319), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [179] = { [sym_compound_statement] = STATE(4971), [sym_labeled_statement] = STATE(4971), [sym_expression_statement] = STATE(4971), [sym_if_statement] = STATE(4971), [sym_switch_statement] = STATE(4971), [sym_case_statement] = STATE(4971), [sym_while_statement] = STATE(4971), [sym_do_statement] = STATE(4971), [sym_for_statement] = STATE(4971), [sym_return_statement] = STATE(4971), [sym_break_statement] = STATE(4971), [sym_continue_statement] = STATE(4971), [sym_goto_statement] = STATE(4971), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(4971), [sym_co_return_statement] = STATE(4971), [sym_co_yield_statement] = STATE(4971), [sym_throw_statement] = STATE(4971), [sym_try_statement] = STATE(4971), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [180] = { [sym_compound_statement] = STATE(4965), [sym_labeled_statement] = STATE(4965), [sym_expression_statement] = STATE(4965), [sym_if_statement] = STATE(4965), [sym_switch_statement] = STATE(4965), [sym_case_statement] = STATE(4965), [sym_while_statement] = STATE(4965), [sym_do_statement] = STATE(4965), [sym_for_statement] = STATE(4965), [sym_return_statement] = STATE(4965), [sym_break_statement] = STATE(4965), [sym_continue_statement] = STATE(4965), [sym_goto_statement] = STATE(4965), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(4965), [sym_co_return_statement] = STATE(4965), [sym_co_yield_statement] = STATE(4965), [sym_throw_statement] = STATE(4965), [sym_try_statement] = STATE(4965), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [181] = { [sym_compound_statement] = STATE(5318), [sym_labeled_statement] = STATE(5318), [sym_expression_statement] = STATE(5318), [sym_if_statement] = STATE(5318), [sym_switch_statement] = STATE(5318), [sym_case_statement] = STATE(5318), [sym_while_statement] = STATE(5318), [sym_do_statement] = STATE(5318), [sym_for_statement] = STATE(5318), [sym_return_statement] = STATE(5318), [sym_break_statement] = STATE(5318), [sym_continue_statement] = STATE(5318), [sym_goto_statement] = STATE(5318), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(5318), [sym_co_return_statement] = STATE(5318), [sym_co_yield_statement] = STATE(5318), [sym_throw_statement] = STATE(5318), [sym_try_statement] = STATE(5318), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [182] = { [sym_compound_statement] = STATE(5311), [sym_labeled_statement] = STATE(5311), [sym_expression_statement] = STATE(5311), [sym_if_statement] = STATE(5311), [sym_switch_statement] = STATE(5311), [sym_case_statement] = STATE(5311), [sym_while_statement] = STATE(5311), [sym_do_statement] = STATE(5311), [sym_for_statement] = STATE(5311), [sym_return_statement] = STATE(5311), [sym_break_statement] = STATE(5311), [sym_continue_statement] = STATE(5311), [sym_goto_statement] = STATE(5311), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(5311), [sym_co_return_statement] = STATE(5311), [sym_co_yield_statement] = STATE(5311), [sym_throw_statement] = STATE(5311), [sym_try_statement] = STATE(5311), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [183] = { [sym_compound_statement] = STATE(4873), [sym_labeled_statement] = STATE(4873), [sym_expression_statement] = STATE(4873), [sym_if_statement] = STATE(4873), [sym_switch_statement] = STATE(4873), [sym_case_statement] = STATE(4873), [sym_while_statement] = STATE(4873), [sym_do_statement] = STATE(4873), [sym_for_statement] = STATE(4873), [sym_return_statement] = STATE(4873), [sym_break_statement] = STATE(4873), [sym_continue_statement] = STATE(4873), [sym_goto_statement] = STATE(4873), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(4873), [sym_co_return_statement] = STATE(4873), [sym_co_yield_statement] = STATE(4873), [sym_throw_statement] = STATE(4873), [sym_try_statement] = STATE(4873), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [184] = { [sym_compound_statement] = STATE(542), [sym_labeled_statement] = STATE(542), [sym_expression_statement] = STATE(542), [sym_if_statement] = STATE(542), [sym_switch_statement] = STATE(542), [sym_case_statement] = STATE(542), [sym_while_statement] = STATE(542), [sym_do_statement] = STATE(542), [sym_for_statement] = STATE(542), [sym_return_statement] = STATE(542), [sym_break_statement] = STATE(542), [sym_continue_statement] = STATE(542), [sym_goto_statement] = STATE(542), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(542), [sym_co_return_statement] = STATE(542), [sym_co_yield_statement] = STATE(542), [sym_throw_statement] = STATE(542), [sym_try_statement] = STATE(542), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [185] = { [sym_attribute_declaration] = STATE(1376), [sym_compound_statement] = STATE(538), [sym_labeled_statement] = STATE(538), [sym_expression_statement] = STATE(538), [sym_if_statement] = STATE(538), [sym_switch_statement] = STATE(538), [sym_while_statement] = STATE(538), [sym_do_statement] = STATE(538), [sym_for_statement] = STATE(538), [sym_return_statement] = STATE(538), [sym_break_statement] = STATE(538), [sym_continue_statement] = STATE(538), [sym_goto_statement] = STATE(538), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(538), [sym_co_return_statement] = STATE(538), [sym_co_yield_statement] = STATE(538), [sym_throw_statement] = STATE(538), [sym_try_statement] = STATE(538), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_attributed_declarator_repeat1] = STATE(1376), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(929), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [186] = { [sym_compound_statement] = STATE(934), [sym_labeled_statement] = STATE(932), [sym_expression_statement] = STATE(931), [sym_if_statement] = STATE(928), [sym_switch_statement] = STATE(921), [sym_case_statement] = STATE(919), [sym_while_statement] = STATE(909), [sym_do_statement] = STATE(889), [sym_for_statement] = STATE(876), [sym_return_statement] = STATE(875), [sym_break_statement] = STATE(874), [sym_continue_statement] = STATE(868), [sym_goto_statement] = STATE(864), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(882), [sym_co_return_statement] = STATE(861), [sym_co_yield_statement] = STATE(906), [sym_throw_statement] = STATE(913), [sym_try_statement] = STATE(915), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1782), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1317), [anon_sym_switch] = ACTIONS(1319), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [187] = { [sym_attribute_declaration] = STATE(1376), [sym_compound_statement] = STATE(537), [sym_labeled_statement] = STATE(537), [sym_expression_statement] = STATE(537), [sym_if_statement] = STATE(537), [sym_switch_statement] = STATE(537), [sym_while_statement] = STATE(537), [sym_do_statement] = STATE(537), [sym_for_statement] = STATE(537), [sym_return_statement] = STATE(537), [sym_break_statement] = STATE(537), [sym_continue_statement] = STATE(537), [sym_goto_statement] = STATE(537), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(537), [sym_co_return_statement] = STATE(537), [sym_co_yield_statement] = STATE(537), [sym_throw_statement] = STATE(537), [sym_try_statement] = STATE(537), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_attributed_declarator_repeat1] = STATE(1376), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(929), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [188] = { [sym_compound_statement] = STATE(878), [sym_labeled_statement] = STATE(880), [sym_expression_statement] = STATE(885), [sym_if_statement] = STATE(888), [sym_switch_statement] = STATE(891), [sym_case_statement] = STATE(892), [sym_while_statement] = STATE(893), [sym_do_statement] = STATE(895), [sym_for_statement] = STATE(896), [sym_return_statement] = STATE(900), [sym_break_statement] = STATE(902), [sym_continue_statement] = STATE(903), [sym_goto_statement] = STATE(924), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(925), [sym_co_return_statement] = STATE(926), [sym_co_yield_statement] = STATE(860), [sym_throw_statement] = STATE(937), [sym_try_statement] = STATE(936), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1782), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1317), [anon_sym_switch] = ACTIONS(1319), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [189] = { [sym_compound_statement] = STATE(904), [sym_labeled_statement] = STATE(904), [sym_expression_statement] = STATE(904), [sym_if_statement] = STATE(904), [sym_switch_statement] = STATE(904), [sym_case_statement] = STATE(904), [sym_while_statement] = STATE(904), [sym_do_statement] = STATE(904), [sym_for_statement] = STATE(904), [sym_return_statement] = STATE(904), [sym_break_statement] = STATE(904), [sym_continue_statement] = STATE(904), [sym_goto_statement] = STATE(904), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(904), [sym_co_return_statement] = STATE(904), [sym_co_yield_statement] = STATE(904), [sym_throw_statement] = STATE(904), [sym_try_statement] = STATE(904), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1782), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1317), [anon_sym_switch] = ACTIONS(1319), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [190] = { [sym_compound_statement] = STATE(503), [sym_labeled_statement] = STATE(503), [sym_expression_statement] = STATE(503), [sym_if_statement] = STATE(503), [sym_switch_statement] = STATE(503), [sym_case_statement] = STATE(503), [sym_while_statement] = STATE(503), [sym_do_statement] = STATE(503), [sym_for_statement] = STATE(503), [sym_return_statement] = STATE(503), [sym_break_statement] = STATE(503), [sym_continue_statement] = STATE(503), [sym_goto_statement] = STATE(503), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(503), [sym_co_return_statement] = STATE(503), [sym_co_yield_statement] = STATE(503), [sym_throw_statement] = STATE(503), [sym_try_statement] = STATE(503), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [191] = { [sym_compound_statement] = STATE(455), [sym_labeled_statement] = STATE(455), [sym_expression_statement] = STATE(455), [sym_if_statement] = STATE(455), [sym_switch_statement] = STATE(455), [sym_case_statement] = STATE(455), [sym_while_statement] = STATE(455), [sym_do_statement] = STATE(455), [sym_for_statement] = STATE(455), [sym_return_statement] = STATE(455), [sym_break_statement] = STATE(455), [sym_continue_statement] = STATE(455), [sym_goto_statement] = STATE(455), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(455), [sym_co_return_statement] = STATE(455), [sym_co_yield_statement] = STATE(455), [sym_throw_statement] = STATE(455), [sym_try_statement] = STATE(455), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [192] = { [sym_compound_statement] = STATE(552), [sym_labeled_statement] = STATE(552), [sym_expression_statement] = STATE(552), [sym_if_statement] = STATE(552), [sym_switch_statement] = STATE(552), [sym_case_statement] = STATE(552), [sym_while_statement] = STATE(552), [sym_do_statement] = STATE(552), [sym_for_statement] = STATE(552), [sym_return_statement] = STATE(552), [sym_break_statement] = STATE(552), [sym_continue_statement] = STATE(552), [sym_goto_statement] = STATE(552), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(552), [sym_co_return_statement] = STATE(552), [sym_co_yield_statement] = STATE(552), [sym_throw_statement] = STATE(552), [sym_try_statement] = STATE(552), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [193] = { [sym_compound_statement] = STATE(458), [sym_labeled_statement] = STATE(458), [sym_expression_statement] = STATE(458), [sym_if_statement] = STATE(458), [sym_switch_statement] = STATE(458), [sym_case_statement] = STATE(458), [sym_while_statement] = STATE(458), [sym_do_statement] = STATE(458), [sym_for_statement] = STATE(458), [sym_return_statement] = STATE(458), [sym_break_statement] = STATE(458), [sym_continue_statement] = STATE(458), [sym_goto_statement] = STATE(458), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(458), [sym_co_return_statement] = STATE(458), [sym_co_yield_statement] = STATE(458), [sym_throw_statement] = STATE(458), [sym_try_statement] = STATE(458), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [194] = { [sym_compound_statement] = STATE(465), [sym_labeled_statement] = STATE(465), [sym_expression_statement] = STATE(465), [sym_if_statement] = STATE(465), [sym_switch_statement] = STATE(465), [sym_case_statement] = STATE(465), [sym_while_statement] = STATE(465), [sym_do_statement] = STATE(465), [sym_for_statement] = STATE(465), [sym_return_statement] = STATE(465), [sym_break_statement] = STATE(465), [sym_continue_statement] = STATE(465), [sym_goto_statement] = STATE(465), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(465), [sym_co_return_statement] = STATE(465), [sym_co_yield_statement] = STATE(465), [sym_throw_statement] = STATE(465), [sym_try_statement] = STATE(465), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [195] = { [sym_compound_statement] = STATE(453), [sym_labeled_statement] = STATE(453), [sym_expression_statement] = STATE(453), [sym_if_statement] = STATE(453), [sym_switch_statement] = STATE(453), [sym_case_statement] = STATE(453), [sym_while_statement] = STATE(453), [sym_do_statement] = STATE(453), [sym_for_statement] = STATE(453), [sym_return_statement] = STATE(453), [sym_break_statement] = STATE(453), [sym_continue_statement] = STATE(453), [sym_goto_statement] = STATE(453), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(453), [sym_co_return_statement] = STATE(453), [sym_co_yield_statement] = STATE(453), [sym_throw_statement] = STATE(453), [sym_try_statement] = STATE(453), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [196] = { [sym_identifier] = ACTIONS(1820), [aux_sym_preproc_include_token1] = ACTIONS(1820), [aux_sym_preproc_def_token1] = ACTIONS(1820), [aux_sym_preproc_if_token1] = ACTIONS(1820), [aux_sym_preproc_if_token2] = ACTIONS(1820), [aux_sym_preproc_ifdef_token1] = ACTIONS(1820), [aux_sym_preproc_ifdef_token2] = ACTIONS(1820), [aux_sym_preproc_else_token1] = ACTIONS(1820), [aux_sym_preproc_elif_token1] = ACTIONS(1820), [sym_preproc_directive] = ACTIONS(1820), [anon_sym_LPAREN2] = ACTIONS(1822), [anon_sym_BANG] = ACTIONS(1822), [anon_sym_TILDE] = ACTIONS(1822), [anon_sym_DASH] = ACTIONS(1820), [anon_sym_PLUS] = ACTIONS(1820), [anon_sym_STAR] = ACTIONS(1822), [anon_sym_AMP_AMP] = ACTIONS(1822), [anon_sym_AMP] = ACTIONS(1820), [anon_sym_SEMI] = ACTIONS(1822), [anon_sym_typedef] = ACTIONS(1820), [anon_sym_extern] = ACTIONS(1820), [anon_sym___attribute__] = ACTIONS(1820), [anon_sym_COLON_COLON] = ACTIONS(1822), [anon_sym_LBRACK_LBRACK] = ACTIONS(1822), [anon_sym___declspec] = ACTIONS(1820), [anon_sym___based] = ACTIONS(1820), [anon_sym___cdecl] = ACTIONS(1820), [anon_sym___clrcall] = ACTIONS(1820), [anon_sym___stdcall] = ACTIONS(1820), [anon_sym___fastcall] = ACTIONS(1820), [anon_sym___thiscall] = ACTIONS(1820), [anon_sym___vectorcall] = ACTIONS(1820), [anon_sym_LBRACE] = ACTIONS(1822), [anon_sym_LBRACK] = ACTIONS(1820), [anon_sym_static] = ACTIONS(1820), [anon_sym_register] = ACTIONS(1820), [anon_sym_inline] = ACTIONS(1820), [anon_sym_thread_local] = ACTIONS(1820), [anon_sym_const] = ACTIONS(1820), [anon_sym_volatile] = ACTIONS(1820), [anon_sym_restrict] = ACTIONS(1820), [anon_sym__Atomic] = ACTIONS(1820), [anon_sym_mutable] = ACTIONS(1820), [anon_sym_constexpr] = ACTIONS(1820), [anon_sym_signed] = ACTIONS(1820), [anon_sym_unsigned] = ACTIONS(1820), [anon_sym_long] = ACTIONS(1820), [anon_sym_short] = ACTIONS(1820), [sym_primitive_type] = ACTIONS(1820), [anon_sym_enum] = ACTIONS(1820), [anon_sym_class] = ACTIONS(1820), [anon_sym_struct] = ACTIONS(1820), [anon_sym_union] = ACTIONS(1820), [anon_sym_if] = ACTIONS(1820), [anon_sym_else] = ACTIONS(1820), [anon_sym_switch] = ACTIONS(1820), [anon_sym_case] = ACTIONS(1820), [anon_sym_default] = ACTIONS(1820), [anon_sym_while] = ACTIONS(1820), [anon_sym_do] = ACTIONS(1820), [anon_sym_for] = ACTIONS(1820), [anon_sym_return] = ACTIONS(1820), [anon_sym_break] = ACTIONS(1820), [anon_sym_continue] = ACTIONS(1820), [anon_sym_goto] = ACTIONS(1820), [anon_sym_DASH_DASH] = ACTIONS(1822), [anon_sym_PLUS_PLUS] = ACTIONS(1822), [anon_sym_sizeof] = ACTIONS(1820), [sym_number_literal] = ACTIONS(1822), [anon_sym_L_SQUOTE] = ACTIONS(1822), [anon_sym_u_SQUOTE] = ACTIONS(1822), [anon_sym_U_SQUOTE] = ACTIONS(1822), [anon_sym_u8_SQUOTE] = ACTIONS(1822), [anon_sym_SQUOTE] = ACTIONS(1822), [anon_sym_L_DQUOTE] = ACTIONS(1822), [anon_sym_u_DQUOTE] = ACTIONS(1822), [anon_sym_U_DQUOTE] = ACTIONS(1822), [anon_sym_u8_DQUOTE] = ACTIONS(1822), [anon_sym_DQUOTE] = ACTIONS(1822), [sym_true] = ACTIONS(1820), [sym_false] = ACTIONS(1820), [sym_null] = ACTIONS(1820), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1820), [anon_sym_virtual] = ACTIONS(1820), [anon_sym_explicit] = ACTIONS(1820), [sym_auto] = ACTIONS(1820), [anon_sym_typename] = ACTIONS(1820), [anon_sym_template] = ACTIONS(1820), [anon_sym_operator] = ACTIONS(1820), [anon_sym_delete] = ACTIONS(1820), [anon_sym_throw] = ACTIONS(1820), [anon_sym_namespace] = ACTIONS(1820), [anon_sym_using] = ACTIONS(1820), [anon_sym_static_assert] = ACTIONS(1820), [anon_sym_co_return] = ACTIONS(1820), [anon_sym_co_yield] = ACTIONS(1820), [anon_sym_try] = ACTIONS(1820), [anon_sym_co_await] = ACTIONS(1820), [anon_sym_new] = ACTIONS(1820), [sym_this] = ACTIONS(1820), [sym_nullptr] = ACTIONS(1820), [sym_raw_string_literal] = ACTIONS(1822), }, [197] = { [sym_compound_statement] = STATE(464), [sym_labeled_statement] = STATE(464), [sym_expression_statement] = STATE(464), [sym_if_statement] = STATE(464), [sym_switch_statement] = STATE(464), [sym_case_statement] = STATE(464), [sym_while_statement] = STATE(464), [sym_do_statement] = STATE(464), [sym_for_statement] = STATE(464), [sym_return_statement] = STATE(464), [sym_break_statement] = STATE(464), [sym_continue_statement] = STATE(464), [sym_goto_statement] = STATE(464), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(464), [sym_co_return_statement] = STATE(464), [sym_co_yield_statement] = STATE(464), [sym_throw_statement] = STATE(464), [sym_try_statement] = STATE(464), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [198] = { [sym_compound_statement] = STATE(441), [sym_labeled_statement] = STATE(441), [sym_expression_statement] = STATE(441), [sym_if_statement] = STATE(441), [sym_switch_statement] = STATE(441), [sym_case_statement] = STATE(441), [sym_while_statement] = STATE(441), [sym_do_statement] = STATE(441), [sym_for_statement] = STATE(441), [sym_return_statement] = STATE(441), [sym_break_statement] = STATE(441), [sym_continue_statement] = STATE(441), [sym_goto_statement] = STATE(441), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(441), [sym_co_return_statement] = STATE(441), [sym_co_yield_statement] = STATE(441), [sym_throw_statement] = STATE(441), [sym_try_statement] = STATE(441), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [199] = { [sym_compound_statement] = STATE(540), [sym_labeled_statement] = STATE(540), [sym_expression_statement] = STATE(540), [sym_if_statement] = STATE(540), [sym_switch_statement] = STATE(540), [sym_case_statement] = STATE(540), [sym_while_statement] = STATE(540), [sym_do_statement] = STATE(540), [sym_for_statement] = STATE(540), [sym_return_statement] = STATE(540), [sym_break_statement] = STATE(540), [sym_continue_statement] = STATE(540), [sym_goto_statement] = STATE(540), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(540), [sym_co_return_statement] = STATE(540), [sym_co_yield_statement] = STATE(540), [sym_throw_statement] = STATE(540), [sym_try_statement] = STATE(540), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [200] = { [sym_compound_statement] = STATE(534), [sym_labeled_statement] = STATE(534), [sym_expression_statement] = STATE(534), [sym_if_statement] = STATE(534), [sym_switch_statement] = STATE(534), [sym_case_statement] = STATE(534), [sym_while_statement] = STATE(534), [sym_do_statement] = STATE(534), [sym_for_statement] = STATE(534), [sym_return_statement] = STATE(534), [sym_break_statement] = STATE(534), [sym_continue_statement] = STATE(534), [sym_goto_statement] = STATE(534), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(534), [sym_co_return_statement] = STATE(534), [sym_co_yield_statement] = STATE(534), [sym_throw_statement] = STATE(534), [sym_try_statement] = STATE(534), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [201] = { [sym_compound_statement] = STATE(533), [sym_labeled_statement] = STATE(533), [sym_expression_statement] = STATE(533), [sym_if_statement] = STATE(533), [sym_switch_statement] = STATE(533), [sym_case_statement] = STATE(533), [sym_while_statement] = STATE(533), [sym_do_statement] = STATE(533), [sym_for_statement] = STATE(533), [sym_return_statement] = STATE(533), [sym_break_statement] = STATE(533), [sym_continue_statement] = STATE(533), [sym_goto_statement] = STATE(533), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(533), [sym_co_return_statement] = STATE(533), [sym_co_yield_statement] = STATE(533), [sym_throw_statement] = STATE(533), [sym_try_statement] = STATE(533), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [202] = { [sym_attribute_declaration] = STATE(1376), [sym_compound_statement] = STATE(516), [sym_labeled_statement] = STATE(516), [sym_expression_statement] = STATE(516), [sym_if_statement] = STATE(516), [sym_switch_statement] = STATE(516), [sym_while_statement] = STATE(516), [sym_do_statement] = STATE(516), [sym_for_statement] = STATE(516), [sym_return_statement] = STATE(516), [sym_break_statement] = STATE(516), [sym_continue_statement] = STATE(516), [sym_goto_statement] = STATE(516), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(516), [sym_co_return_statement] = STATE(516), [sym_co_yield_statement] = STATE(516), [sym_throw_statement] = STATE(516), [sym_try_statement] = STATE(516), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_attributed_declarator_repeat1] = STATE(1376), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(929), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [203] = { [sym_compound_statement] = STATE(4690), [sym_labeled_statement] = STATE(4690), [sym_expression_statement] = STATE(4690), [sym_if_statement] = STATE(4690), [sym_switch_statement] = STATE(4690), [sym_case_statement] = STATE(4690), [sym_while_statement] = STATE(4690), [sym_do_statement] = STATE(4690), [sym_for_statement] = STATE(4690), [sym_return_statement] = STATE(4690), [sym_break_statement] = STATE(4690), [sym_continue_statement] = STATE(4690), [sym_goto_statement] = STATE(4690), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(4690), [sym_co_return_statement] = STATE(4690), [sym_co_yield_statement] = STATE(4690), [sym_throw_statement] = STATE(4690), [sym_try_statement] = STATE(4690), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [204] = { [sym_attribute_declaration] = STATE(1376), [sym_compound_statement] = STATE(912), [sym_labeled_statement] = STATE(912), [sym_expression_statement] = STATE(912), [sym_if_statement] = STATE(912), [sym_switch_statement] = STATE(912), [sym_while_statement] = STATE(912), [sym_do_statement] = STATE(912), [sym_for_statement] = STATE(912), [sym_return_statement] = STATE(912), [sym_break_statement] = STATE(912), [sym_continue_statement] = STATE(912), [sym_goto_statement] = STATE(912), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(912), [sym_co_return_statement] = STATE(912), [sym_co_yield_statement] = STATE(912), [sym_throw_statement] = STATE(912), [sym_try_statement] = STATE(912), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_attributed_declarator_repeat1] = STATE(1376), [sym_identifier] = ACTIONS(1782), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(929), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1317), [anon_sym_switch] = ACTIONS(1319), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [205] = { [sym_compound_statement] = STATE(196), [sym_labeled_statement] = STATE(196), [sym_expression_statement] = STATE(196), [sym_if_statement] = STATE(196), [sym_switch_statement] = STATE(196), [sym_case_statement] = STATE(196), [sym_while_statement] = STATE(196), [sym_do_statement] = STATE(196), [sym_for_statement] = STATE(196), [sym_return_statement] = STATE(196), [sym_break_statement] = STATE(196), [sym_continue_statement] = STATE(196), [sym_goto_statement] = STATE(196), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(196), [sym_co_return_statement] = STATE(196), [sym_co_yield_statement] = STATE(196), [sym_throw_statement] = STATE(196), [sym_try_statement] = STATE(196), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [206] = { [sym_identifier] = ACTIONS(1824), [aux_sym_preproc_include_token1] = ACTIONS(1824), [aux_sym_preproc_def_token1] = ACTIONS(1824), [aux_sym_preproc_if_token1] = ACTIONS(1824), [aux_sym_preproc_if_token2] = ACTIONS(1824), [aux_sym_preproc_ifdef_token1] = ACTIONS(1824), [aux_sym_preproc_ifdef_token2] = ACTIONS(1824), [aux_sym_preproc_else_token1] = ACTIONS(1824), [aux_sym_preproc_elif_token1] = ACTIONS(1824), [sym_preproc_directive] = ACTIONS(1824), [anon_sym_LPAREN2] = ACTIONS(1826), [anon_sym_BANG] = ACTIONS(1826), [anon_sym_TILDE] = ACTIONS(1826), [anon_sym_DASH] = ACTIONS(1824), [anon_sym_PLUS] = ACTIONS(1824), [anon_sym_STAR] = ACTIONS(1826), [anon_sym_AMP_AMP] = ACTIONS(1826), [anon_sym_AMP] = ACTIONS(1824), [anon_sym_SEMI] = ACTIONS(1826), [anon_sym_typedef] = ACTIONS(1824), [anon_sym_extern] = ACTIONS(1824), [anon_sym___attribute__] = ACTIONS(1824), [anon_sym_COLON_COLON] = ACTIONS(1826), [anon_sym_LBRACK_LBRACK] = ACTIONS(1826), [anon_sym___declspec] = ACTIONS(1824), [anon_sym___based] = ACTIONS(1824), [anon_sym___cdecl] = ACTIONS(1824), [anon_sym___clrcall] = ACTIONS(1824), [anon_sym___stdcall] = ACTIONS(1824), [anon_sym___fastcall] = ACTIONS(1824), [anon_sym___thiscall] = ACTIONS(1824), [anon_sym___vectorcall] = ACTIONS(1824), [anon_sym_LBRACE] = ACTIONS(1826), [anon_sym_LBRACK] = ACTIONS(1824), [anon_sym_static] = ACTIONS(1824), [anon_sym_register] = ACTIONS(1824), [anon_sym_inline] = ACTIONS(1824), [anon_sym_thread_local] = ACTIONS(1824), [anon_sym_const] = ACTIONS(1824), [anon_sym_volatile] = ACTIONS(1824), [anon_sym_restrict] = ACTIONS(1824), [anon_sym__Atomic] = ACTIONS(1824), [anon_sym_mutable] = ACTIONS(1824), [anon_sym_constexpr] = ACTIONS(1824), [anon_sym_signed] = ACTIONS(1824), [anon_sym_unsigned] = ACTIONS(1824), [anon_sym_long] = ACTIONS(1824), [anon_sym_short] = ACTIONS(1824), [sym_primitive_type] = ACTIONS(1824), [anon_sym_enum] = ACTIONS(1824), [anon_sym_class] = ACTIONS(1824), [anon_sym_struct] = ACTIONS(1824), [anon_sym_union] = ACTIONS(1824), [anon_sym_if] = ACTIONS(1824), [anon_sym_else] = ACTIONS(1824), [anon_sym_switch] = ACTIONS(1824), [anon_sym_case] = ACTIONS(1824), [anon_sym_default] = ACTIONS(1824), [anon_sym_while] = ACTIONS(1824), [anon_sym_do] = ACTIONS(1824), [anon_sym_for] = ACTIONS(1824), [anon_sym_return] = ACTIONS(1824), [anon_sym_break] = ACTIONS(1824), [anon_sym_continue] = ACTIONS(1824), [anon_sym_goto] = ACTIONS(1824), [anon_sym_DASH_DASH] = ACTIONS(1826), [anon_sym_PLUS_PLUS] = ACTIONS(1826), [anon_sym_sizeof] = ACTIONS(1824), [sym_number_literal] = ACTIONS(1826), [anon_sym_L_SQUOTE] = ACTIONS(1826), [anon_sym_u_SQUOTE] = ACTIONS(1826), [anon_sym_U_SQUOTE] = ACTIONS(1826), [anon_sym_u8_SQUOTE] = ACTIONS(1826), [anon_sym_SQUOTE] = ACTIONS(1826), [anon_sym_L_DQUOTE] = ACTIONS(1826), [anon_sym_u_DQUOTE] = ACTIONS(1826), [anon_sym_U_DQUOTE] = ACTIONS(1826), [anon_sym_u8_DQUOTE] = ACTIONS(1826), [anon_sym_DQUOTE] = ACTIONS(1826), [sym_true] = ACTIONS(1824), [sym_false] = ACTIONS(1824), [sym_null] = ACTIONS(1824), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1824), [anon_sym_virtual] = ACTIONS(1824), [anon_sym_explicit] = ACTIONS(1824), [sym_auto] = ACTIONS(1824), [anon_sym_typename] = ACTIONS(1824), [anon_sym_template] = ACTIONS(1824), [anon_sym_operator] = ACTIONS(1824), [anon_sym_delete] = ACTIONS(1824), [anon_sym_throw] = ACTIONS(1824), [anon_sym_namespace] = ACTIONS(1824), [anon_sym_using] = ACTIONS(1824), [anon_sym_static_assert] = ACTIONS(1824), [anon_sym_co_return] = ACTIONS(1824), [anon_sym_co_yield] = ACTIONS(1824), [anon_sym_try] = ACTIONS(1824), [anon_sym_co_await] = ACTIONS(1824), [anon_sym_new] = ACTIONS(1824), [sym_this] = ACTIONS(1824), [sym_nullptr] = ACTIONS(1824), [sym_raw_string_literal] = ACTIONS(1826), }, [207] = { [sym_identifier] = ACTIONS(1828), [aux_sym_preproc_include_token1] = ACTIONS(1828), [aux_sym_preproc_def_token1] = ACTIONS(1828), [aux_sym_preproc_if_token1] = ACTIONS(1828), [aux_sym_preproc_if_token2] = ACTIONS(1828), [aux_sym_preproc_ifdef_token1] = ACTIONS(1828), [aux_sym_preproc_ifdef_token2] = ACTIONS(1828), [aux_sym_preproc_else_token1] = ACTIONS(1828), [aux_sym_preproc_elif_token1] = ACTIONS(1828), [sym_preproc_directive] = ACTIONS(1828), [anon_sym_LPAREN2] = ACTIONS(1830), [anon_sym_BANG] = ACTIONS(1830), [anon_sym_TILDE] = ACTIONS(1830), [anon_sym_DASH] = ACTIONS(1828), [anon_sym_PLUS] = ACTIONS(1828), [anon_sym_STAR] = ACTIONS(1830), [anon_sym_AMP_AMP] = ACTIONS(1830), [anon_sym_AMP] = ACTIONS(1828), [anon_sym_SEMI] = ACTIONS(1830), [anon_sym_typedef] = ACTIONS(1828), [anon_sym_extern] = ACTIONS(1828), [anon_sym___attribute__] = ACTIONS(1828), [anon_sym_COLON_COLON] = ACTIONS(1830), [anon_sym_LBRACK_LBRACK] = ACTIONS(1830), [anon_sym___declspec] = ACTIONS(1828), [anon_sym___based] = ACTIONS(1828), [anon_sym___cdecl] = ACTIONS(1828), [anon_sym___clrcall] = ACTIONS(1828), [anon_sym___stdcall] = ACTIONS(1828), [anon_sym___fastcall] = ACTIONS(1828), [anon_sym___thiscall] = ACTIONS(1828), [anon_sym___vectorcall] = ACTIONS(1828), [anon_sym_LBRACE] = ACTIONS(1830), [anon_sym_LBRACK] = ACTIONS(1828), [anon_sym_static] = ACTIONS(1828), [anon_sym_register] = ACTIONS(1828), [anon_sym_inline] = ACTIONS(1828), [anon_sym_thread_local] = ACTIONS(1828), [anon_sym_const] = ACTIONS(1828), [anon_sym_volatile] = ACTIONS(1828), [anon_sym_restrict] = ACTIONS(1828), [anon_sym__Atomic] = ACTIONS(1828), [anon_sym_mutable] = ACTIONS(1828), [anon_sym_constexpr] = ACTIONS(1828), [anon_sym_signed] = ACTIONS(1828), [anon_sym_unsigned] = ACTIONS(1828), [anon_sym_long] = ACTIONS(1828), [anon_sym_short] = ACTIONS(1828), [sym_primitive_type] = ACTIONS(1828), [anon_sym_enum] = ACTIONS(1828), [anon_sym_class] = ACTIONS(1828), [anon_sym_struct] = ACTIONS(1828), [anon_sym_union] = ACTIONS(1828), [anon_sym_if] = ACTIONS(1828), [anon_sym_else] = ACTIONS(1828), [anon_sym_switch] = ACTIONS(1828), [anon_sym_case] = ACTIONS(1828), [anon_sym_default] = ACTIONS(1828), [anon_sym_while] = ACTIONS(1828), [anon_sym_do] = ACTIONS(1828), [anon_sym_for] = ACTIONS(1828), [anon_sym_return] = ACTIONS(1828), [anon_sym_break] = ACTIONS(1828), [anon_sym_continue] = ACTIONS(1828), [anon_sym_goto] = ACTIONS(1828), [anon_sym_DASH_DASH] = ACTIONS(1830), [anon_sym_PLUS_PLUS] = ACTIONS(1830), [anon_sym_sizeof] = ACTIONS(1828), [sym_number_literal] = ACTIONS(1830), [anon_sym_L_SQUOTE] = ACTIONS(1830), [anon_sym_u_SQUOTE] = ACTIONS(1830), [anon_sym_U_SQUOTE] = ACTIONS(1830), [anon_sym_u8_SQUOTE] = ACTIONS(1830), [anon_sym_SQUOTE] = ACTIONS(1830), [anon_sym_L_DQUOTE] = ACTIONS(1830), [anon_sym_u_DQUOTE] = ACTIONS(1830), [anon_sym_U_DQUOTE] = ACTIONS(1830), [anon_sym_u8_DQUOTE] = ACTIONS(1830), [anon_sym_DQUOTE] = ACTIONS(1830), [sym_true] = ACTIONS(1828), [sym_false] = ACTIONS(1828), [sym_null] = ACTIONS(1828), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1828), [anon_sym_virtual] = ACTIONS(1828), [anon_sym_explicit] = ACTIONS(1828), [sym_auto] = ACTIONS(1828), [anon_sym_typename] = ACTIONS(1828), [anon_sym_template] = ACTIONS(1828), [anon_sym_operator] = ACTIONS(1828), [anon_sym_delete] = ACTIONS(1828), [anon_sym_throw] = ACTIONS(1828), [anon_sym_namespace] = ACTIONS(1828), [anon_sym_using] = ACTIONS(1828), [anon_sym_static_assert] = ACTIONS(1828), [anon_sym_co_return] = ACTIONS(1828), [anon_sym_co_yield] = ACTIONS(1828), [anon_sym_try] = ACTIONS(1828), [anon_sym_co_await] = ACTIONS(1828), [anon_sym_new] = ACTIONS(1828), [sym_this] = ACTIONS(1828), [sym_nullptr] = ACTIONS(1828), [sym_raw_string_literal] = ACTIONS(1830), }, [208] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [209] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [210] = { [sym_identifier] = ACTIONS(1836), [aux_sym_preproc_include_token1] = ACTIONS(1836), [aux_sym_preproc_def_token1] = ACTIONS(1836), [aux_sym_preproc_if_token1] = ACTIONS(1836), [aux_sym_preproc_if_token2] = ACTIONS(1836), [aux_sym_preproc_ifdef_token1] = ACTIONS(1836), [aux_sym_preproc_ifdef_token2] = ACTIONS(1836), [aux_sym_preproc_else_token1] = ACTIONS(1836), [aux_sym_preproc_elif_token1] = ACTIONS(1836), [sym_preproc_directive] = ACTIONS(1836), [anon_sym_LPAREN2] = ACTIONS(1838), [anon_sym_BANG] = ACTIONS(1838), [anon_sym_TILDE] = ACTIONS(1838), [anon_sym_DASH] = ACTIONS(1836), [anon_sym_PLUS] = ACTIONS(1836), [anon_sym_STAR] = ACTIONS(1838), [anon_sym_AMP_AMP] = ACTIONS(1838), [anon_sym_AMP] = ACTIONS(1836), [anon_sym_SEMI] = ACTIONS(1838), [anon_sym_typedef] = ACTIONS(1836), [anon_sym_extern] = ACTIONS(1836), [anon_sym___attribute__] = ACTIONS(1836), [anon_sym_COLON_COLON] = ACTIONS(1838), [anon_sym_LBRACK_LBRACK] = ACTIONS(1838), [anon_sym___declspec] = ACTIONS(1836), [anon_sym___based] = ACTIONS(1836), [anon_sym___cdecl] = ACTIONS(1836), [anon_sym___clrcall] = ACTIONS(1836), [anon_sym___stdcall] = ACTIONS(1836), [anon_sym___fastcall] = ACTIONS(1836), [anon_sym___thiscall] = ACTIONS(1836), [anon_sym___vectorcall] = ACTIONS(1836), [anon_sym_LBRACE] = ACTIONS(1838), [anon_sym_LBRACK] = ACTIONS(1836), [anon_sym_static] = ACTIONS(1836), [anon_sym_register] = ACTIONS(1836), [anon_sym_inline] = ACTIONS(1836), [anon_sym_thread_local] = ACTIONS(1836), [anon_sym_const] = ACTIONS(1836), [anon_sym_volatile] = ACTIONS(1836), [anon_sym_restrict] = ACTIONS(1836), [anon_sym__Atomic] = ACTIONS(1836), [anon_sym_mutable] = ACTIONS(1836), [anon_sym_constexpr] = ACTIONS(1836), [anon_sym_signed] = ACTIONS(1836), [anon_sym_unsigned] = ACTIONS(1836), [anon_sym_long] = ACTIONS(1836), [anon_sym_short] = ACTIONS(1836), [sym_primitive_type] = ACTIONS(1836), [anon_sym_enum] = ACTIONS(1836), [anon_sym_class] = ACTIONS(1836), [anon_sym_struct] = ACTIONS(1836), [anon_sym_union] = ACTIONS(1836), [anon_sym_if] = ACTIONS(1836), [anon_sym_else] = ACTIONS(1836), [anon_sym_switch] = ACTIONS(1836), [anon_sym_case] = ACTIONS(1836), [anon_sym_default] = ACTIONS(1836), [anon_sym_while] = ACTIONS(1836), [anon_sym_do] = ACTIONS(1836), [anon_sym_for] = ACTIONS(1836), [anon_sym_return] = ACTIONS(1836), [anon_sym_break] = ACTIONS(1836), [anon_sym_continue] = ACTIONS(1836), [anon_sym_goto] = ACTIONS(1836), [anon_sym_DASH_DASH] = ACTIONS(1838), [anon_sym_PLUS_PLUS] = ACTIONS(1838), [anon_sym_sizeof] = ACTIONS(1836), [sym_number_literal] = ACTIONS(1838), [anon_sym_L_SQUOTE] = ACTIONS(1838), [anon_sym_u_SQUOTE] = ACTIONS(1838), [anon_sym_U_SQUOTE] = ACTIONS(1838), [anon_sym_u8_SQUOTE] = ACTIONS(1838), [anon_sym_SQUOTE] = ACTIONS(1838), [anon_sym_L_DQUOTE] = ACTIONS(1838), [anon_sym_u_DQUOTE] = ACTIONS(1838), [anon_sym_U_DQUOTE] = ACTIONS(1838), [anon_sym_u8_DQUOTE] = ACTIONS(1838), [anon_sym_DQUOTE] = ACTIONS(1838), [sym_true] = ACTIONS(1836), [sym_false] = ACTIONS(1836), [sym_null] = ACTIONS(1836), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1836), [anon_sym_virtual] = ACTIONS(1836), [anon_sym_explicit] = ACTIONS(1836), [sym_auto] = ACTIONS(1836), [anon_sym_typename] = ACTIONS(1836), [anon_sym_template] = ACTIONS(1836), [anon_sym_operator] = ACTIONS(1836), [anon_sym_delete] = ACTIONS(1836), [anon_sym_throw] = ACTIONS(1836), [anon_sym_namespace] = ACTIONS(1836), [anon_sym_using] = ACTIONS(1836), [anon_sym_static_assert] = ACTIONS(1836), [anon_sym_co_return] = ACTIONS(1836), [anon_sym_co_yield] = ACTIONS(1836), [anon_sym_try] = ACTIONS(1836), [anon_sym_co_await] = ACTIONS(1836), [anon_sym_new] = ACTIONS(1836), [sym_this] = ACTIONS(1836), [sym_nullptr] = ACTIONS(1836), [sym_raw_string_literal] = ACTIONS(1838), }, [211] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [212] = { [sym_identifier] = ACTIONS(1836), [aux_sym_preproc_include_token1] = ACTIONS(1836), [aux_sym_preproc_def_token1] = ACTIONS(1836), [aux_sym_preproc_if_token1] = ACTIONS(1836), [aux_sym_preproc_if_token2] = ACTIONS(1836), [aux_sym_preproc_ifdef_token1] = ACTIONS(1836), [aux_sym_preproc_ifdef_token2] = ACTIONS(1836), [aux_sym_preproc_else_token1] = ACTIONS(1836), [aux_sym_preproc_elif_token1] = ACTIONS(1836), [sym_preproc_directive] = ACTIONS(1836), [anon_sym_LPAREN2] = ACTIONS(1838), [anon_sym_BANG] = ACTIONS(1838), [anon_sym_TILDE] = ACTIONS(1838), [anon_sym_DASH] = ACTIONS(1836), [anon_sym_PLUS] = ACTIONS(1836), [anon_sym_STAR] = ACTIONS(1838), [anon_sym_AMP_AMP] = ACTIONS(1838), [anon_sym_AMP] = ACTIONS(1836), [anon_sym_SEMI] = ACTIONS(1838), [anon_sym_typedef] = ACTIONS(1836), [anon_sym_extern] = ACTIONS(1836), [anon_sym___attribute__] = ACTIONS(1836), [anon_sym_COLON_COLON] = ACTIONS(1838), [anon_sym_LBRACK_LBRACK] = ACTIONS(1838), [anon_sym___declspec] = ACTIONS(1836), [anon_sym___based] = ACTIONS(1836), [anon_sym___cdecl] = ACTIONS(1836), [anon_sym___clrcall] = ACTIONS(1836), [anon_sym___stdcall] = ACTIONS(1836), [anon_sym___fastcall] = ACTIONS(1836), [anon_sym___thiscall] = ACTIONS(1836), [anon_sym___vectorcall] = ACTIONS(1836), [anon_sym_LBRACE] = ACTIONS(1838), [anon_sym_LBRACK] = ACTIONS(1836), [anon_sym_static] = ACTIONS(1836), [anon_sym_register] = ACTIONS(1836), [anon_sym_inline] = ACTIONS(1836), [anon_sym_thread_local] = ACTIONS(1836), [anon_sym_const] = ACTIONS(1836), [anon_sym_volatile] = ACTIONS(1836), [anon_sym_restrict] = ACTIONS(1836), [anon_sym__Atomic] = ACTIONS(1836), [anon_sym_mutable] = ACTIONS(1836), [anon_sym_constexpr] = ACTIONS(1836), [anon_sym_signed] = ACTIONS(1836), [anon_sym_unsigned] = ACTIONS(1836), [anon_sym_long] = ACTIONS(1836), [anon_sym_short] = ACTIONS(1836), [sym_primitive_type] = ACTIONS(1836), [anon_sym_enum] = ACTIONS(1836), [anon_sym_class] = ACTIONS(1836), [anon_sym_struct] = ACTIONS(1836), [anon_sym_union] = ACTIONS(1836), [anon_sym_if] = ACTIONS(1836), [anon_sym_else] = ACTIONS(1836), [anon_sym_switch] = ACTIONS(1836), [anon_sym_case] = ACTIONS(1836), [anon_sym_default] = ACTIONS(1836), [anon_sym_while] = ACTIONS(1836), [anon_sym_do] = ACTIONS(1836), [anon_sym_for] = ACTIONS(1836), [anon_sym_return] = ACTIONS(1836), [anon_sym_break] = ACTIONS(1836), [anon_sym_continue] = ACTIONS(1836), [anon_sym_goto] = ACTIONS(1836), [anon_sym_DASH_DASH] = ACTIONS(1838), [anon_sym_PLUS_PLUS] = ACTIONS(1838), [anon_sym_sizeof] = ACTIONS(1836), [sym_number_literal] = ACTIONS(1838), [anon_sym_L_SQUOTE] = ACTIONS(1838), [anon_sym_u_SQUOTE] = ACTIONS(1838), [anon_sym_U_SQUOTE] = ACTIONS(1838), [anon_sym_u8_SQUOTE] = ACTIONS(1838), [anon_sym_SQUOTE] = ACTIONS(1838), [anon_sym_L_DQUOTE] = ACTIONS(1838), [anon_sym_u_DQUOTE] = ACTIONS(1838), [anon_sym_U_DQUOTE] = ACTIONS(1838), [anon_sym_u8_DQUOTE] = ACTIONS(1838), [anon_sym_DQUOTE] = ACTIONS(1838), [sym_true] = ACTIONS(1836), [sym_false] = ACTIONS(1836), [sym_null] = ACTIONS(1836), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1836), [anon_sym_virtual] = ACTIONS(1836), [anon_sym_explicit] = ACTIONS(1836), [sym_auto] = ACTIONS(1836), [anon_sym_typename] = ACTIONS(1836), [anon_sym_template] = ACTIONS(1836), [anon_sym_operator] = ACTIONS(1836), [anon_sym_delete] = ACTIONS(1836), [anon_sym_throw] = ACTIONS(1836), [anon_sym_namespace] = ACTIONS(1836), [anon_sym_using] = ACTIONS(1836), [anon_sym_static_assert] = ACTIONS(1836), [anon_sym_co_return] = ACTIONS(1836), [anon_sym_co_yield] = ACTIONS(1836), [anon_sym_try] = ACTIONS(1836), [anon_sym_co_await] = ACTIONS(1836), [anon_sym_new] = ACTIONS(1836), [sym_this] = ACTIONS(1836), [sym_nullptr] = ACTIONS(1836), [sym_raw_string_literal] = ACTIONS(1838), }, [213] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [214] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [215] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [216] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [217] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [218] = { [sym_compound_statement] = STATE(484), [sym_labeled_statement] = STATE(484), [sym_expression_statement] = STATE(484), [sym_if_statement] = STATE(484), [sym_switch_statement] = STATE(484), [sym_case_statement] = STATE(484), [sym_while_statement] = STATE(484), [sym_do_statement] = STATE(484), [sym_for_statement] = STATE(484), [sym_return_statement] = STATE(484), [sym_break_statement] = STATE(484), [sym_continue_statement] = STATE(484), [sym_goto_statement] = STATE(484), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(484), [sym_co_return_statement] = STATE(484), [sym_co_yield_statement] = STATE(484), [sym_throw_statement] = STATE(484), [sym_try_statement] = STATE(484), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [219] = { [sym_compound_statement] = STATE(938), [sym_labeled_statement] = STATE(938), [sym_expression_statement] = STATE(938), [sym_if_statement] = STATE(938), [sym_switch_statement] = STATE(938), [sym_case_statement] = STATE(938), [sym_while_statement] = STATE(938), [sym_do_statement] = STATE(938), [sym_for_statement] = STATE(938), [sym_return_statement] = STATE(938), [sym_break_statement] = STATE(938), [sym_continue_statement] = STATE(938), [sym_goto_statement] = STATE(938), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(938), [sym_co_return_statement] = STATE(938), [sym_co_yield_statement] = STATE(938), [sym_throw_statement] = STATE(938), [sym_try_statement] = STATE(938), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1782), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1317), [anon_sym_switch] = ACTIONS(1319), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [220] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [221] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [222] = { [sym_compound_statement] = STATE(930), [sym_labeled_statement] = STATE(930), [sym_expression_statement] = STATE(930), [sym_if_statement] = STATE(930), [sym_switch_statement] = STATE(930), [sym_case_statement] = STATE(930), [sym_while_statement] = STATE(930), [sym_do_statement] = STATE(930), [sym_for_statement] = STATE(930), [sym_return_statement] = STATE(930), [sym_break_statement] = STATE(930), [sym_continue_statement] = STATE(930), [sym_goto_statement] = STATE(930), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(930), [sym_co_return_statement] = STATE(930), [sym_co_yield_statement] = STATE(930), [sym_throw_statement] = STATE(930), [sym_try_statement] = STATE(930), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1782), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1317), [anon_sym_switch] = ACTIONS(1319), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [223] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [224] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [225] = { [sym_compound_statement] = STATE(914), [sym_labeled_statement] = STATE(914), [sym_expression_statement] = STATE(914), [sym_if_statement] = STATE(914), [sym_switch_statement] = STATE(914), [sym_case_statement] = STATE(914), [sym_while_statement] = STATE(914), [sym_do_statement] = STATE(914), [sym_for_statement] = STATE(914), [sym_return_statement] = STATE(914), [sym_break_statement] = STATE(914), [sym_continue_statement] = STATE(914), [sym_goto_statement] = STATE(914), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(914), [sym_co_return_statement] = STATE(914), [sym_co_yield_statement] = STATE(914), [sym_throw_statement] = STATE(914), [sym_try_statement] = STATE(914), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1782), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1317), [anon_sym_switch] = ACTIONS(1319), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [226] = { [sym_compound_statement] = STATE(887), [sym_labeled_statement] = STATE(887), [sym_expression_statement] = STATE(887), [sym_if_statement] = STATE(887), [sym_switch_statement] = STATE(887), [sym_case_statement] = STATE(887), [sym_while_statement] = STATE(887), [sym_do_statement] = STATE(887), [sym_for_statement] = STATE(887), [sym_return_statement] = STATE(887), [sym_break_statement] = STATE(887), [sym_continue_statement] = STATE(887), [sym_goto_statement] = STATE(887), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(887), [sym_co_return_statement] = STATE(887), [sym_co_yield_statement] = STATE(887), [sym_throw_statement] = STATE(887), [sym_try_statement] = STATE(887), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1782), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1317), [anon_sym_switch] = ACTIONS(1319), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [227] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [228] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [229] = { [sym_identifier] = ACTIONS(1840), [aux_sym_preproc_include_token1] = ACTIONS(1840), [aux_sym_preproc_def_token1] = ACTIONS(1840), [aux_sym_preproc_if_token1] = ACTIONS(1840), [aux_sym_preproc_if_token2] = ACTIONS(1840), [aux_sym_preproc_ifdef_token1] = ACTIONS(1840), [aux_sym_preproc_ifdef_token2] = ACTIONS(1840), [aux_sym_preproc_else_token1] = ACTIONS(1840), [aux_sym_preproc_elif_token1] = ACTIONS(1840), [sym_preproc_directive] = ACTIONS(1840), [anon_sym_LPAREN2] = ACTIONS(1842), [anon_sym_BANG] = ACTIONS(1842), [anon_sym_TILDE] = ACTIONS(1842), [anon_sym_DASH] = ACTIONS(1840), [anon_sym_PLUS] = ACTIONS(1840), [anon_sym_STAR] = ACTIONS(1842), [anon_sym_AMP_AMP] = ACTIONS(1842), [anon_sym_AMP] = ACTIONS(1840), [anon_sym_SEMI] = ACTIONS(1842), [anon_sym_typedef] = ACTIONS(1840), [anon_sym_extern] = ACTIONS(1840), [anon_sym___attribute__] = ACTIONS(1840), [anon_sym_COLON_COLON] = ACTIONS(1842), [anon_sym_LBRACK_LBRACK] = ACTIONS(1842), [anon_sym___declspec] = ACTIONS(1840), [anon_sym___based] = ACTIONS(1840), [anon_sym___cdecl] = ACTIONS(1840), [anon_sym___clrcall] = ACTIONS(1840), [anon_sym___stdcall] = ACTIONS(1840), [anon_sym___fastcall] = ACTIONS(1840), [anon_sym___thiscall] = ACTIONS(1840), [anon_sym___vectorcall] = ACTIONS(1840), [anon_sym_LBRACE] = ACTIONS(1842), [anon_sym_LBRACK] = ACTIONS(1840), [anon_sym_static] = ACTIONS(1840), [anon_sym_register] = ACTIONS(1840), [anon_sym_inline] = ACTIONS(1840), [anon_sym_thread_local] = ACTIONS(1840), [anon_sym_const] = ACTIONS(1840), [anon_sym_volatile] = ACTIONS(1840), [anon_sym_restrict] = ACTIONS(1840), [anon_sym__Atomic] = ACTIONS(1840), [anon_sym_mutable] = ACTIONS(1840), [anon_sym_constexpr] = ACTIONS(1840), [anon_sym_signed] = ACTIONS(1840), [anon_sym_unsigned] = ACTIONS(1840), [anon_sym_long] = ACTIONS(1840), [anon_sym_short] = ACTIONS(1840), [sym_primitive_type] = ACTIONS(1840), [anon_sym_enum] = ACTIONS(1840), [anon_sym_class] = ACTIONS(1840), [anon_sym_struct] = ACTIONS(1840), [anon_sym_union] = ACTIONS(1840), [anon_sym_if] = ACTIONS(1840), [anon_sym_else] = ACTIONS(1840), [anon_sym_switch] = ACTIONS(1840), [anon_sym_case] = ACTIONS(1840), [anon_sym_default] = ACTIONS(1840), [anon_sym_while] = ACTIONS(1840), [anon_sym_do] = ACTIONS(1840), [anon_sym_for] = ACTIONS(1840), [anon_sym_return] = ACTIONS(1840), [anon_sym_break] = ACTIONS(1840), [anon_sym_continue] = ACTIONS(1840), [anon_sym_goto] = ACTIONS(1840), [anon_sym_DASH_DASH] = ACTIONS(1842), [anon_sym_PLUS_PLUS] = ACTIONS(1842), [anon_sym_sizeof] = ACTIONS(1840), [sym_number_literal] = ACTIONS(1842), [anon_sym_L_SQUOTE] = ACTIONS(1842), [anon_sym_u_SQUOTE] = ACTIONS(1842), [anon_sym_U_SQUOTE] = ACTIONS(1842), [anon_sym_u8_SQUOTE] = ACTIONS(1842), [anon_sym_SQUOTE] = ACTIONS(1842), [anon_sym_L_DQUOTE] = ACTIONS(1842), [anon_sym_u_DQUOTE] = ACTIONS(1842), [anon_sym_U_DQUOTE] = ACTIONS(1842), [anon_sym_u8_DQUOTE] = ACTIONS(1842), [anon_sym_DQUOTE] = ACTIONS(1842), [sym_true] = ACTIONS(1840), [sym_false] = ACTIONS(1840), [sym_null] = ACTIONS(1840), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1840), [anon_sym_virtual] = ACTIONS(1840), [anon_sym_explicit] = ACTIONS(1840), [sym_auto] = ACTIONS(1840), [anon_sym_typename] = ACTIONS(1840), [anon_sym_template] = ACTIONS(1840), [anon_sym_operator] = ACTIONS(1840), [anon_sym_delete] = ACTIONS(1840), [anon_sym_throw] = ACTIONS(1840), [anon_sym_namespace] = ACTIONS(1840), [anon_sym_using] = ACTIONS(1840), [anon_sym_static_assert] = ACTIONS(1840), [anon_sym_co_return] = ACTIONS(1840), [anon_sym_co_yield] = ACTIONS(1840), [anon_sym_try] = ACTIONS(1840), [anon_sym_co_await] = ACTIONS(1840), [anon_sym_new] = ACTIONS(1840), [sym_this] = ACTIONS(1840), [sym_nullptr] = ACTIONS(1840), [sym_raw_string_literal] = ACTIONS(1842), }, [230] = { [sym_compound_statement] = STATE(4876), [sym_labeled_statement] = STATE(4876), [sym_expression_statement] = STATE(4876), [sym_if_statement] = STATE(4876), [sym_switch_statement] = STATE(4876), [sym_case_statement] = STATE(4876), [sym_while_statement] = STATE(4876), [sym_do_statement] = STATE(4876), [sym_for_statement] = STATE(4876), [sym_return_statement] = STATE(4876), [sym_break_statement] = STATE(4876), [sym_continue_statement] = STATE(4876), [sym_goto_statement] = STATE(4876), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(4876), [sym_co_return_statement] = STATE(4876), [sym_co_yield_statement] = STATE(4876), [sym_throw_statement] = STATE(4876), [sym_try_statement] = STATE(4876), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [231] = { [sym_compound_statement] = STATE(5201), [sym_labeled_statement] = STATE(5201), [sym_expression_statement] = STATE(5201), [sym_if_statement] = STATE(5201), [sym_switch_statement] = STATE(5201), [sym_case_statement] = STATE(5201), [sym_while_statement] = STATE(5201), [sym_do_statement] = STATE(5201), [sym_for_statement] = STATE(5201), [sym_return_statement] = STATE(5201), [sym_break_statement] = STATE(5201), [sym_continue_statement] = STATE(5201), [sym_goto_statement] = STATE(5201), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(5201), [sym_co_return_statement] = STATE(5201), [sym_co_yield_statement] = STATE(5201), [sym_throw_statement] = STATE(5201), [sym_try_statement] = STATE(5201), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [232] = { [sym_compound_statement] = STATE(877), [sym_labeled_statement] = STATE(877), [sym_expression_statement] = STATE(877), [sym_if_statement] = STATE(877), [sym_switch_statement] = STATE(877), [sym_case_statement] = STATE(877), [sym_while_statement] = STATE(877), [sym_do_statement] = STATE(877), [sym_for_statement] = STATE(877), [sym_return_statement] = STATE(877), [sym_break_statement] = STATE(877), [sym_continue_statement] = STATE(877), [sym_goto_statement] = STATE(877), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(877), [sym_co_return_statement] = STATE(877), [sym_co_yield_statement] = STATE(877), [sym_throw_statement] = STATE(877), [sym_try_statement] = STATE(877), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1782), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1317), [anon_sym_switch] = ACTIONS(1319), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [233] = { [sym_compound_statement] = STATE(561), [sym_labeled_statement] = STATE(561), [sym_expression_statement] = STATE(561), [sym_if_statement] = STATE(561), [sym_switch_statement] = STATE(561), [sym_case_statement] = STATE(561), [sym_while_statement] = STATE(561), [sym_do_statement] = STATE(561), [sym_for_statement] = STATE(561), [sym_return_statement] = STATE(561), [sym_break_statement] = STATE(561), [sym_continue_statement] = STATE(561), [sym_goto_statement] = STATE(561), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(561), [sym_co_return_statement] = STATE(561), [sym_co_yield_statement] = STATE(561), [sym_throw_statement] = STATE(561), [sym_try_statement] = STATE(561), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [234] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [235] = { [sym_identifier] = ACTIONS(1844), [aux_sym_preproc_include_token1] = ACTIONS(1844), [aux_sym_preproc_def_token1] = ACTIONS(1844), [aux_sym_preproc_if_token1] = ACTIONS(1844), [aux_sym_preproc_if_token2] = ACTIONS(1844), [aux_sym_preproc_ifdef_token1] = ACTIONS(1844), [aux_sym_preproc_ifdef_token2] = ACTIONS(1844), [aux_sym_preproc_else_token1] = ACTIONS(1844), [aux_sym_preproc_elif_token1] = ACTIONS(1844), [sym_preproc_directive] = ACTIONS(1844), [anon_sym_LPAREN2] = ACTIONS(1846), [anon_sym_BANG] = ACTIONS(1846), [anon_sym_TILDE] = ACTIONS(1846), [anon_sym_DASH] = ACTIONS(1844), [anon_sym_PLUS] = ACTIONS(1844), [anon_sym_STAR] = ACTIONS(1846), [anon_sym_AMP_AMP] = ACTIONS(1846), [anon_sym_AMP] = ACTIONS(1844), [anon_sym_SEMI] = ACTIONS(1846), [anon_sym_typedef] = ACTIONS(1844), [anon_sym_extern] = ACTIONS(1844), [anon_sym___attribute__] = ACTIONS(1844), [anon_sym_COLON_COLON] = ACTIONS(1846), [anon_sym_LBRACK_LBRACK] = ACTIONS(1846), [anon_sym___declspec] = ACTIONS(1844), [anon_sym___based] = ACTIONS(1844), [anon_sym___cdecl] = ACTIONS(1844), [anon_sym___clrcall] = ACTIONS(1844), [anon_sym___stdcall] = ACTIONS(1844), [anon_sym___fastcall] = ACTIONS(1844), [anon_sym___thiscall] = ACTIONS(1844), [anon_sym___vectorcall] = ACTIONS(1844), [anon_sym_LBRACE] = ACTIONS(1846), [anon_sym_LBRACK] = ACTIONS(1844), [anon_sym_static] = ACTIONS(1844), [anon_sym_register] = ACTIONS(1844), [anon_sym_inline] = ACTIONS(1844), [anon_sym_thread_local] = ACTIONS(1844), [anon_sym_const] = ACTIONS(1844), [anon_sym_volatile] = ACTIONS(1844), [anon_sym_restrict] = ACTIONS(1844), [anon_sym__Atomic] = ACTIONS(1844), [anon_sym_mutable] = ACTIONS(1844), [anon_sym_constexpr] = ACTIONS(1844), [anon_sym_signed] = ACTIONS(1844), [anon_sym_unsigned] = ACTIONS(1844), [anon_sym_long] = ACTIONS(1844), [anon_sym_short] = ACTIONS(1844), [sym_primitive_type] = ACTIONS(1844), [anon_sym_enum] = ACTIONS(1844), [anon_sym_class] = ACTIONS(1844), [anon_sym_struct] = ACTIONS(1844), [anon_sym_union] = ACTIONS(1844), [anon_sym_if] = ACTIONS(1844), [anon_sym_else] = ACTIONS(1844), [anon_sym_switch] = ACTIONS(1844), [anon_sym_case] = ACTIONS(1844), [anon_sym_default] = ACTIONS(1844), [anon_sym_while] = ACTIONS(1844), [anon_sym_do] = ACTIONS(1844), [anon_sym_for] = ACTIONS(1844), [anon_sym_return] = ACTIONS(1844), [anon_sym_break] = ACTIONS(1844), [anon_sym_continue] = ACTIONS(1844), [anon_sym_goto] = ACTIONS(1844), [anon_sym_DASH_DASH] = ACTIONS(1846), [anon_sym_PLUS_PLUS] = ACTIONS(1846), [anon_sym_sizeof] = ACTIONS(1844), [sym_number_literal] = ACTIONS(1846), [anon_sym_L_SQUOTE] = ACTIONS(1846), [anon_sym_u_SQUOTE] = ACTIONS(1846), [anon_sym_U_SQUOTE] = ACTIONS(1846), [anon_sym_u8_SQUOTE] = ACTIONS(1846), [anon_sym_SQUOTE] = ACTIONS(1846), [anon_sym_L_DQUOTE] = ACTIONS(1846), [anon_sym_u_DQUOTE] = ACTIONS(1846), [anon_sym_U_DQUOTE] = ACTIONS(1846), [anon_sym_u8_DQUOTE] = ACTIONS(1846), [anon_sym_DQUOTE] = ACTIONS(1846), [sym_true] = ACTIONS(1844), [sym_false] = ACTIONS(1844), [sym_null] = ACTIONS(1844), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1844), [anon_sym_virtual] = ACTIONS(1844), [anon_sym_explicit] = ACTIONS(1844), [sym_auto] = ACTIONS(1844), [anon_sym_typename] = ACTIONS(1844), [anon_sym_template] = ACTIONS(1844), [anon_sym_operator] = ACTIONS(1844), [anon_sym_delete] = ACTIONS(1844), [anon_sym_throw] = ACTIONS(1844), [anon_sym_namespace] = ACTIONS(1844), [anon_sym_using] = ACTIONS(1844), [anon_sym_static_assert] = ACTIONS(1844), [anon_sym_co_return] = ACTIONS(1844), [anon_sym_co_yield] = ACTIONS(1844), [anon_sym_try] = ACTIONS(1844), [anon_sym_co_await] = ACTIONS(1844), [anon_sym_new] = ACTIONS(1844), [sym_this] = ACTIONS(1844), [sym_nullptr] = ACTIONS(1844), [sym_raw_string_literal] = ACTIONS(1846), }, [236] = { [sym_identifier] = ACTIONS(1844), [aux_sym_preproc_include_token1] = ACTIONS(1844), [aux_sym_preproc_def_token1] = ACTIONS(1844), [aux_sym_preproc_if_token1] = ACTIONS(1844), [aux_sym_preproc_if_token2] = ACTIONS(1844), [aux_sym_preproc_ifdef_token1] = ACTIONS(1844), [aux_sym_preproc_ifdef_token2] = ACTIONS(1844), [aux_sym_preproc_else_token1] = ACTIONS(1844), [aux_sym_preproc_elif_token1] = ACTIONS(1844), [sym_preproc_directive] = ACTIONS(1844), [anon_sym_LPAREN2] = ACTIONS(1846), [anon_sym_BANG] = ACTIONS(1846), [anon_sym_TILDE] = ACTIONS(1846), [anon_sym_DASH] = ACTIONS(1844), [anon_sym_PLUS] = ACTIONS(1844), [anon_sym_STAR] = ACTIONS(1846), [anon_sym_AMP_AMP] = ACTIONS(1846), [anon_sym_AMP] = ACTIONS(1844), [anon_sym_SEMI] = ACTIONS(1846), [anon_sym_typedef] = ACTIONS(1844), [anon_sym_extern] = ACTIONS(1844), [anon_sym___attribute__] = ACTIONS(1844), [anon_sym_COLON_COLON] = ACTIONS(1846), [anon_sym_LBRACK_LBRACK] = ACTIONS(1846), [anon_sym___declspec] = ACTIONS(1844), [anon_sym___based] = ACTIONS(1844), [anon_sym___cdecl] = ACTIONS(1844), [anon_sym___clrcall] = ACTIONS(1844), [anon_sym___stdcall] = ACTIONS(1844), [anon_sym___fastcall] = ACTIONS(1844), [anon_sym___thiscall] = ACTIONS(1844), [anon_sym___vectorcall] = ACTIONS(1844), [anon_sym_LBRACE] = ACTIONS(1846), [anon_sym_LBRACK] = ACTIONS(1844), [anon_sym_static] = ACTIONS(1844), [anon_sym_register] = ACTIONS(1844), [anon_sym_inline] = ACTIONS(1844), [anon_sym_thread_local] = ACTIONS(1844), [anon_sym_const] = ACTIONS(1844), [anon_sym_volatile] = ACTIONS(1844), [anon_sym_restrict] = ACTIONS(1844), [anon_sym__Atomic] = ACTIONS(1844), [anon_sym_mutable] = ACTIONS(1844), [anon_sym_constexpr] = ACTIONS(1844), [anon_sym_signed] = ACTIONS(1844), [anon_sym_unsigned] = ACTIONS(1844), [anon_sym_long] = ACTIONS(1844), [anon_sym_short] = ACTIONS(1844), [sym_primitive_type] = ACTIONS(1844), [anon_sym_enum] = ACTIONS(1844), [anon_sym_class] = ACTIONS(1844), [anon_sym_struct] = ACTIONS(1844), [anon_sym_union] = ACTIONS(1844), [anon_sym_if] = ACTIONS(1844), [anon_sym_else] = ACTIONS(1844), [anon_sym_switch] = ACTIONS(1844), [anon_sym_case] = ACTIONS(1844), [anon_sym_default] = ACTIONS(1844), [anon_sym_while] = ACTIONS(1844), [anon_sym_do] = ACTIONS(1844), [anon_sym_for] = ACTIONS(1844), [anon_sym_return] = ACTIONS(1844), [anon_sym_break] = ACTIONS(1844), [anon_sym_continue] = ACTIONS(1844), [anon_sym_goto] = ACTIONS(1844), [anon_sym_DASH_DASH] = ACTIONS(1846), [anon_sym_PLUS_PLUS] = ACTIONS(1846), [anon_sym_sizeof] = ACTIONS(1844), [sym_number_literal] = ACTIONS(1846), [anon_sym_L_SQUOTE] = ACTIONS(1846), [anon_sym_u_SQUOTE] = ACTIONS(1846), [anon_sym_U_SQUOTE] = ACTIONS(1846), [anon_sym_u8_SQUOTE] = ACTIONS(1846), [anon_sym_SQUOTE] = ACTIONS(1846), [anon_sym_L_DQUOTE] = ACTIONS(1846), [anon_sym_u_DQUOTE] = ACTIONS(1846), [anon_sym_U_DQUOTE] = ACTIONS(1846), [anon_sym_u8_DQUOTE] = ACTIONS(1846), [anon_sym_DQUOTE] = ACTIONS(1846), [sym_true] = ACTIONS(1844), [sym_false] = ACTIONS(1844), [sym_null] = ACTIONS(1844), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1844), [anon_sym_virtual] = ACTIONS(1844), [anon_sym_explicit] = ACTIONS(1844), [sym_auto] = ACTIONS(1844), [anon_sym_typename] = ACTIONS(1844), [anon_sym_template] = ACTIONS(1844), [anon_sym_operator] = ACTIONS(1844), [anon_sym_delete] = ACTIONS(1844), [anon_sym_throw] = ACTIONS(1844), [anon_sym_namespace] = ACTIONS(1844), [anon_sym_using] = ACTIONS(1844), [anon_sym_static_assert] = ACTIONS(1844), [anon_sym_co_return] = ACTIONS(1844), [anon_sym_co_yield] = ACTIONS(1844), [anon_sym_try] = ACTIONS(1844), [anon_sym_co_await] = ACTIONS(1844), [anon_sym_new] = ACTIONS(1844), [sym_this] = ACTIONS(1844), [sym_nullptr] = ACTIONS(1844), [sym_raw_string_literal] = ACTIONS(1846), }, [237] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [238] = { [sym_compound_statement] = STATE(563), [sym_labeled_statement] = STATE(563), [sym_expression_statement] = STATE(563), [sym_if_statement] = STATE(563), [sym_switch_statement] = STATE(563), [sym_case_statement] = STATE(563), [sym_while_statement] = STATE(563), [sym_do_statement] = STATE(563), [sym_for_statement] = STATE(563), [sym_return_statement] = STATE(563), [sym_break_statement] = STATE(563), [sym_continue_statement] = STATE(563), [sym_goto_statement] = STATE(563), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(563), [sym_co_return_statement] = STATE(563), [sym_co_yield_statement] = STATE(563), [sym_throw_statement] = STATE(563), [sym_try_statement] = STATE(563), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [239] = { [sym_compound_statement] = STATE(871), [sym_labeled_statement] = STATE(871), [sym_expression_statement] = STATE(871), [sym_if_statement] = STATE(871), [sym_switch_statement] = STATE(871), [sym_case_statement] = STATE(871), [sym_while_statement] = STATE(871), [sym_do_statement] = STATE(871), [sym_for_statement] = STATE(871), [sym_return_statement] = STATE(871), [sym_break_statement] = STATE(871), [sym_continue_statement] = STATE(871), [sym_goto_statement] = STATE(871), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(871), [sym_co_return_statement] = STATE(871), [sym_co_yield_statement] = STATE(871), [sym_throw_statement] = STATE(871), [sym_try_statement] = STATE(871), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1782), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1317), [anon_sym_switch] = ACTIONS(1319), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [240] = { [sym_compound_statement] = STATE(865), [sym_labeled_statement] = STATE(865), [sym_expression_statement] = STATE(865), [sym_if_statement] = STATE(865), [sym_switch_statement] = STATE(865), [sym_case_statement] = STATE(865), [sym_while_statement] = STATE(865), [sym_do_statement] = STATE(865), [sym_for_statement] = STATE(865), [sym_return_statement] = STATE(865), [sym_break_statement] = STATE(865), [sym_continue_statement] = STATE(865), [sym_goto_statement] = STATE(865), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(865), [sym_co_return_statement] = STATE(865), [sym_co_yield_statement] = STATE(865), [sym_throw_statement] = STATE(865), [sym_try_statement] = STATE(865), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1782), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1317), [anon_sym_switch] = ACTIONS(1319), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [241] = { [sym_compound_statement] = STATE(863), [sym_labeled_statement] = STATE(863), [sym_expression_statement] = STATE(863), [sym_if_statement] = STATE(863), [sym_switch_statement] = STATE(863), [sym_case_statement] = STATE(863), [sym_while_statement] = STATE(863), [sym_do_statement] = STATE(863), [sym_for_statement] = STATE(863), [sym_return_statement] = STATE(863), [sym_break_statement] = STATE(863), [sym_continue_statement] = STATE(863), [sym_goto_statement] = STATE(863), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(863), [sym_co_return_statement] = STATE(863), [sym_co_yield_statement] = STATE(863), [sym_throw_statement] = STATE(863), [sym_try_statement] = STATE(863), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1782), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1317), [anon_sym_switch] = ACTIONS(1319), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [242] = { [sym_compound_statement] = STATE(886), [sym_labeled_statement] = STATE(886), [sym_expression_statement] = STATE(886), [sym_if_statement] = STATE(886), [sym_switch_statement] = STATE(886), [sym_case_statement] = STATE(886), [sym_while_statement] = STATE(886), [sym_do_statement] = STATE(886), [sym_for_statement] = STATE(886), [sym_return_statement] = STATE(886), [sym_break_statement] = STATE(886), [sym_continue_statement] = STATE(886), [sym_goto_statement] = STATE(886), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(886), [sym_co_return_statement] = STATE(886), [sym_co_yield_statement] = STATE(886), [sym_throw_statement] = STATE(886), [sym_try_statement] = STATE(886), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1782), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1317), [anon_sym_switch] = ACTIONS(1319), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [243] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [244] = { [sym_compound_statement] = STATE(567), [sym_labeled_statement] = STATE(567), [sym_expression_statement] = STATE(567), [sym_if_statement] = STATE(567), [sym_switch_statement] = STATE(567), [sym_case_statement] = STATE(567), [sym_while_statement] = STATE(567), [sym_do_statement] = STATE(567), [sym_for_statement] = STATE(567), [sym_return_statement] = STATE(567), [sym_break_statement] = STATE(567), [sym_continue_statement] = STATE(567), [sym_goto_statement] = STATE(567), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(567), [sym_co_return_statement] = STATE(567), [sym_co_yield_statement] = STATE(567), [sym_throw_statement] = STATE(567), [sym_try_statement] = STATE(567), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [245] = { [sym_compound_statement] = STATE(862), [sym_labeled_statement] = STATE(862), [sym_expression_statement] = STATE(862), [sym_if_statement] = STATE(862), [sym_switch_statement] = STATE(862), [sym_case_statement] = STATE(862), [sym_while_statement] = STATE(862), [sym_do_statement] = STATE(862), [sym_for_statement] = STATE(862), [sym_return_statement] = STATE(862), [sym_break_statement] = STATE(862), [sym_continue_statement] = STATE(862), [sym_goto_statement] = STATE(862), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(862), [sym_co_return_statement] = STATE(862), [sym_co_yield_statement] = STATE(862), [sym_throw_statement] = STATE(862), [sym_try_statement] = STATE(862), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1782), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1317), [anon_sym_switch] = ACTIONS(1319), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [246] = { [sym_compound_statement] = STATE(867), [sym_labeled_statement] = STATE(867), [sym_expression_statement] = STATE(867), [sym_if_statement] = STATE(867), [sym_switch_statement] = STATE(867), [sym_case_statement] = STATE(867), [sym_while_statement] = STATE(867), [sym_do_statement] = STATE(867), [sym_for_statement] = STATE(867), [sym_return_statement] = STATE(867), [sym_break_statement] = STATE(867), [sym_continue_statement] = STATE(867), [sym_goto_statement] = STATE(867), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(867), [sym_co_return_statement] = STATE(867), [sym_co_yield_statement] = STATE(867), [sym_throw_statement] = STATE(867), [sym_try_statement] = STATE(867), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1782), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1317), [anon_sym_switch] = ACTIONS(1319), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [247] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [248] = { [sym_compound_statement] = STATE(869), [sym_labeled_statement] = STATE(869), [sym_expression_statement] = STATE(869), [sym_if_statement] = STATE(869), [sym_switch_statement] = STATE(869), [sym_case_statement] = STATE(869), [sym_while_statement] = STATE(869), [sym_do_statement] = STATE(869), [sym_for_statement] = STATE(869), [sym_return_statement] = STATE(869), [sym_break_statement] = STATE(869), [sym_continue_statement] = STATE(869), [sym_goto_statement] = STATE(869), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(869), [sym_co_return_statement] = STATE(869), [sym_co_yield_statement] = STATE(869), [sym_throw_statement] = STATE(869), [sym_try_statement] = STATE(869), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1782), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1317), [anon_sym_switch] = ACTIONS(1319), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [249] = { [sym_compound_statement] = STATE(872), [sym_labeled_statement] = STATE(872), [sym_expression_statement] = STATE(872), [sym_if_statement] = STATE(872), [sym_switch_statement] = STATE(872), [sym_case_statement] = STATE(872), [sym_while_statement] = STATE(872), [sym_do_statement] = STATE(872), [sym_for_statement] = STATE(872), [sym_return_statement] = STATE(872), [sym_break_statement] = STATE(872), [sym_continue_statement] = STATE(872), [sym_goto_statement] = STATE(872), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(872), [sym_co_return_statement] = STATE(872), [sym_co_yield_statement] = STATE(872), [sym_throw_statement] = STATE(872), [sym_try_statement] = STATE(872), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1782), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1317), [anon_sym_switch] = ACTIONS(1319), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [250] = { [sym_compound_statement] = STATE(873), [sym_labeled_statement] = STATE(873), [sym_expression_statement] = STATE(873), [sym_if_statement] = STATE(873), [sym_switch_statement] = STATE(873), [sym_case_statement] = STATE(873), [sym_while_statement] = STATE(873), [sym_do_statement] = STATE(873), [sym_for_statement] = STATE(873), [sym_return_statement] = STATE(873), [sym_break_statement] = STATE(873), [sym_continue_statement] = STATE(873), [sym_goto_statement] = STATE(873), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(873), [sym_co_return_statement] = STATE(873), [sym_co_yield_statement] = STATE(873), [sym_throw_statement] = STATE(873), [sym_try_statement] = STATE(873), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1782), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1317), [anon_sym_switch] = ACTIONS(1319), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [251] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [252] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [253] = { [sym_compound_statement] = STATE(507), [sym_labeled_statement] = STATE(507), [sym_expression_statement] = STATE(507), [sym_if_statement] = STATE(507), [sym_switch_statement] = STATE(507), [sym_case_statement] = STATE(507), [sym_while_statement] = STATE(507), [sym_do_statement] = STATE(507), [sym_for_statement] = STATE(507), [sym_return_statement] = STATE(507), [sym_break_statement] = STATE(507), [sym_continue_statement] = STATE(507), [sym_goto_statement] = STATE(507), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(507), [sym_co_return_statement] = STATE(507), [sym_co_yield_statement] = STATE(507), [sym_throw_statement] = STATE(507), [sym_try_statement] = STATE(507), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [254] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [255] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [256] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [257] = { [sym_identifier] = ACTIONS(1848), [aux_sym_preproc_include_token1] = ACTIONS(1848), [aux_sym_preproc_def_token1] = ACTIONS(1848), [aux_sym_preproc_if_token1] = ACTIONS(1848), [aux_sym_preproc_if_token2] = ACTIONS(1848), [aux_sym_preproc_ifdef_token1] = ACTIONS(1848), [aux_sym_preproc_ifdef_token2] = ACTIONS(1848), [aux_sym_preproc_else_token1] = ACTIONS(1848), [aux_sym_preproc_elif_token1] = ACTIONS(1848), [sym_preproc_directive] = ACTIONS(1848), [anon_sym_LPAREN2] = ACTIONS(1850), [anon_sym_BANG] = ACTIONS(1850), [anon_sym_TILDE] = ACTIONS(1850), [anon_sym_DASH] = ACTIONS(1848), [anon_sym_PLUS] = ACTIONS(1848), [anon_sym_STAR] = ACTIONS(1850), [anon_sym_AMP_AMP] = ACTIONS(1850), [anon_sym_AMP] = ACTIONS(1848), [anon_sym_SEMI] = ACTIONS(1850), [anon_sym_typedef] = ACTIONS(1848), [anon_sym_extern] = ACTIONS(1848), [anon_sym___attribute__] = ACTIONS(1848), [anon_sym_COLON_COLON] = ACTIONS(1850), [anon_sym_LBRACK_LBRACK] = ACTIONS(1850), [anon_sym___declspec] = ACTIONS(1848), [anon_sym___based] = ACTIONS(1848), [anon_sym___cdecl] = ACTIONS(1848), [anon_sym___clrcall] = ACTIONS(1848), [anon_sym___stdcall] = ACTIONS(1848), [anon_sym___fastcall] = ACTIONS(1848), [anon_sym___thiscall] = ACTIONS(1848), [anon_sym___vectorcall] = ACTIONS(1848), [anon_sym_LBRACE] = ACTIONS(1850), [anon_sym_LBRACK] = ACTIONS(1848), [anon_sym_static] = ACTIONS(1848), [anon_sym_register] = ACTIONS(1848), [anon_sym_inline] = ACTIONS(1848), [anon_sym_thread_local] = ACTIONS(1848), [anon_sym_const] = ACTIONS(1848), [anon_sym_volatile] = ACTIONS(1848), [anon_sym_restrict] = ACTIONS(1848), [anon_sym__Atomic] = ACTIONS(1848), [anon_sym_mutable] = ACTIONS(1848), [anon_sym_constexpr] = ACTIONS(1848), [anon_sym_signed] = ACTIONS(1848), [anon_sym_unsigned] = ACTIONS(1848), [anon_sym_long] = ACTIONS(1848), [anon_sym_short] = ACTIONS(1848), [sym_primitive_type] = ACTIONS(1848), [anon_sym_enum] = ACTIONS(1848), [anon_sym_class] = ACTIONS(1848), [anon_sym_struct] = ACTIONS(1848), [anon_sym_union] = ACTIONS(1848), [anon_sym_if] = ACTIONS(1848), [anon_sym_else] = ACTIONS(1848), [anon_sym_switch] = ACTIONS(1848), [anon_sym_case] = ACTIONS(1848), [anon_sym_default] = ACTIONS(1848), [anon_sym_while] = ACTIONS(1848), [anon_sym_do] = ACTIONS(1848), [anon_sym_for] = ACTIONS(1848), [anon_sym_return] = ACTIONS(1848), [anon_sym_break] = ACTIONS(1848), [anon_sym_continue] = ACTIONS(1848), [anon_sym_goto] = ACTIONS(1848), [anon_sym_DASH_DASH] = ACTIONS(1850), [anon_sym_PLUS_PLUS] = ACTIONS(1850), [anon_sym_sizeof] = ACTIONS(1848), [sym_number_literal] = ACTIONS(1850), [anon_sym_L_SQUOTE] = ACTIONS(1850), [anon_sym_u_SQUOTE] = ACTIONS(1850), [anon_sym_U_SQUOTE] = ACTIONS(1850), [anon_sym_u8_SQUOTE] = ACTIONS(1850), [anon_sym_SQUOTE] = ACTIONS(1850), [anon_sym_L_DQUOTE] = ACTIONS(1850), [anon_sym_u_DQUOTE] = ACTIONS(1850), [anon_sym_U_DQUOTE] = ACTIONS(1850), [anon_sym_u8_DQUOTE] = ACTIONS(1850), [anon_sym_DQUOTE] = ACTIONS(1850), [sym_true] = ACTIONS(1848), [sym_false] = ACTIONS(1848), [sym_null] = ACTIONS(1848), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1848), [anon_sym_virtual] = ACTIONS(1848), [anon_sym_explicit] = ACTIONS(1848), [sym_auto] = ACTIONS(1848), [anon_sym_typename] = ACTIONS(1848), [anon_sym_template] = ACTIONS(1848), [anon_sym_operator] = ACTIONS(1848), [anon_sym_delete] = ACTIONS(1848), [anon_sym_throw] = ACTIONS(1848), [anon_sym_namespace] = ACTIONS(1848), [anon_sym_using] = ACTIONS(1848), [anon_sym_static_assert] = ACTIONS(1848), [anon_sym_co_return] = ACTIONS(1848), [anon_sym_co_yield] = ACTIONS(1848), [anon_sym_try] = ACTIONS(1848), [anon_sym_co_await] = ACTIONS(1848), [anon_sym_new] = ACTIONS(1848), [sym_this] = ACTIONS(1848), [sym_nullptr] = ACTIONS(1848), [sym_raw_string_literal] = ACTIONS(1850), }, [258] = { [sym_identifier] = ACTIONS(1852), [aux_sym_preproc_include_token1] = ACTIONS(1852), [aux_sym_preproc_def_token1] = ACTIONS(1852), [aux_sym_preproc_if_token1] = ACTIONS(1852), [aux_sym_preproc_if_token2] = ACTIONS(1852), [aux_sym_preproc_ifdef_token1] = ACTIONS(1852), [aux_sym_preproc_ifdef_token2] = ACTIONS(1852), [aux_sym_preproc_else_token1] = ACTIONS(1852), [aux_sym_preproc_elif_token1] = ACTIONS(1852), [sym_preproc_directive] = ACTIONS(1852), [anon_sym_LPAREN2] = ACTIONS(1854), [anon_sym_BANG] = ACTIONS(1854), [anon_sym_TILDE] = ACTIONS(1854), [anon_sym_DASH] = ACTIONS(1852), [anon_sym_PLUS] = ACTIONS(1852), [anon_sym_STAR] = ACTIONS(1854), [anon_sym_AMP_AMP] = ACTIONS(1854), [anon_sym_AMP] = ACTIONS(1852), [anon_sym_SEMI] = ACTIONS(1854), [anon_sym_typedef] = ACTIONS(1852), [anon_sym_extern] = ACTIONS(1852), [anon_sym___attribute__] = ACTIONS(1852), [anon_sym_COLON_COLON] = ACTIONS(1854), [anon_sym_LBRACK_LBRACK] = ACTIONS(1854), [anon_sym___declspec] = ACTIONS(1852), [anon_sym___based] = ACTIONS(1852), [anon_sym___cdecl] = ACTIONS(1852), [anon_sym___clrcall] = ACTIONS(1852), [anon_sym___stdcall] = ACTIONS(1852), [anon_sym___fastcall] = ACTIONS(1852), [anon_sym___thiscall] = ACTIONS(1852), [anon_sym___vectorcall] = ACTIONS(1852), [anon_sym_LBRACE] = ACTIONS(1854), [anon_sym_LBRACK] = ACTIONS(1852), [anon_sym_static] = ACTIONS(1852), [anon_sym_register] = ACTIONS(1852), [anon_sym_inline] = ACTIONS(1852), [anon_sym_thread_local] = ACTIONS(1852), [anon_sym_const] = ACTIONS(1852), [anon_sym_volatile] = ACTIONS(1852), [anon_sym_restrict] = ACTIONS(1852), [anon_sym__Atomic] = ACTIONS(1852), [anon_sym_mutable] = ACTIONS(1852), [anon_sym_constexpr] = ACTIONS(1852), [anon_sym_signed] = ACTIONS(1852), [anon_sym_unsigned] = ACTIONS(1852), [anon_sym_long] = ACTIONS(1852), [anon_sym_short] = ACTIONS(1852), [sym_primitive_type] = ACTIONS(1852), [anon_sym_enum] = ACTIONS(1852), [anon_sym_class] = ACTIONS(1852), [anon_sym_struct] = ACTIONS(1852), [anon_sym_union] = ACTIONS(1852), [anon_sym_if] = ACTIONS(1852), [anon_sym_else] = ACTIONS(1852), [anon_sym_switch] = ACTIONS(1852), [anon_sym_case] = ACTIONS(1852), [anon_sym_default] = ACTIONS(1852), [anon_sym_while] = ACTIONS(1852), [anon_sym_do] = ACTIONS(1852), [anon_sym_for] = ACTIONS(1852), [anon_sym_return] = ACTIONS(1852), [anon_sym_break] = ACTIONS(1852), [anon_sym_continue] = ACTIONS(1852), [anon_sym_goto] = ACTIONS(1852), [anon_sym_DASH_DASH] = ACTIONS(1854), [anon_sym_PLUS_PLUS] = ACTIONS(1854), [anon_sym_sizeof] = ACTIONS(1852), [sym_number_literal] = ACTIONS(1854), [anon_sym_L_SQUOTE] = ACTIONS(1854), [anon_sym_u_SQUOTE] = ACTIONS(1854), [anon_sym_U_SQUOTE] = ACTIONS(1854), [anon_sym_u8_SQUOTE] = ACTIONS(1854), [anon_sym_SQUOTE] = ACTIONS(1854), [anon_sym_L_DQUOTE] = ACTIONS(1854), [anon_sym_u_DQUOTE] = ACTIONS(1854), [anon_sym_U_DQUOTE] = ACTIONS(1854), [anon_sym_u8_DQUOTE] = ACTIONS(1854), [anon_sym_DQUOTE] = ACTIONS(1854), [sym_true] = ACTIONS(1852), [sym_false] = ACTIONS(1852), [sym_null] = ACTIONS(1852), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1852), [anon_sym_virtual] = ACTIONS(1852), [anon_sym_explicit] = ACTIONS(1852), [sym_auto] = ACTIONS(1852), [anon_sym_typename] = ACTIONS(1852), [anon_sym_template] = ACTIONS(1852), [anon_sym_operator] = ACTIONS(1852), [anon_sym_delete] = ACTIONS(1852), [anon_sym_throw] = ACTIONS(1852), [anon_sym_namespace] = ACTIONS(1852), [anon_sym_using] = ACTIONS(1852), [anon_sym_static_assert] = ACTIONS(1852), [anon_sym_co_return] = ACTIONS(1852), [anon_sym_co_yield] = ACTIONS(1852), [anon_sym_try] = ACTIONS(1852), [anon_sym_co_await] = ACTIONS(1852), [anon_sym_new] = ACTIONS(1852), [sym_this] = ACTIONS(1852), [sym_nullptr] = ACTIONS(1852), [sym_raw_string_literal] = ACTIONS(1854), }, [259] = { [sym_compound_statement] = STATE(4677), [sym_labeled_statement] = STATE(4677), [sym_expression_statement] = STATE(4677), [sym_if_statement] = STATE(4677), [sym_switch_statement] = STATE(4677), [sym_case_statement] = STATE(4677), [sym_while_statement] = STATE(4677), [sym_do_statement] = STATE(4677), [sym_for_statement] = STATE(4677), [sym_return_statement] = STATE(4677), [sym_break_statement] = STATE(4677), [sym_continue_statement] = STATE(4677), [sym_goto_statement] = STATE(4677), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(4677), [sym_co_return_statement] = STATE(4677), [sym_co_yield_statement] = STATE(4677), [sym_throw_statement] = STATE(4677), [sym_try_statement] = STATE(4677), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [260] = { [sym_compound_statement] = STATE(4903), [sym_labeled_statement] = STATE(4903), [sym_expression_statement] = STATE(4903), [sym_if_statement] = STATE(4903), [sym_switch_statement] = STATE(4903), [sym_case_statement] = STATE(4903), [sym_while_statement] = STATE(4903), [sym_do_statement] = STATE(4903), [sym_for_statement] = STATE(4903), [sym_return_statement] = STATE(4903), [sym_break_statement] = STATE(4903), [sym_continue_statement] = STATE(4903), [sym_goto_statement] = STATE(4903), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(4903), [sym_co_return_statement] = STATE(4903), [sym_co_yield_statement] = STATE(4903), [sym_throw_statement] = STATE(4903), [sym_try_statement] = STATE(4903), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [261] = { [sym_compound_statement] = STATE(4662), [sym_labeled_statement] = STATE(4662), [sym_expression_statement] = STATE(4662), [sym_if_statement] = STATE(4662), [sym_switch_statement] = STATE(4662), [sym_case_statement] = STATE(4662), [sym_while_statement] = STATE(4662), [sym_do_statement] = STATE(4662), [sym_for_statement] = STATE(4662), [sym_return_statement] = STATE(4662), [sym_break_statement] = STATE(4662), [sym_continue_statement] = STATE(4662), [sym_goto_statement] = STATE(4662), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(4662), [sym_co_return_statement] = STATE(4662), [sym_co_yield_statement] = STATE(4662), [sym_throw_statement] = STATE(4662), [sym_try_statement] = STATE(4662), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [262] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [263] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [264] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [265] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [266] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [267] = { [sym_identifier] = ACTIONS(1856), [aux_sym_preproc_include_token1] = ACTIONS(1856), [aux_sym_preproc_def_token1] = ACTIONS(1856), [aux_sym_preproc_if_token1] = ACTIONS(1856), [aux_sym_preproc_if_token2] = ACTIONS(1856), [aux_sym_preproc_ifdef_token1] = ACTIONS(1856), [aux_sym_preproc_ifdef_token2] = ACTIONS(1856), [aux_sym_preproc_else_token1] = ACTIONS(1856), [aux_sym_preproc_elif_token1] = ACTIONS(1856), [sym_preproc_directive] = ACTIONS(1856), [anon_sym_LPAREN2] = ACTIONS(1858), [anon_sym_BANG] = ACTIONS(1858), [anon_sym_TILDE] = ACTIONS(1858), [anon_sym_DASH] = ACTIONS(1856), [anon_sym_PLUS] = ACTIONS(1856), [anon_sym_STAR] = ACTIONS(1858), [anon_sym_AMP_AMP] = ACTIONS(1858), [anon_sym_AMP] = ACTIONS(1856), [anon_sym_SEMI] = ACTIONS(1858), [anon_sym_typedef] = ACTIONS(1856), [anon_sym_extern] = ACTIONS(1856), [anon_sym___attribute__] = ACTIONS(1856), [anon_sym_COLON_COLON] = ACTIONS(1858), [anon_sym_LBRACK_LBRACK] = ACTIONS(1858), [anon_sym___declspec] = ACTIONS(1856), [anon_sym___based] = ACTIONS(1856), [anon_sym___cdecl] = ACTIONS(1856), [anon_sym___clrcall] = ACTIONS(1856), [anon_sym___stdcall] = ACTIONS(1856), [anon_sym___fastcall] = ACTIONS(1856), [anon_sym___thiscall] = ACTIONS(1856), [anon_sym___vectorcall] = ACTIONS(1856), [anon_sym_LBRACE] = ACTIONS(1858), [anon_sym_LBRACK] = ACTIONS(1856), [anon_sym_static] = ACTIONS(1856), [anon_sym_register] = ACTIONS(1856), [anon_sym_inline] = ACTIONS(1856), [anon_sym_thread_local] = ACTIONS(1856), [anon_sym_const] = ACTIONS(1856), [anon_sym_volatile] = ACTIONS(1856), [anon_sym_restrict] = ACTIONS(1856), [anon_sym__Atomic] = ACTIONS(1856), [anon_sym_mutable] = ACTIONS(1856), [anon_sym_constexpr] = ACTIONS(1856), [anon_sym_signed] = ACTIONS(1856), [anon_sym_unsigned] = ACTIONS(1856), [anon_sym_long] = ACTIONS(1856), [anon_sym_short] = ACTIONS(1856), [sym_primitive_type] = ACTIONS(1856), [anon_sym_enum] = ACTIONS(1856), [anon_sym_class] = ACTIONS(1856), [anon_sym_struct] = ACTIONS(1856), [anon_sym_union] = ACTIONS(1856), [anon_sym_if] = ACTIONS(1856), [anon_sym_else] = ACTIONS(1856), [anon_sym_switch] = ACTIONS(1856), [anon_sym_case] = ACTIONS(1856), [anon_sym_default] = ACTIONS(1856), [anon_sym_while] = ACTIONS(1856), [anon_sym_do] = ACTIONS(1856), [anon_sym_for] = ACTIONS(1856), [anon_sym_return] = ACTIONS(1856), [anon_sym_break] = ACTIONS(1856), [anon_sym_continue] = ACTIONS(1856), [anon_sym_goto] = ACTIONS(1856), [anon_sym_DASH_DASH] = ACTIONS(1858), [anon_sym_PLUS_PLUS] = ACTIONS(1858), [anon_sym_sizeof] = ACTIONS(1856), [sym_number_literal] = ACTIONS(1858), [anon_sym_L_SQUOTE] = ACTIONS(1858), [anon_sym_u_SQUOTE] = ACTIONS(1858), [anon_sym_U_SQUOTE] = ACTIONS(1858), [anon_sym_u8_SQUOTE] = ACTIONS(1858), [anon_sym_SQUOTE] = ACTIONS(1858), [anon_sym_L_DQUOTE] = ACTIONS(1858), [anon_sym_u_DQUOTE] = ACTIONS(1858), [anon_sym_U_DQUOTE] = ACTIONS(1858), [anon_sym_u8_DQUOTE] = ACTIONS(1858), [anon_sym_DQUOTE] = ACTIONS(1858), [sym_true] = ACTIONS(1856), [sym_false] = ACTIONS(1856), [sym_null] = ACTIONS(1856), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1856), [anon_sym_virtual] = ACTIONS(1856), [anon_sym_explicit] = ACTIONS(1856), [sym_auto] = ACTIONS(1856), [anon_sym_typename] = ACTIONS(1856), [anon_sym_template] = ACTIONS(1856), [anon_sym_operator] = ACTIONS(1856), [anon_sym_delete] = ACTIONS(1856), [anon_sym_throw] = ACTIONS(1856), [anon_sym_namespace] = ACTIONS(1856), [anon_sym_using] = ACTIONS(1856), [anon_sym_static_assert] = ACTIONS(1856), [anon_sym_co_return] = ACTIONS(1856), [anon_sym_co_yield] = ACTIONS(1856), [anon_sym_try] = ACTIONS(1856), [anon_sym_co_await] = ACTIONS(1856), [anon_sym_new] = ACTIONS(1856), [sym_this] = ACTIONS(1856), [sym_nullptr] = ACTIONS(1856), [sym_raw_string_literal] = ACTIONS(1858), }, [268] = { [sym_compound_statement] = STATE(4664), [sym_labeled_statement] = STATE(4664), [sym_expression_statement] = STATE(4664), [sym_if_statement] = STATE(4664), [sym_switch_statement] = STATE(4664), [sym_case_statement] = STATE(4664), [sym_while_statement] = STATE(4664), [sym_do_statement] = STATE(4664), [sym_for_statement] = STATE(4664), [sym_return_statement] = STATE(4664), [sym_break_statement] = STATE(4664), [sym_continue_statement] = STATE(4664), [sym_goto_statement] = STATE(4664), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(4664), [sym_co_return_statement] = STATE(4664), [sym_co_yield_statement] = STATE(4664), [sym_throw_statement] = STATE(4664), [sym_try_statement] = STATE(4664), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [269] = { [sym_compound_statement] = STATE(4673), [sym_labeled_statement] = STATE(4673), [sym_expression_statement] = STATE(4673), [sym_if_statement] = STATE(4673), [sym_switch_statement] = STATE(4673), [sym_case_statement] = STATE(4673), [sym_while_statement] = STATE(4673), [sym_do_statement] = STATE(4673), [sym_for_statement] = STATE(4673), [sym_return_statement] = STATE(4673), [sym_break_statement] = STATE(4673), [sym_continue_statement] = STATE(4673), [sym_goto_statement] = STATE(4673), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(4673), [sym_co_return_statement] = STATE(4673), [sym_co_yield_statement] = STATE(4673), [sym_throw_statement] = STATE(4673), [sym_try_statement] = STATE(4673), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [270] = { [sym_compound_statement] = STATE(4678), [sym_labeled_statement] = STATE(4678), [sym_expression_statement] = STATE(4678), [sym_if_statement] = STATE(4678), [sym_switch_statement] = STATE(4678), [sym_case_statement] = STATE(4678), [sym_while_statement] = STATE(4678), [sym_do_statement] = STATE(4678), [sym_for_statement] = STATE(4678), [sym_return_statement] = STATE(4678), [sym_break_statement] = STATE(4678), [sym_continue_statement] = STATE(4678), [sym_goto_statement] = STATE(4678), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(4678), [sym_co_return_statement] = STATE(4678), [sym_co_yield_statement] = STATE(4678), [sym_throw_statement] = STATE(4678), [sym_try_statement] = STATE(4678), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [271] = { [sym_compound_statement] = STATE(4679), [sym_labeled_statement] = STATE(4679), [sym_expression_statement] = STATE(4679), [sym_if_statement] = STATE(4679), [sym_switch_statement] = STATE(4679), [sym_case_statement] = STATE(4679), [sym_while_statement] = STATE(4679), [sym_do_statement] = STATE(4679), [sym_for_statement] = STATE(4679), [sym_return_statement] = STATE(4679), [sym_break_statement] = STATE(4679), [sym_continue_statement] = STATE(4679), [sym_goto_statement] = STATE(4679), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(4679), [sym_co_return_statement] = STATE(4679), [sym_co_yield_statement] = STATE(4679), [sym_throw_statement] = STATE(4679), [sym_try_statement] = STATE(4679), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [272] = { [sym_compound_statement] = STATE(4681), [sym_labeled_statement] = STATE(4681), [sym_expression_statement] = STATE(4681), [sym_if_statement] = STATE(4681), [sym_switch_statement] = STATE(4681), [sym_case_statement] = STATE(4681), [sym_while_statement] = STATE(4681), [sym_do_statement] = STATE(4681), [sym_for_statement] = STATE(4681), [sym_return_statement] = STATE(4681), [sym_break_statement] = STATE(4681), [sym_continue_statement] = STATE(4681), [sym_goto_statement] = STATE(4681), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(4681), [sym_co_return_statement] = STATE(4681), [sym_co_yield_statement] = STATE(4681), [sym_throw_statement] = STATE(4681), [sym_try_statement] = STATE(4681), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [273] = { [sym_compound_statement] = STATE(4686), [sym_labeled_statement] = STATE(4686), [sym_expression_statement] = STATE(4686), [sym_if_statement] = STATE(4686), [sym_switch_statement] = STATE(4686), [sym_case_statement] = STATE(4686), [sym_while_statement] = STATE(4686), [sym_do_statement] = STATE(4686), [sym_for_statement] = STATE(4686), [sym_return_statement] = STATE(4686), [sym_break_statement] = STATE(4686), [sym_continue_statement] = STATE(4686), [sym_goto_statement] = STATE(4686), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(4686), [sym_co_return_statement] = STATE(4686), [sym_co_yield_statement] = STATE(4686), [sym_throw_statement] = STATE(4686), [sym_try_statement] = STATE(4686), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [274] = { [sym_compound_statement] = STATE(4687), [sym_labeled_statement] = STATE(4687), [sym_expression_statement] = STATE(4687), [sym_if_statement] = STATE(4687), [sym_switch_statement] = STATE(4687), [sym_case_statement] = STATE(4687), [sym_while_statement] = STATE(4687), [sym_do_statement] = STATE(4687), [sym_for_statement] = STATE(4687), [sym_return_statement] = STATE(4687), [sym_break_statement] = STATE(4687), [sym_continue_statement] = STATE(4687), [sym_goto_statement] = STATE(4687), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(4687), [sym_co_return_statement] = STATE(4687), [sym_co_yield_statement] = STATE(4687), [sym_throw_statement] = STATE(4687), [sym_try_statement] = STATE(4687), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [275] = { [sym_compound_statement] = STATE(4670), [sym_labeled_statement] = STATE(4700), [sym_expression_statement] = STATE(4716), [sym_if_statement] = STATE(4725), [sym_switch_statement] = STATE(4727), [sym_case_statement] = STATE(4729), [sym_while_statement] = STATE(4781), [sym_do_statement] = STATE(4797), [sym_for_statement] = STATE(4806), [sym_return_statement] = STATE(4807), [sym_break_statement] = STATE(4810), [sym_continue_statement] = STATE(4811), [sym_goto_statement] = STATE(4812), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(4820), [sym_co_return_statement] = STATE(4831), [sym_co_yield_statement] = STATE(4836), [sym_throw_statement] = STATE(4837), [sym_try_statement] = STATE(4845), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [276] = { [sym_compound_statement] = STATE(4848), [sym_labeled_statement] = STATE(4850), [sym_expression_statement] = STATE(4875), [sym_if_statement] = STATE(4878), [sym_switch_statement] = STATE(4879), [sym_case_statement] = STATE(4899), [sym_while_statement] = STATE(4902), [sym_do_statement] = STATE(4989), [sym_for_statement] = STATE(4906), [sym_return_statement] = STATE(4908), [sym_break_statement] = STATE(4910), [sym_continue_statement] = STATE(4923), [sym_goto_statement] = STATE(4934), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(4936), [sym_co_return_statement] = STATE(4943), [sym_co_yield_statement] = STATE(4944), [sym_throw_statement] = STATE(4974), [sym_try_statement] = STATE(4976), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [277] = { [sym_compound_statement] = STATE(4978), [sym_labeled_statement] = STATE(4978), [sym_expression_statement] = STATE(4978), [sym_if_statement] = STATE(4978), [sym_switch_statement] = STATE(4978), [sym_case_statement] = STATE(4978), [sym_while_statement] = STATE(4978), [sym_do_statement] = STATE(4978), [sym_for_statement] = STATE(4978), [sym_return_statement] = STATE(4978), [sym_break_statement] = STATE(4978), [sym_continue_statement] = STATE(4978), [sym_goto_statement] = STATE(4978), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(4978), [sym_co_return_statement] = STATE(4978), [sym_co_yield_statement] = STATE(4978), [sym_throw_statement] = STATE(4978), [sym_try_statement] = STATE(4978), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [278] = { [sym_compound_statement] = STATE(4982), [sym_labeled_statement] = STATE(4982), [sym_expression_statement] = STATE(4982), [sym_if_statement] = STATE(4982), [sym_switch_statement] = STATE(4982), [sym_case_statement] = STATE(4982), [sym_while_statement] = STATE(4982), [sym_do_statement] = STATE(4982), [sym_for_statement] = STATE(4982), [sym_return_statement] = STATE(4982), [sym_break_statement] = STATE(4982), [sym_continue_statement] = STATE(4982), [sym_goto_statement] = STATE(4982), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(4982), [sym_co_return_statement] = STATE(4982), [sym_co_yield_statement] = STATE(4982), [sym_throw_statement] = STATE(4982), [sym_try_statement] = STATE(4982), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [279] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [280] = { [sym_compound_statement] = STATE(574), [sym_labeled_statement] = STATE(574), [sym_expression_statement] = STATE(574), [sym_if_statement] = STATE(574), [sym_switch_statement] = STATE(574), [sym_case_statement] = STATE(574), [sym_while_statement] = STATE(574), [sym_do_statement] = STATE(574), [sym_for_statement] = STATE(574), [sym_return_statement] = STATE(574), [sym_break_statement] = STATE(574), [sym_continue_statement] = STATE(574), [sym_goto_statement] = STATE(574), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(574), [sym_co_return_statement] = STATE(574), [sym_co_yield_statement] = STATE(574), [sym_throw_statement] = STATE(574), [sym_try_statement] = STATE(574), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [281] = { [sym_compound_statement] = STATE(5386), [sym_labeled_statement] = STATE(5386), [sym_expression_statement] = STATE(5386), [sym_if_statement] = STATE(5386), [sym_switch_statement] = STATE(5386), [sym_case_statement] = STATE(5386), [sym_while_statement] = STATE(5386), [sym_do_statement] = STATE(5386), [sym_for_statement] = STATE(5386), [sym_return_statement] = STATE(5386), [sym_break_statement] = STATE(5386), [sym_continue_statement] = STATE(5386), [sym_goto_statement] = STATE(5386), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(5386), [sym_co_return_statement] = STATE(5386), [sym_co_yield_statement] = STATE(5386), [sym_throw_statement] = STATE(5386), [sym_try_statement] = STATE(5386), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [282] = { [sym_compound_statement] = STATE(4983), [sym_labeled_statement] = STATE(4983), [sym_expression_statement] = STATE(4983), [sym_if_statement] = STATE(4983), [sym_switch_statement] = STATE(4983), [sym_case_statement] = STATE(4983), [sym_while_statement] = STATE(4983), [sym_do_statement] = STATE(4983), [sym_for_statement] = STATE(4983), [sym_return_statement] = STATE(4983), [sym_break_statement] = STATE(4983), [sym_continue_statement] = STATE(4983), [sym_goto_statement] = STATE(4983), [sym__expression] = STATE(2857), [sym_comma_expression] = STATE(5107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(4983), [sym_co_return_statement] = STATE(4983), [sym_co_yield_statement] = STATE(4983), [sym_throw_statement] = STATE(4983), [sym_try_statement] = STATE(4983), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1788), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1790), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1792), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1794), [anon_sym_switch] = ACTIONS(1796), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1798), [anon_sym_do] = ACTIONS(1800), [anon_sym_for] = ACTIONS(1802), [anon_sym_return] = ACTIONS(1804), [anon_sym_break] = ACTIONS(1806), [anon_sym_continue] = ACTIONS(1808), [anon_sym_goto] = ACTIONS(1810), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1812), [anon_sym_co_return] = ACTIONS(1814), [anon_sym_co_yield] = ACTIONS(1816), [anon_sym_try] = ACTIONS(1818), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [283] = { [sym_identifier] = ACTIONS(1860), [aux_sym_preproc_include_token1] = ACTIONS(1860), [aux_sym_preproc_def_token1] = ACTIONS(1860), [aux_sym_preproc_if_token1] = ACTIONS(1860), [aux_sym_preproc_if_token2] = ACTIONS(1860), [aux_sym_preproc_ifdef_token1] = ACTIONS(1860), [aux_sym_preproc_ifdef_token2] = ACTIONS(1860), [aux_sym_preproc_else_token1] = ACTIONS(1860), [aux_sym_preproc_elif_token1] = ACTIONS(1860), [sym_preproc_directive] = ACTIONS(1860), [anon_sym_LPAREN2] = ACTIONS(1862), [anon_sym_BANG] = ACTIONS(1862), [anon_sym_TILDE] = ACTIONS(1862), [anon_sym_DASH] = ACTIONS(1860), [anon_sym_PLUS] = ACTIONS(1860), [anon_sym_STAR] = ACTIONS(1862), [anon_sym_AMP_AMP] = ACTIONS(1862), [anon_sym_AMP] = ACTIONS(1860), [anon_sym_SEMI] = ACTIONS(1862), [anon_sym_typedef] = ACTIONS(1860), [anon_sym_extern] = ACTIONS(1860), [anon_sym___attribute__] = ACTIONS(1860), [anon_sym_COLON_COLON] = ACTIONS(1862), [anon_sym_LBRACK_LBRACK] = ACTIONS(1862), [anon_sym___declspec] = ACTIONS(1860), [anon_sym___based] = ACTIONS(1860), [anon_sym___cdecl] = ACTIONS(1860), [anon_sym___clrcall] = ACTIONS(1860), [anon_sym___stdcall] = ACTIONS(1860), [anon_sym___fastcall] = ACTIONS(1860), [anon_sym___thiscall] = ACTIONS(1860), [anon_sym___vectorcall] = ACTIONS(1860), [anon_sym_LBRACE] = ACTIONS(1862), [anon_sym_LBRACK] = ACTIONS(1860), [anon_sym_static] = ACTIONS(1860), [anon_sym_register] = ACTIONS(1860), [anon_sym_inline] = ACTIONS(1860), [anon_sym_thread_local] = ACTIONS(1860), [anon_sym_const] = ACTIONS(1860), [anon_sym_volatile] = ACTIONS(1860), [anon_sym_restrict] = ACTIONS(1860), [anon_sym__Atomic] = ACTIONS(1860), [anon_sym_mutable] = ACTIONS(1860), [anon_sym_constexpr] = ACTIONS(1860), [anon_sym_signed] = ACTIONS(1860), [anon_sym_unsigned] = ACTIONS(1860), [anon_sym_long] = ACTIONS(1860), [anon_sym_short] = ACTIONS(1860), [sym_primitive_type] = ACTIONS(1860), [anon_sym_enum] = ACTIONS(1860), [anon_sym_class] = ACTIONS(1860), [anon_sym_struct] = ACTIONS(1860), [anon_sym_union] = ACTIONS(1860), [anon_sym_if] = ACTIONS(1860), [anon_sym_else] = ACTIONS(1860), [anon_sym_switch] = ACTIONS(1860), [anon_sym_case] = ACTIONS(1860), [anon_sym_default] = ACTIONS(1860), [anon_sym_while] = ACTIONS(1860), [anon_sym_do] = ACTIONS(1860), [anon_sym_for] = ACTIONS(1860), [anon_sym_return] = ACTIONS(1860), [anon_sym_break] = ACTIONS(1860), [anon_sym_continue] = ACTIONS(1860), [anon_sym_goto] = ACTIONS(1860), [anon_sym_DASH_DASH] = ACTIONS(1862), [anon_sym_PLUS_PLUS] = ACTIONS(1862), [anon_sym_sizeof] = ACTIONS(1860), [sym_number_literal] = ACTIONS(1862), [anon_sym_L_SQUOTE] = ACTIONS(1862), [anon_sym_u_SQUOTE] = ACTIONS(1862), [anon_sym_U_SQUOTE] = ACTIONS(1862), [anon_sym_u8_SQUOTE] = ACTIONS(1862), [anon_sym_SQUOTE] = ACTIONS(1862), [anon_sym_L_DQUOTE] = ACTIONS(1862), [anon_sym_u_DQUOTE] = ACTIONS(1862), [anon_sym_U_DQUOTE] = ACTIONS(1862), [anon_sym_u8_DQUOTE] = ACTIONS(1862), [anon_sym_DQUOTE] = ACTIONS(1862), [sym_true] = ACTIONS(1860), [sym_false] = ACTIONS(1860), [sym_null] = ACTIONS(1860), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1860), [anon_sym_virtual] = ACTIONS(1860), [anon_sym_explicit] = ACTIONS(1860), [sym_auto] = ACTIONS(1860), [anon_sym_typename] = ACTIONS(1860), [anon_sym_template] = ACTIONS(1860), [anon_sym_operator] = ACTIONS(1860), [anon_sym_delete] = ACTIONS(1860), [anon_sym_throw] = ACTIONS(1860), [anon_sym_namespace] = ACTIONS(1860), [anon_sym_using] = ACTIONS(1860), [anon_sym_static_assert] = ACTIONS(1860), [anon_sym_co_return] = ACTIONS(1860), [anon_sym_co_yield] = ACTIONS(1860), [anon_sym_try] = ACTIONS(1860), [anon_sym_co_await] = ACTIONS(1860), [anon_sym_new] = ACTIONS(1860), [sym_this] = ACTIONS(1860), [sym_nullptr] = ACTIONS(1860), [sym_raw_string_literal] = ACTIONS(1862), }, [284] = { [sym_compound_statement] = STATE(597), [sym_labeled_statement] = STATE(597), [sym_expression_statement] = STATE(597), [sym_if_statement] = STATE(597), [sym_switch_statement] = STATE(597), [sym_case_statement] = STATE(597), [sym_while_statement] = STATE(597), [sym_do_statement] = STATE(597), [sym_for_statement] = STATE(597), [sym_return_statement] = STATE(597), [sym_break_statement] = STATE(597), [sym_continue_statement] = STATE(597), [sym_goto_statement] = STATE(597), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(597), [sym_co_return_statement] = STATE(597), [sym_co_yield_statement] = STATE(597), [sym_throw_statement] = STATE(597), [sym_try_statement] = STATE(597), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [285] = { [sym_compound_statement] = STATE(517), [sym_labeled_statement] = STATE(515), [sym_expression_statement] = STATE(513), [sym_if_statement] = STATE(509), [sym_switch_statement] = STATE(508), [sym_case_statement] = STATE(506), [sym_while_statement] = STATE(504), [sym_do_statement] = STATE(502), [sym_for_statement] = STATE(501), [sym_return_statement] = STATE(498), [sym_break_statement] = STATE(496), [sym_continue_statement] = STATE(495), [sym_goto_statement] = STATE(493), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(492), [sym_co_return_statement] = STATE(488), [sym_co_yield_statement] = STATE(485), [sym_throw_statement] = STATE(483), [sym_try_statement] = STATE(482), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [286] = { [sym_compound_statement] = STATE(598), [sym_labeled_statement] = STATE(598), [sym_expression_statement] = STATE(598), [sym_if_statement] = STATE(598), [sym_switch_statement] = STATE(598), [sym_case_statement] = STATE(598), [sym_while_statement] = STATE(598), [sym_do_statement] = STATE(598), [sym_for_statement] = STATE(598), [sym_return_statement] = STATE(598), [sym_break_statement] = STATE(598), [sym_continue_statement] = STATE(598), [sym_goto_statement] = STATE(598), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(598), [sym_co_return_statement] = STATE(598), [sym_co_yield_statement] = STATE(598), [sym_throw_statement] = STATE(598), [sym_try_statement] = STATE(598), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [287] = { [sym_compound_statement] = STATE(634), [sym_labeled_statement] = STATE(631), [sym_expression_statement] = STATE(629), [sym_if_statement] = STATE(619), [sym_switch_statement] = STATE(614), [sym_case_statement] = STATE(613), [sym_while_statement] = STATE(612), [sym_do_statement] = STATE(611), [sym_for_statement] = STATE(610), [sym_return_statement] = STATE(609), [sym_break_statement] = STATE(608), [sym_continue_statement] = STATE(607), [sym_goto_statement] = STATE(606), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(605), [sym_co_return_statement] = STATE(604), [sym_co_yield_statement] = STATE(603), [sym_throw_statement] = STATE(602), [sym_try_statement] = STATE(601), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [288] = { [sym_identifier] = ACTIONS(1864), [aux_sym_preproc_include_token1] = ACTIONS(1864), [aux_sym_preproc_def_token1] = ACTIONS(1864), [aux_sym_preproc_if_token1] = ACTIONS(1864), [aux_sym_preproc_if_token2] = ACTIONS(1864), [aux_sym_preproc_ifdef_token1] = ACTIONS(1864), [aux_sym_preproc_ifdef_token2] = ACTIONS(1864), [aux_sym_preproc_else_token1] = ACTIONS(1864), [aux_sym_preproc_elif_token1] = ACTIONS(1864), [sym_preproc_directive] = ACTIONS(1864), [anon_sym_LPAREN2] = ACTIONS(1866), [anon_sym_BANG] = ACTIONS(1866), [anon_sym_TILDE] = ACTIONS(1866), [anon_sym_DASH] = ACTIONS(1864), [anon_sym_PLUS] = ACTIONS(1864), [anon_sym_STAR] = ACTIONS(1866), [anon_sym_AMP_AMP] = ACTIONS(1866), [anon_sym_AMP] = ACTIONS(1864), [anon_sym_SEMI] = ACTIONS(1866), [anon_sym_typedef] = ACTIONS(1864), [anon_sym_extern] = ACTIONS(1864), [anon_sym___attribute__] = ACTIONS(1864), [anon_sym_COLON_COLON] = ACTIONS(1866), [anon_sym_LBRACK_LBRACK] = ACTIONS(1866), [anon_sym___declspec] = ACTIONS(1864), [anon_sym___based] = ACTIONS(1864), [anon_sym___cdecl] = ACTIONS(1864), [anon_sym___clrcall] = ACTIONS(1864), [anon_sym___stdcall] = ACTIONS(1864), [anon_sym___fastcall] = ACTIONS(1864), [anon_sym___thiscall] = ACTIONS(1864), [anon_sym___vectorcall] = ACTIONS(1864), [anon_sym_LBRACE] = ACTIONS(1866), [anon_sym_LBRACK] = ACTIONS(1864), [anon_sym_static] = ACTIONS(1864), [anon_sym_register] = ACTIONS(1864), [anon_sym_inline] = ACTIONS(1864), [anon_sym_thread_local] = ACTIONS(1864), [anon_sym_const] = ACTIONS(1864), [anon_sym_volatile] = ACTIONS(1864), [anon_sym_restrict] = ACTIONS(1864), [anon_sym__Atomic] = ACTIONS(1864), [anon_sym_mutable] = ACTIONS(1864), [anon_sym_constexpr] = ACTIONS(1864), [anon_sym_signed] = ACTIONS(1864), [anon_sym_unsigned] = ACTIONS(1864), [anon_sym_long] = ACTIONS(1864), [anon_sym_short] = ACTIONS(1864), [sym_primitive_type] = ACTIONS(1864), [anon_sym_enum] = ACTIONS(1864), [anon_sym_class] = ACTIONS(1864), [anon_sym_struct] = ACTIONS(1864), [anon_sym_union] = ACTIONS(1864), [anon_sym_if] = ACTIONS(1864), [anon_sym_else] = ACTIONS(1864), [anon_sym_switch] = ACTIONS(1864), [anon_sym_case] = ACTIONS(1864), [anon_sym_default] = ACTIONS(1864), [anon_sym_while] = ACTIONS(1864), [anon_sym_do] = ACTIONS(1864), [anon_sym_for] = ACTIONS(1864), [anon_sym_return] = ACTIONS(1864), [anon_sym_break] = ACTIONS(1864), [anon_sym_continue] = ACTIONS(1864), [anon_sym_goto] = ACTIONS(1864), [anon_sym_DASH_DASH] = ACTIONS(1866), [anon_sym_PLUS_PLUS] = ACTIONS(1866), [anon_sym_sizeof] = ACTIONS(1864), [sym_number_literal] = ACTIONS(1866), [anon_sym_L_SQUOTE] = ACTIONS(1866), [anon_sym_u_SQUOTE] = ACTIONS(1866), [anon_sym_U_SQUOTE] = ACTIONS(1866), [anon_sym_u8_SQUOTE] = ACTIONS(1866), [anon_sym_SQUOTE] = ACTIONS(1866), [anon_sym_L_DQUOTE] = ACTIONS(1866), [anon_sym_u_DQUOTE] = ACTIONS(1866), [anon_sym_U_DQUOTE] = ACTIONS(1866), [anon_sym_u8_DQUOTE] = ACTIONS(1866), [anon_sym_DQUOTE] = ACTIONS(1866), [sym_true] = ACTIONS(1864), [sym_false] = ACTIONS(1864), [sym_null] = ACTIONS(1864), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1864), [anon_sym_virtual] = ACTIONS(1864), [anon_sym_explicit] = ACTIONS(1864), [sym_auto] = ACTIONS(1864), [anon_sym_typename] = ACTIONS(1864), [anon_sym_template] = ACTIONS(1864), [anon_sym_operator] = ACTIONS(1864), [anon_sym_delete] = ACTIONS(1864), [anon_sym_throw] = ACTIONS(1864), [anon_sym_namespace] = ACTIONS(1864), [anon_sym_using] = ACTIONS(1864), [anon_sym_static_assert] = ACTIONS(1864), [anon_sym_co_return] = ACTIONS(1864), [anon_sym_co_yield] = ACTIONS(1864), [anon_sym_try] = ACTIONS(1864), [anon_sym_co_await] = ACTIONS(1864), [anon_sym_new] = ACTIONS(1864), [sym_this] = ACTIONS(1864), [sym_nullptr] = ACTIONS(1864), [sym_raw_string_literal] = ACTIONS(1866), }, [289] = { [sym_identifier] = ACTIONS(1868), [aux_sym_preproc_include_token1] = ACTIONS(1868), [aux_sym_preproc_def_token1] = ACTIONS(1868), [aux_sym_preproc_if_token1] = ACTIONS(1868), [aux_sym_preproc_if_token2] = ACTIONS(1868), [aux_sym_preproc_ifdef_token1] = ACTIONS(1868), [aux_sym_preproc_ifdef_token2] = ACTIONS(1868), [aux_sym_preproc_else_token1] = ACTIONS(1868), [aux_sym_preproc_elif_token1] = ACTIONS(1868), [sym_preproc_directive] = ACTIONS(1868), [anon_sym_LPAREN2] = ACTIONS(1870), [anon_sym_BANG] = ACTIONS(1870), [anon_sym_TILDE] = ACTIONS(1870), [anon_sym_DASH] = ACTIONS(1868), [anon_sym_PLUS] = ACTIONS(1868), [anon_sym_STAR] = ACTIONS(1870), [anon_sym_AMP_AMP] = ACTIONS(1870), [anon_sym_AMP] = ACTIONS(1868), [anon_sym_SEMI] = ACTIONS(1870), [anon_sym_typedef] = ACTIONS(1868), [anon_sym_extern] = ACTIONS(1868), [anon_sym___attribute__] = ACTIONS(1868), [anon_sym_COLON_COLON] = ACTIONS(1870), [anon_sym_LBRACK_LBRACK] = ACTIONS(1870), [anon_sym___declspec] = ACTIONS(1868), [anon_sym___based] = ACTIONS(1868), [anon_sym___cdecl] = ACTIONS(1868), [anon_sym___clrcall] = ACTIONS(1868), [anon_sym___stdcall] = ACTIONS(1868), [anon_sym___fastcall] = ACTIONS(1868), [anon_sym___thiscall] = ACTIONS(1868), [anon_sym___vectorcall] = ACTIONS(1868), [anon_sym_LBRACE] = ACTIONS(1870), [anon_sym_LBRACK] = ACTIONS(1868), [anon_sym_static] = ACTIONS(1868), [anon_sym_register] = ACTIONS(1868), [anon_sym_inline] = ACTIONS(1868), [anon_sym_thread_local] = ACTIONS(1868), [anon_sym_const] = ACTIONS(1868), [anon_sym_volatile] = ACTIONS(1868), [anon_sym_restrict] = ACTIONS(1868), [anon_sym__Atomic] = ACTIONS(1868), [anon_sym_mutable] = ACTIONS(1868), [anon_sym_constexpr] = ACTIONS(1868), [anon_sym_signed] = ACTIONS(1868), [anon_sym_unsigned] = ACTIONS(1868), [anon_sym_long] = ACTIONS(1868), [anon_sym_short] = ACTIONS(1868), [sym_primitive_type] = ACTIONS(1868), [anon_sym_enum] = ACTIONS(1868), [anon_sym_class] = ACTIONS(1868), [anon_sym_struct] = ACTIONS(1868), [anon_sym_union] = ACTIONS(1868), [anon_sym_if] = ACTIONS(1868), [anon_sym_else] = ACTIONS(1868), [anon_sym_switch] = ACTIONS(1868), [anon_sym_case] = ACTIONS(1868), [anon_sym_default] = ACTIONS(1868), [anon_sym_while] = ACTIONS(1868), [anon_sym_do] = ACTIONS(1868), [anon_sym_for] = ACTIONS(1868), [anon_sym_return] = ACTIONS(1868), [anon_sym_break] = ACTIONS(1868), [anon_sym_continue] = ACTIONS(1868), [anon_sym_goto] = ACTIONS(1868), [anon_sym_DASH_DASH] = ACTIONS(1870), [anon_sym_PLUS_PLUS] = ACTIONS(1870), [anon_sym_sizeof] = ACTIONS(1868), [sym_number_literal] = ACTIONS(1870), [anon_sym_L_SQUOTE] = ACTIONS(1870), [anon_sym_u_SQUOTE] = ACTIONS(1870), [anon_sym_U_SQUOTE] = ACTIONS(1870), [anon_sym_u8_SQUOTE] = ACTIONS(1870), [anon_sym_SQUOTE] = ACTIONS(1870), [anon_sym_L_DQUOTE] = ACTIONS(1870), [anon_sym_u_DQUOTE] = ACTIONS(1870), [anon_sym_U_DQUOTE] = ACTIONS(1870), [anon_sym_u8_DQUOTE] = ACTIONS(1870), [anon_sym_DQUOTE] = ACTIONS(1870), [sym_true] = ACTIONS(1868), [sym_false] = ACTIONS(1868), [sym_null] = ACTIONS(1868), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1868), [anon_sym_virtual] = ACTIONS(1868), [anon_sym_explicit] = ACTIONS(1868), [sym_auto] = ACTIONS(1868), [anon_sym_typename] = ACTIONS(1868), [anon_sym_template] = ACTIONS(1868), [anon_sym_operator] = ACTIONS(1868), [anon_sym_delete] = ACTIONS(1868), [anon_sym_throw] = ACTIONS(1868), [anon_sym_namespace] = ACTIONS(1868), [anon_sym_using] = ACTIONS(1868), [anon_sym_static_assert] = ACTIONS(1868), [anon_sym_co_return] = ACTIONS(1868), [anon_sym_co_yield] = ACTIONS(1868), [anon_sym_try] = ACTIONS(1868), [anon_sym_co_await] = ACTIONS(1868), [anon_sym_new] = ACTIONS(1868), [sym_this] = ACTIONS(1868), [sym_nullptr] = ACTIONS(1868), [sym_raw_string_literal] = ACTIONS(1870), }, [290] = { [sym_identifier] = ACTIONS(1872), [aux_sym_preproc_include_token1] = ACTIONS(1872), [aux_sym_preproc_def_token1] = ACTIONS(1872), [aux_sym_preproc_if_token1] = ACTIONS(1872), [aux_sym_preproc_if_token2] = ACTIONS(1872), [aux_sym_preproc_ifdef_token1] = ACTIONS(1872), [aux_sym_preproc_ifdef_token2] = ACTIONS(1872), [aux_sym_preproc_else_token1] = ACTIONS(1872), [aux_sym_preproc_elif_token1] = ACTIONS(1872), [sym_preproc_directive] = ACTIONS(1872), [anon_sym_LPAREN2] = ACTIONS(1874), [anon_sym_BANG] = ACTIONS(1874), [anon_sym_TILDE] = ACTIONS(1874), [anon_sym_DASH] = ACTIONS(1872), [anon_sym_PLUS] = ACTIONS(1872), [anon_sym_STAR] = ACTIONS(1874), [anon_sym_AMP_AMP] = ACTIONS(1874), [anon_sym_AMP] = ACTIONS(1872), [anon_sym_SEMI] = ACTIONS(1874), [anon_sym_typedef] = ACTIONS(1872), [anon_sym_extern] = ACTIONS(1872), [anon_sym___attribute__] = ACTIONS(1872), [anon_sym_COLON_COLON] = ACTIONS(1874), [anon_sym_LBRACK_LBRACK] = ACTIONS(1874), [anon_sym___declspec] = ACTIONS(1872), [anon_sym___based] = ACTIONS(1872), [anon_sym___cdecl] = ACTIONS(1872), [anon_sym___clrcall] = ACTIONS(1872), [anon_sym___stdcall] = ACTIONS(1872), [anon_sym___fastcall] = ACTIONS(1872), [anon_sym___thiscall] = ACTIONS(1872), [anon_sym___vectorcall] = ACTIONS(1872), [anon_sym_LBRACE] = ACTIONS(1874), [anon_sym_LBRACK] = ACTIONS(1872), [anon_sym_static] = ACTIONS(1872), [anon_sym_register] = ACTIONS(1872), [anon_sym_inline] = ACTIONS(1872), [anon_sym_thread_local] = ACTIONS(1872), [anon_sym_const] = ACTIONS(1872), [anon_sym_volatile] = ACTIONS(1872), [anon_sym_restrict] = ACTIONS(1872), [anon_sym__Atomic] = ACTIONS(1872), [anon_sym_mutable] = ACTIONS(1872), [anon_sym_constexpr] = ACTIONS(1872), [anon_sym_signed] = ACTIONS(1872), [anon_sym_unsigned] = ACTIONS(1872), [anon_sym_long] = ACTIONS(1872), [anon_sym_short] = ACTIONS(1872), [sym_primitive_type] = ACTIONS(1872), [anon_sym_enum] = ACTIONS(1872), [anon_sym_class] = ACTIONS(1872), [anon_sym_struct] = ACTIONS(1872), [anon_sym_union] = ACTIONS(1872), [anon_sym_if] = ACTIONS(1872), [anon_sym_else] = ACTIONS(1872), [anon_sym_switch] = ACTIONS(1872), [anon_sym_case] = ACTIONS(1872), [anon_sym_default] = ACTIONS(1872), [anon_sym_while] = ACTIONS(1872), [anon_sym_do] = ACTIONS(1872), [anon_sym_for] = ACTIONS(1872), [anon_sym_return] = ACTIONS(1872), [anon_sym_break] = ACTIONS(1872), [anon_sym_continue] = ACTIONS(1872), [anon_sym_goto] = ACTIONS(1872), [anon_sym_DASH_DASH] = ACTIONS(1874), [anon_sym_PLUS_PLUS] = ACTIONS(1874), [anon_sym_sizeof] = ACTIONS(1872), [sym_number_literal] = ACTIONS(1874), [anon_sym_L_SQUOTE] = ACTIONS(1874), [anon_sym_u_SQUOTE] = ACTIONS(1874), [anon_sym_U_SQUOTE] = ACTIONS(1874), [anon_sym_u8_SQUOTE] = ACTIONS(1874), [anon_sym_SQUOTE] = ACTIONS(1874), [anon_sym_L_DQUOTE] = ACTIONS(1874), [anon_sym_u_DQUOTE] = ACTIONS(1874), [anon_sym_U_DQUOTE] = ACTIONS(1874), [anon_sym_u8_DQUOTE] = ACTIONS(1874), [anon_sym_DQUOTE] = ACTIONS(1874), [sym_true] = ACTIONS(1872), [sym_false] = ACTIONS(1872), [sym_null] = ACTIONS(1872), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1872), [anon_sym_virtual] = ACTIONS(1872), [anon_sym_explicit] = ACTIONS(1872), [sym_auto] = ACTIONS(1872), [anon_sym_typename] = ACTIONS(1872), [anon_sym_template] = ACTIONS(1872), [anon_sym_operator] = ACTIONS(1872), [anon_sym_delete] = ACTIONS(1872), [anon_sym_throw] = ACTIONS(1872), [anon_sym_namespace] = ACTIONS(1872), [anon_sym_using] = ACTIONS(1872), [anon_sym_static_assert] = ACTIONS(1872), [anon_sym_co_return] = ACTIONS(1872), [anon_sym_co_yield] = ACTIONS(1872), [anon_sym_try] = ACTIONS(1872), [anon_sym_co_await] = ACTIONS(1872), [anon_sym_new] = ACTIONS(1872), [sym_this] = ACTIONS(1872), [sym_nullptr] = ACTIONS(1872), [sym_raw_string_literal] = ACTIONS(1874), }, [291] = { [sym_compound_statement] = STATE(305), [sym_labeled_statement] = STATE(305), [sym_expression_statement] = STATE(305), [sym_if_statement] = STATE(305), [sym_switch_statement] = STATE(305), [sym_case_statement] = STATE(305), [sym_while_statement] = STATE(305), [sym_do_statement] = STATE(305), [sym_for_statement] = STATE(305), [sym_return_statement] = STATE(305), [sym_break_statement] = STATE(305), [sym_continue_statement] = STATE(305), [sym_goto_statement] = STATE(305), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(305), [sym_co_return_statement] = STATE(305), [sym_co_yield_statement] = STATE(305), [sym_throw_statement] = STATE(305), [sym_try_statement] = STATE(305), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [292] = { [sym_identifier] = ACTIONS(1876), [aux_sym_preproc_include_token1] = ACTIONS(1876), [aux_sym_preproc_def_token1] = ACTIONS(1876), [aux_sym_preproc_if_token1] = ACTIONS(1876), [aux_sym_preproc_if_token2] = ACTIONS(1876), [aux_sym_preproc_ifdef_token1] = ACTIONS(1876), [aux_sym_preproc_ifdef_token2] = ACTIONS(1876), [aux_sym_preproc_else_token1] = ACTIONS(1876), [aux_sym_preproc_elif_token1] = ACTIONS(1876), [sym_preproc_directive] = ACTIONS(1876), [anon_sym_LPAREN2] = ACTIONS(1878), [anon_sym_BANG] = ACTIONS(1878), [anon_sym_TILDE] = ACTIONS(1878), [anon_sym_DASH] = ACTIONS(1876), [anon_sym_PLUS] = ACTIONS(1876), [anon_sym_STAR] = ACTIONS(1878), [anon_sym_AMP_AMP] = ACTIONS(1878), [anon_sym_AMP] = ACTIONS(1876), [anon_sym_SEMI] = ACTIONS(1878), [anon_sym_typedef] = ACTIONS(1876), [anon_sym_extern] = ACTIONS(1876), [anon_sym___attribute__] = ACTIONS(1876), [anon_sym_COLON_COLON] = ACTIONS(1878), [anon_sym_LBRACK_LBRACK] = ACTIONS(1878), [anon_sym___declspec] = ACTIONS(1876), [anon_sym___based] = ACTIONS(1876), [anon_sym___cdecl] = ACTIONS(1876), [anon_sym___clrcall] = ACTIONS(1876), [anon_sym___stdcall] = ACTIONS(1876), [anon_sym___fastcall] = ACTIONS(1876), [anon_sym___thiscall] = ACTIONS(1876), [anon_sym___vectorcall] = ACTIONS(1876), [anon_sym_LBRACE] = ACTIONS(1878), [anon_sym_LBRACK] = ACTIONS(1876), [anon_sym_static] = ACTIONS(1876), [anon_sym_register] = ACTIONS(1876), [anon_sym_inline] = ACTIONS(1876), [anon_sym_thread_local] = ACTIONS(1876), [anon_sym_const] = ACTIONS(1876), [anon_sym_volatile] = ACTIONS(1876), [anon_sym_restrict] = ACTIONS(1876), [anon_sym__Atomic] = ACTIONS(1876), [anon_sym_mutable] = ACTIONS(1876), [anon_sym_constexpr] = ACTIONS(1876), [anon_sym_signed] = ACTIONS(1876), [anon_sym_unsigned] = ACTIONS(1876), [anon_sym_long] = ACTIONS(1876), [anon_sym_short] = ACTIONS(1876), [sym_primitive_type] = ACTIONS(1876), [anon_sym_enum] = ACTIONS(1876), [anon_sym_class] = ACTIONS(1876), [anon_sym_struct] = ACTIONS(1876), [anon_sym_union] = ACTIONS(1876), [anon_sym_if] = ACTIONS(1876), [anon_sym_else] = ACTIONS(1876), [anon_sym_switch] = ACTIONS(1876), [anon_sym_case] = ACTIONS(1876), [anon_sym_default] = ACTIONS(1876), [anon_sym_while] = ACTIONS(1876), [anon_sym_do] = ACTIONS(1876), [anon_sym_for] = ACTIONS(1876), [anon_sym_return] = ACTIONS(1876), [anon_sym_break] = ACTIONS(1876), [anon_sym_continue] = ACTIONS(1876), [anon_sym_goto] = ACTIONS(1876), [anon_sym_DASH_DASH] = ACTIONS(1878), [anon_sym_PLUS_PLUS] = ACTIONS(1878), [anon_sym_sizeof] = ACTIONS(1876), [sym_number_literal] = ACTIONS(1878), [anon_sym_L_SQUOTE] = ACTIONS(1878), [anon_sym_u_SQUOTE] = ACTIONS(1878), [anon_sym_U_SQUOTE] = ACTIONS(1878), [anon_sym_u8_SQUOTE] = ACTIONS(1878), [anon_sym_SQUOTE] = ACTIONS(1878), [anon_sym_L_DQUOTE] = ACTIONS(1878), [anon_sym_u_DQUOTE] = ACTIONS(1878), [anon_sym_U_DQUOTE] = ACTIONS(1878), [anon_sym_u8_DQUOTE] = ACTIONS(1878), [anon_sym_DQUOTE] = ACTIONS(1878), [sym_true] = ACTIONS(1876), [sym_false] = ACTIONS(1876), [sym_null] = ACTIONS(1876), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1876), [anon_sym_virtual] = ACTIONS(1876), [anon_sym_explicit] = ACTIONS(1876), [sym_auto] = ACTIONS(1876), [anon_sym_typename] = ACTIONS(1876), [anon_sym_template] = ACTIONS(1876), [anon_sym_operator] = ACTIONS(1876), [anon_sym_delete] = ACTIONS(1876), [anon_sym_throw] = ACTIONS(1876), [anon_sym_namespace] = ACTIONS(1876), [anon_sym_using] = ACTIONS(1876), [anon_sym_static_assert] = ACTIONS(1876), [anon_sym_co_return] = ACTIONS(1876), [anon_sym_co_yield] = ACTIONS(1876), [anon_sym_try] = ACTIONS(1876), [anon_sym_co_await] = ACTIONS(1876), [anon_sym_new] = ACTIONS(1876), [sym_this] = ACTIONS(1876), [sym_nullptr] = ACTIONS(1876), [sym_raw_string_literal] = ACTIONS(1878), }, [293] = { [sym_identifier] = ACTIONS(1880), [aux_sym_preproc_include_token1] = ACTIONS(1880), [aux_sym_preproc_def_token1] = ACTIONS(1880), [aux_sym_preproc_if_token1] = ACTIONS(1880), [aux_sym_preproc_if_token2] = ACTIONS(1880), [aux_sym_preproc_ifdef_token1] = ACTIONS(1880), [aux_sym_preproc_ifdef_token2] = ACTIONS(1880), [aux_sym_preproc_else_token1] = ACTIONS(1880), [aux_sym_preproc_elif_token1] = ACTIONS(1880), [sym_preproc_directive] = ACTIONS(1880), [anon_sym_LPAREN2] = ACTIONS(1882), [anon_sym_BANG] = ACTIONS(1882), [anon_sym_TILDE] = ACTIONS(1882), [anon_sym_DASH] = ACTIONS(1880), [anon_sym_PLUS] = ACTIONS(1880), [anon_sym_STAR] = ACTIONS(1882), [anon_sym_AMP_AMP] = ACTIONS(1882), [anon_sym_AMP] = ACTIONS(1880), [anon_sym_SEMI] = ACTIONS(1882), [anon_sym_typedef] = ACTIONS(1880), [anon_sym_extern] = ACTIONS(1880), [anon_sym___attribute__] = ACTIONS(1880), [anon_sym_COLON_COLON] = ACTIONS(1882), [anon_sym_LBRACK_LBRACK] = ACTIONS(1882), [anon_sym___declspec] = ACTIONS(1880), [anon_sym___based] = ACTIONS(1880), [anon_sym___cdecl] = ACTIONS(1880), [anon_sym___clrcall] = ACTIONS(1880), [anon_sym___stdcall] = ACTIONS(1880), [anon_sym___fastcall] = ACTIONS(1880), [anon_sym___thiscall] = ACTIONS(1880), [anon_sym___vectorcall] = ACTIONS(1880), [anon_sym_LBRACE] = ACTIONS(1882), [anon_sym_LBRACK] = ACTIONS(1880), [anon_sym_static] = ACTIONS(1880), [anon_sym_register] = ACTIONS(1880), [anon_sym_inline] = ACTIONS(1880), [anon_sym_thread_local] = ACTIONS(1880), [anon_sym_const] = ACTIONS(1880), [anon_sym_volatile] = ACTIONS(1880), [anon_sym_restrict] = ACTIONS(1880), [anon_sym__Atomic] = ACTIONS(1880), [anon_sym_mutable] = ACTIONS(1880), [anon_sym_constexpr] = ACTIONS(1880), [anon_sym_signed] = ACTIONS(1880), [anon_sym_unsigned] = ACTIONS(1880), [anon_sym_long] = ACTIONS(1880), [anon_sym_short] = ACTIONS(1880), [sym_primitive_type] = ACTIONS(1880), [anon_sym_enum] = ACTIONS(1880), [anon_sym_class] = ACTIONS(1880), [anon_sym_struct] = ACTIONS(1880), [anon_sym_union] = ACTIONS(1880), [anon_sym_if] = ACTIONS(1880), [anon_sym_else] = ACTIONS(1880), [anon_sym_switch] = ACTIONS(1880), [anon_sym_case] = ACTIONS(1880), [anon_sym_default] = ACTIONS(1880), [anon_sym_while] = ACTIONS(1880), [anon_sym_do] = ACTIONS(1880), [anon_sym_for] = ACTIONS(1880), [anon_sym_return] = ACTIONS(1880), [anon_sym_break] = ACTIONS(1880), [anon_sym_continue] = ACTIONS(1880), [anon_sym_goto] = ACTIONS(1880), [anon_sym_DASH_DASH] = ACTIONS(1882), [anon_sym_PLUS_PLUS] = ACTIONS(1882), [anon_sym_sizeof] = ACTIONS(1880), [sym_number_literal] = ACTIONS(1882), [anon_sym_L_SQUOTE] = ACTIONS(1882), [anon_sym_u_SQUOTE] = ACTIONS(1882), [anon_sym_U_SQUOTE] = ACTIONS(1882), [anon_sym_u8_SQUOTE] = ACTIONS(1882), [anon_sym_SQUOTE] = ACTIONS(1882), [anon_sym_L_DQUOTE] = ACTIONS(1882), [anon_sym_u_DQUOTE] = ACTIONS(1882), [anon_sym_U_DQUOTE] = ACTIONS(1882), [anon_sym_u8_DQUOTE] = ACTIONS(1882), [anon_sym_DQUOTE] = ACTIONS(1882), [sym_true] = ACTIONS(1880), [sym_false] = ACTIONS(1880), [sym_null] = ACTIONS(1880), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1880), [anon_sym_virtual] = ACTIONS(1880), [anon_sym_explicit] = ACTIONS(1880), [sym_auto] = ACTIONS(1880), [anon_sym_typename] = ACTIONS(1880), [anon_sym_template] = ACTIONS(1880), [anon_sym_operator] = ACTIONS(1880), [anon_sym_delete] = ACTIONS(1880), [anon_sym_throw] = ACTIONS(1880), [anon_sym_namespace] = ACTIONS(1880), [anon_sym_using] = ACTIONS(1880), [anon_sym_static_assert] = ACTIONS(1880), [anon_sym_co_return] = ACTIONS(1880), [anon_sym_co_yield] = ACTIONS(1880), [anon_sym_try] = ACTIONS(1880), [anon_sym_co_await] = ACTIONS(1880), [anon_sym_new] = ACTIONS(1880), [sym_this] = ACTIONS(1880), [sym_nullptr] = ACTIONS(1880), [sym_raw_string_literal] = ACTIONS(1882), }, [294] = { [sym_compound_statement] = STATE(920), [sym_labeled_statement] = STATE(920), [sym_expression_statement] = STATE(920), [sym_if_statement] = STATE(920), [sym_switch_statement] = STATE(920), [sym_case_statement] = STATE(920), [sym_while_statement] = STATE(920), [sym_do_statement] = STATE(920), [sym_for_statement] = STATE(920), [sym_return_statement] = STATE(920), [sym_break_statement] = STATE(920), [sym_continue_statement] = STATE(920), [sym_goto_statement] = STATE(920), [sym__expression] = STATE(2807), [sym_comma_expression] = STATE(5167), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(920), [sym_co_return_statement] = STATE(920), [sym_co_yield_statement] = STATE(920), [sym_throw_statement] = STATE(920), [sym_try_statement] = STATE(920), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1782), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(1311), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1315), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(1317), [anon_sym_switch] = ACTIONS(1319), [anon_sym_case] = ACTIONS(1784), [anon_sym_default] = ACTIONS(1786), [anon_sym_while] = ACTIONS(1321), [anon_sym_do] = ACTIONS(1323), [anon_sym_for] = ACTIONS(1325), [anon_sym_return] = ACTIONS(1327), [anon_sym_break] = ACTIONS(1329), [anon_sym_continue] = ACTIONS(1331), [anon_sym_goto] = ACTIONS(1333), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(1335), [anon_sym_co_return] = ACTIONS(1337), [anon_sym_co_yield] = ACTIONS(1339), [anon_sym_try] = ACTIONS(1341), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [295] = { [sym_compound_statement] = STATE(454), [sym_labeled_statement] = STATE(454), [sym_expression_statement] = STATE(454), [sym_if_statement] = STATE(454), [sym_switch_statement] = STATE(454), [sym_case_statement] = STATE(454), [sym_while_statement] = STATE(454), [sym_do_statement] = STATE(454), [sym_for_statement] = STATE(454), [sym_return_statement] = STATE(454), [sym_break_statement] = STATE(454), [sym_continue_statement] = STATE(454), [sym_goto_statement] = STATE(454), [sym__expression] = STATE(2858), [sym_comma_expression] = STATE(5389), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(454), [sym_co_return_statement] = STATE(454), [sym_co_yield_statement] = STATE(454), [sym_throw_statement] = STATE(454), [sym_try_statement] = STATE(454), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(33), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(51), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(71), [anon_sym_switch] = ACTIONS(73), [anon_sym_case] = ACTIONS(75), [anon_sym_default] = ACTIONS(77), [anon_sym_while] = ACTIONS(79), [anon_sym_do] = ACTIONS(81), [anon_sym_for] = ACTIONS(83), [anon_sym_return] = ACTIONS(85), [anon_sym_break] = ACTIONS(87), [anon_sym_continue] = ACTIONS(89), [anon_sym_goto] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(121), [anon_sym_co_return] = ACTIONS(129), [anon_sym_co_yield] = ACTIONS(131), [anon_sym_try] = ACTIONS(133), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [296] = { [sym_identifier] = ACTIONS(1884), [aux_sym_preproc_include_token1] = ACTIONS(1884), [aux_sym_preproc_def_token1] = ACTIONS(1884), [aux_sym_preproc_if_token1] = ACTIONS(1884), [aux_sym_preproc_if_token2] = ACTIONS(1884), [aux_sym_preproc_ifdef_token1] = ACTIONS(1884), [aux_sym_preproc_ifdef_token2] = ACTIONS(1884), [aux_sym_preproc_else_token1] = ACTIONS(1884), [aux_sym_preproc_elif_token1] = ACTIONS(1884), [sym_preproc_directive] = ACTIONS(1884), [anon_sym_LPAREN2] = ACTIONS(1886), [anon_sym_BANG] = ACTIONS(1886), [anon_sym_TILDE] = ACTIONS(1886), [anon_sym_DASH] = ACTIONS(1884), [anon_sym_PLUS] = ACTIONS(1884), [anon_sym_STAR] = ACTIONS(1886), [anon_sym_AMP_AMP] = ACTIONS(1886), [anon_sym_AMP] = ACTIONS(1884), [anon_sym_SEMI] = ACTIONS(1886), [anon_sym_typedef] = ACTIONS(1884), [anon_sym_extern] = ACTIONS(1884), [anon_sym___attribute__] = ACTIONS(1884), [anon_sym_COLON_COLON] = ACTIONS(1886), [anon_sym_LBRACK_LBRACK] = ACTIONS(1886), [anon_sym___declspec] = ACTIONS(1884), [anon_sym___based] = ACTIONS(1884), [anon_sym___cdecl] = ACTIONS(1884), [anon_sym___clrcall] = ACTIONS(1884), [anon_sym___stdcall] = ACTIONS(1884), [anon_sym___fastcall] = ACTIONS(1884), [anon_sym___thiscall] = ACTIONS(1884), [anon_sym___vectorcall] = ACTIONS(1884), [anon_sym_LBRACE] = ACTIONS(1886), [anon_sym_LBRACK] = ACTIONS(1884), [anon_sym_static] = ACTIONS(1884), [anon_sym_register] = ACTIONS(1884), [anon_sym_inline] = ACTIONS(1884), [anon_sym_thread_local] = ACTIONS(1884), [anon_sym_const] = ACTIONS(1884), [anon_sym_volatile] = ACTIONS(1884), [anon_sym_restrict] = ACTIONS(1884), [anon_sym__Atomic] = ACTIONS(1884), [anon_sym_mutable] = ACTIONS(1884), [anon_sym_constexpr] = ACTIONS(1884), [anon_sym_signed] = ACTIONS(1884), [anon_sym_unsigned] = ACTIONS(1884), [anon_sym_long] = ACTIONS(1884), [anon_sym_short] = ACTIONS(1884), [sym_primitive_type] = ACTIONS(1884), [anon_sym_enum] = ACTIONS(1884), [anon_sym_class] = ACTIONS(1884), [anon_sym_struct] = ACTIONS(1884), [anon_sym_union] = ACTIONS(1884), [anon_sym_if] = ACTIONS(1884), [anon_sym_else] = ACTIONS(1884), [anon_sym_switch] = ACTIONS(1884), [anon_sym_case] = ACTIONS(1884), [anon_sym_default] = ACTIONS(1884), [anon_sym_while] = ACTIONS(1884), [anon_sym_do] = ACTIONS(1884), [anon_sym_for] = ACTIONS(1884), [anon_sym_return] = ACTIONS(1884), [anon_sym_break] = ACTIONS(1884), [anon_sym_continue] = ACTIONS(1884), [anon_sym_goto] = ACTIONS(1884), [anon_sym_DASH_DASH] = ACTIONS(1886), [anon_sym_PLUS_PLUS] = ACTIONS(1886), [anon_sym_sizeof] = ACTIONS(1884), [sym_number_literal] = ACTIONS(1886), [anon_sym_L_SQUOTE] = ACTIONS(1886), [anon_sym_u_SQUOTE] = ACTIONS(1886), [anon_sym_U_SQUOTE] = ACTIONS(1886), [anon_sym_u8_SQUOTE] = ACTIONS(1886), [anon_sym_SQUOTE] = ACTIONS(1886), [anon_sym_L_DQUOTE] = ACTIONS(1886), [anon_sym_u_DQUOTE] = ACTIONS(1886), [anon_sym_U_DQUOTE] = ACTIONS(1886), [anon_sym_u8_DQUOTE] = ACTIONS(1886), [anon_sym_DQUOTE] = ACTIONS(1886), [sym_true] = ACTIONS(1884), [sym_false] = ACTIONS(1884), [sym_null] = ACTIONS(1884), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1884), [anon_sym_virtual] = ACTIONS(1884), [anon_sym_explicit] = ACTIONS(1884), [sym_auto] = ACTIONS(1884), [anon_sym_typename] = ACTIONS(1884), [anon_sym_template] = ACTIONS(1884), [anon_sym_operator] = ACTIONS(1884), [anon_sym_delete] = ACTIONS(1884), [anon_sym_throw] = ACTIONS(1884), [anon_sym_namespace] = ACTIONS(1884), [anon_sym_using] = ACTIONS(1884), [anon_sym_static_assert] = ACTIONS(1884), [anon_sym_co_return] = ACTIONS(1884), [anon_sym_co_yield] = ACTIONS(1884), [anon_sym_try] = ACTIONS(1884), [anon_sym_co_await] = ACTIONS(1884), [anon_sym_new] = ACTIONS(1884), [sym_this] = ACTIONS(1884), [sym_nullptr] = ACTIONS(1884), [sym_raw_string_literal] = ACTIONS(1886), }, [297] = { [sym_compound_statement] = STATE(536), [sym_labeled_statement] = STATE(536), [sym_expression_statement] = STATE(536), [sym_if_statement] = STATE(536), [sym_switch_statement] = STATE(536), [sym_case_statement] = STATE(536), [sym_while_statement] = STATE(536), [sym_do_statement] = STATE(536), [sym_for_statement] = STATE(536), [sym_return_statement] = STATE(536), [sym_break_statement] = STATE(536), [sym_continue_statement] = STATE(536), [sym_goto_statement] = STATE(536), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(536), [sym_co_return_statement] = STATE(536), [sym_co_yield_statement] = STATE(536), [sym_throw_statement] = STATE(536), [sym_try_statement] = STATE(536), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [298] = { [sym_compound_statement] = STATE(311), [sym_labeled_statement] = STATE(311), [sym_expression_statement] = STATE(311), [sym_if_statement] = STATE(311), [sym_switch_statement] = STATE(311), [sym_case_statement] = STATE(311), [sym_while_statement] = STATE(311), [sym_do_statement] = STATE(311), [sym_for_statement] = STATE(311), [sym_return_statement] = STATE(311), [sym_break_statement] = STATE(311), [sym_continue_statement] = STATE(311), [sym_goto_statement] = STATE(311), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(311), [sym_co_return_statement] = STATE(311), [sym_co_yield_statement] = STATE(311), [sym_throw_statement] = STATE(311), [sym_try_statement] = STATE(311), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [299] = { [sym_identifier] = ACTIONS(1888), [aux_sym_preproc_include_token1] = ACTIONS(1888), [aux_sym_preproc_def_token1] = ACTIONS(1888), [aux_sym_preproc_if_token1] = ACTIONS(1888), [aux_sym_preproc_if_token2] = ACTIONS(1888), [aux_sym_preproc_ifdef_token1] = ACTIONS(1888), [aux_sym_preproc_ifdef_token2] = ACTIONS(1888), [aux_sym_preproc_else_token1] = ACTIONS(1888), [aux_sym_preproc_elif_token1] = ACTIONS(1888), [sym_preproc_directive] = ACTIONS(1888), [anon_sym_LPAREN2] = ACTIONS(1890), [anon_sym_BANG] = ACTIONS(1890), [anon_sym_TILDE] = ACTIONS(1890), [anon_sym_DASH] = ACTIONS(1888), [anon_sym_PLUS] = ACTIONS(1888), [anon_sym_STAR] = ACTIONS(1890), [anon_sym_AMP_AMP] = ACTIONS(1890), [anon_sym_AMP] = ACTIONS(1888), [anon_sym_SEMI] = ACTIONS(1890), [anon_sym_typedef] = ACTIONS(1888), [anon_sym_extern] = ACTIONS(1888), [anon_sym___attribute__] = ACTIONS(1888), [anon_sym_COLON_COLON] = ACTIONS(1890), [anon_sym_LBRACK_LBRACK] = ACTIONS(1890), [anon_sym___declspec] = ACTIONS(1888), [anon_sym___based] = ACTIONS(1888), [anon_sym___cdecl] = ACTIONS(1888), [anon_sym___clrcall] = ACTIONS(1888), [anon_sym___stdcall] = ACTIONS(1888), [anon_sym___fastcall] = ACTIONS(1888), [anon_sym___thiscall] = ACTIONS(1888), [anon_sym___vectorcall] = ACTIONS(1888), [anon_sym_LBRACE] = ACTIONS(1890), [anon_sym_LBRACK] = ACTIONS(1888), [anon_sym_static] = ACTIONS(1888), [anon_sym_register] = ACTIONS(1888), [anon_sym_inline] = ACTIONS(1888), [anon_sym_thread_local] = ACTIONS(1888), [anon_sym_const] = ACTIONS(1888), [anon_sym_volatile] = ACTIONS(1888), [anon_sym_restrict] = ACTIONS(1888), [anon_sym__Atomic] = ACTIONS(1888), [anon_sym_mutable] = ACTIONS(1888), [anon_sym_constexpr] = ACTIONS(1888), [anon_sym_signed] = ACTIONS(1888), [anon_sym_unsigned] = ACTIONS(1888), [anon_sym_long] = ACTIONS(1888), [anon_sym_short] = ACTIONS(1888), [sym_primitive_type] = ACTIONS(1888), [anon_sym_enum] = ACTIONS(1888), [anon_sym_class] = ACTIONS(1888), [anon_sym_struct] = ACTIONS(1888), [anon_sym_union] = ACTIONS(1888), [anon_sym_if] = ACTIONS(1888), [anon_sym_else] = ACTIONS(1892), [anon_sym_switch] = ACTIONS(1888), [anon_sym_case] = ACTIONS(1888), [anon_sym_default] = ACTIONS(1888), [anon_sym_while] = ACTIONS(1888), [anon_sym_do] = ACTIONS(1888), [anon_sym_for] = ACTIONS(1888), [anon_sym_return] = ACTIONS(1888), [anon_sym_break] = ACTIONS(1888), [anon_sym_continue] = ACTIONS(1888), [anon_sym_goto] = ACTIONS(1888), [anon_sym_DASH_DASH] = ACTIONS(1890), [anon_sym_PLUS_PLUS] = ACTIONS(1890), [anon_sym_sizeof] = ACTIONS(1888), [sym_number_literal] = ACTIONS(1890), [anon_sym_L_SQUOTE] = ACTIONS(1890), [anon_sym_u_SQUOTE] = ACTIONS(1890), [anon_sym_U_SQUOTE] = ACTIONS(1890), [anon_sym_u8_SQUOTE] = ACTIONS(1890), [anon_sym_SQUOTE] = ACTIONS(1890), [anon_sym_L_DQUOTE] = ACTIONS(1890), [anon_sym_u_DQUOTE] = ACTIONS(1890), [anon_sym_U_DQUOTE] = ACTIONS(1890), [anon_sym_u8_DQUOTE] = ACTIONS(1890), [anon_sym_DQUOTE] = ACTIONS(1890), [sym_true] = ACTIONS(1888), [sym_false] = ACTIONS(1888), [sym_null] = ACTIONS(1888), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1888), [anon_sym_virtual] = ACTIONS(1888), [anon_sym_explicit] = ACTIONS(1888), [sym_auto] = ACTIONS(1888), [anon_sym_typename] = ACTIONS(1888), [anon_sym_template] = ACTIONS(1888), [anon_sym_operator] = ACTIONS(1888), [anon_sym_delete] = ACTIONS(1888), [anon_sym_throw] = ACTIONS(1888), [anon_sym_namespace] = ACTIONS(1888), [anon_sym_using] = ACTIONS(1888), [anon_sym_static_assert] = ACTIONS(1888), [anon_sym_co_return] = ACTIONS(1888), [anon_sym_co_yield] = ACTIONS(1888), [anon_sym_try] = ACTIONS(1888), [anon_sym_co_await] = ACTIONS(1888), [anon_sym_new] = ACTIONS(1888), [sym_this] = ACTIONS(1888), [sym_nullptr] = ACTIONS(1888), [sym_raw_string_literal] = ACTIONS(1890), }, [300] = { [sym_identifier] = ACTIONS(1894), [aux_sym_preproc_include_token1] = ACTIONS(1894), [aux_sym_preproc_def_token1] = ACTIONS(1894), [aux_sym_preproc_if_token1] = ACTIONS(1894), [aux_sym_preproc_if_token2] = ACTIONS(1894), [aux_sym_preproc_ifdef_token1] = ACTIONS(1894), [aux_sym_preproc_ifdef_token2] = ACTIONS(1894), [aux_sym_preproc_else_token1] = ACTIONS(1894), [aux_sym_preproc_elif_token1] = ACTIONS(1894), [sym_preproc_directive] = ACTIONS(1894), [anon_sym_LPAREN2] = ACTIONS(1896), [anon_sym_BANG] = ACTIONS(1896), [anon_sym_TILDE] = ACTIONS(1896), [anon_sym_DASH] = ACTIONS(1894), [anon_sym_PLUS] = ACTIONS(1894), [anon_sym_STAR] = ACTIONS(1896), [anon_sym_AMP_AMP] = ACTIONS(1896), [anon_sym_AMP] = ACTIONS(1894), [anon_sym_SEMI] = ACTIONS(1896), [anon_sym_typedef] = ACTIONS(1894), [anon_sym_extern] = ACTIONS(1894), [anon_sym___attribute__] = ACTIONS(1894), [anon_sym_COLON_COLON] = ACTIONS(1896), [anon_sym_LBRACK_LBRACK] = ACTIONS(1896), [anon_sym___declspec] = ACTIONS(1894), [anon_sym___based] = ACTIONS(1894), [anon_sym___cdecl] = ACTIONS(1894), [anon_sym___clrcall] = ACTIONS(1894), [anon_sym___stdcall] = ACTIONS(1894), [anon_sym___fastcall] = ACTIONS(1894), [anon_sym___thiscall] = ACTIONS(1894), [anon_sym___vectorcall] = ACTIONS(1894), [anon_sym_LBRACE] = ACTIONS(1896), [anon_sym_LBRACK] = ACTIONS(1894), [anon_sym_static] = ACTIONS(1894), [anon_sym_register] = ACTIONS(1894), [anon_sym_inline] = ACTIONS(1894), [anon_sym_thread_local] = ACTIONS(1894), [anon_sym_const] = ACTIONS(1894), [anon_sym_volatile] = ACTIONS(1894), [anon_sym_restrict] = ACTIONS(1894), [anon_sym__Atomic] = ACTIONS(1894), [anon_sym_mutable] = ACTIONS(1894), [anon_sym_constexpr] = ACTIONS(1894), [anon_sym_signed] = ACTIONS(1894), [anon_sym_unsigned] = ACTIONS(1894), [anon_sym_long] = ACTIONS(1894), [anon_sym_short] = ACTIONS(1894), [sym_primitive_type] = ACTIONS(1894), [anon_sym_enum] = ACTIONS(1894), [anon_sym_class] = ACTIONS(1894), [anon_sym_struct] = ACTIONS(1894), [anon_sym_union] = ACTIONS(1894), [anon_sym_if] = ACTIONS(1894), [anon_sym_else] = ACTIONS(1894), [anon_sym_switch] = ACTIONS(1894), [anon_sym_case] = ACTIONS(1894), [anon_sym_default] = ACTIONS(1894), [anon_sym_while] = ACTIONS(1894), [anon_sym_do] = ACTIONS(1894), [anon_sym_for] = ACTIONS(1894), [anon_sym_return] = ACTIONS(1894), [anon_sym_break] = ACTIONS(1894), [anon_sym_continue] = ACTIONS(1894), [anon_sym_goto] = ACTIONS(1894), [anon_sym_DASH_DASH] = ACTIONS(1896), [anon_sym_PLUS_PLUS] = ACTIONS(1896), [anon_sym_sizeof] = ACTIONS(1894), [sym_number_literal] = ACTIONS(1896), [anon_sym_L_SQUOTE] = ACTIONS(1896), [anon_sym_u_SQUOTE] = ACTIONS(1896), [anon_sym_U_SQUOTE] = ACTIONS(1896), [anon_sym_u8_SQUOTE] = ACTIONS(1896), [anon_sym_SQUOTE] = ACTIONS(1896), [anon_sym_L_DQUOTE] = ACTIONS(1896), [anon_sym_u_DQUOTE] = ACTIONS(1896), [anon_sym_U_DQUOTE] = ACTIONS(1896), [anon_sym_u8_DQUOTE] = ACTIONS(1896), [anon_sym_DQUOTE] = ACTIONS(1896), [sym_true] = ACTIONS(1894), [sym_false] = ACTIONS(1894), [sym_null] = ACTIONS(1894), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1894), [anon_sym_virtual] = ACTIONS(1894), [anon_sym_explicit] = ACTIONS(1894), [sym_auto] = ACTIONS(1894), [anon_sym_typename] = ACTIONS(1894), [anon_sym_template] = ACTIONS(1894), [anon_sym_operator] = ACTIONS(1894), [anon_sym_delete] = ACTIONS(1894), [anon_sym_throw] = ACTIONS(1894), [anon_sym_namespace] = ACTIONS(1894), [anon_sym_using] = ACTIONS(1894), [anon_sym_static_assert] = ACTIONS(1894), [anon_sym_co_return] = ACTIONS(1894), [anon_sym_co_yield] = ACTIONS(1894), [anon_sym_try] = ACTIONS(1894), [anon_sym_co_await] = ACTIONS(1894), [anon_sym_new] = ACTIONS(1894), [sym_this] = ACTIONS(1894), [sym_nullptr] = ACTIONS(1894), [sym_raw_string_literal] = ACTIONS(1896), }, [301] = { [sym_compound_statement] = STATE(576), [sym_labeled_statement] = STATE(576), [sym_expression_statement] = STATE(576), [sym_if_statement] = STATE(576), [sym_switch_statement] = STATE(576), [sym_case_statement] = STATE(576), [sym_while_statement] = STATE(576), [sym_do_statement] = STATE(576), [sym_for_statement] = STATE(576), [sym_return_statement] = STATE(576), [sym_break_statement] = STATE(576), [sym_continue_statement] = STATE(576), [sym_goto_statement] = STATE(576), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(576), [sym_co_return_statement] = STATE(576), [sym_co_yield_statement] = STATE(576), [sym_throw_statement] = STATE(576), [sym_try_statement] = STATE(576), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [302] = { [sym_identifier] = ACTIONS(1898), [aux_sym_preproc_include_token1] = ACTIONS(1898), [aux_sym_preproc_def_token1] = ACTIONS(1898), [aux_sym_preproc_if_token1] = ACTIONS(1898), [aux_sym_preproc_if_token2] = ACTIONS(1898), [aux_sym_preproc_ifdef_token1] = ACTIONS(1898), [aux_sym_preproc_ifdef_token2] = ACTIONS(1898), [aux_sym_preproc_else_token1] = ACTIONS(1898), [aux_sym_preproc_elif_token1] = ACTIONS(1898), [sym_preproc_directive] = ACTIONS(1898), [anon_sym_LPAREN2] = ACTIONS(1900), [anon_sym_BANG] = ACTIONS(1900), [anon_sym_TILDE] = ACTIONS(1900), [anon_sym_DASH] = ACTIONS(1898), [anon_sym_PLUS] = ACTIONS(1898), [anon_sym_STAR] = ACTIONS(1900), [anon_sym_AMP_AMP] = ACTIONS(1900), [anon_sym_AMP] = ACTIONS(1898), [anon_sym_SEMI] = ACTIONS(1900), [anon_sym_typedef] = ACTIONS(1898), [anon_sym_extern] = ACTIONS(1898), [anon_sym___attribute__] = ACTIONS(1898), [anon_sym_COLON_COLON] = ACTIONS(1900), [anon_sym_LBRACK_LBRACK] = ACTIONS(1900), [anon_sym___declspec] = ACTIONS(1898), [anon_sym___based] = ACTIONS(1898), [anon_sym___cdecl] = ACTIONS(1898), [anon_sym___clrcall] = ACTIONS(1898), [anon_sym___stdcall] = ACTIONS(1898), [anon_sym___fastcall] = ACTIONS(1898), [anon_sym___thiscall] = ACTIONS(1898), [anon_sym___vectorcall] = ACTIONS(1898), [anon_sym_LBRACE] = ACTIONS(1900), [anon_sym_LBRACK] = ACTIONS(1898), [anon_sym_static] = ACTIONS(1898), [anon_sym_register] = ACTIONS(1898), [anon_sym_inline] = ACTIONS(1898), [anon_sym_thread_local] = ACTIONS(1898), [anon_sym_const] = ACTIONS(1898), [anon_sym_volatile] = ACTIONS(1898), [anon_sym_restrict] = ACTIONS(1898), [anon_sym__Atomic] = ACTIONS(1898), [anon_sym_mutable] = ACTIONS(1898), [anon_sym_constexpr] = ACTIONS(1898), [anon_sym_signed] = ACTIONS(1898), [anon_sym_unsigned] = ACTIONS(1898), [anon_sym_long] = ACTIONS(1898), [anon_sym_short] = ACTIONS(1898), [sym_primitive_type] = ACTIONS(1898), [anon_sym_enum] = ACTIONS(1898), [anon_sym_class] = ACTIONS(1898), [anon_sym_struct] = ACTIONS(1898), [anon_sym_union] = ACTIONS(1898), [anon_sym_if] = ACTIONS(1898), [anon_sym_else] = ACTIONS(1898), [anon_sym_switch] = ACTIONS(1898), [anon_sym_case] = ACTIONS(1898), [anon_sym_default] = ACTIONS(1898), [anon_sym_while] = ACTIONS(1898), [anon_sym_do] = ACTIONS(1898), [anon_sym_for] = ACTIONS(1898), [anon_sym_return] = ACTIONS(1898), [anon_sym_break] = ACTIONS(1898), [anon_sym_continue] = ACTIONS(1898), [anon_sym_goto] = ACTIONS(1898), [anon_sym_DASH_DASH] = ACTIONS(1900), [anon_sym_PLUS_PLUS] = ACTIONS(1900), [anon_sym_sizeof] = ACTIONS(1898), [sym_number_literal] = ACTIONS(1900), [anon_sym_L_SQUOTE] = ACTIONS(1900), [anon_sym_u_SQUOTE] = ACTIONS(1900), [anon_sym_U_SQUOTE] = ACTIONS(1900), [anon_sym_u8_SQUOTE] = ACTIONS(1900), [anon_sym_SQUOTE] = ACTIONS(1900), [anon_sym_L_DQUOTE] = ACTIONS(1900), [anon_sym_u_DQUOTE] = ACTIONS(1900), [anon_sym_U_DQUOTE] = ACTIONS(1900), [anon_sym_u8_DQUOTE] = ACTIONS(1900), [anon_sym_DQUOTE] = ACTIONS(1900), [sym_true] = ACTIONS(1898), [sym_false] = ACTIONS(1898), [sym_null] = ACTIONS(1898), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1898), [anon_sym_virtual] = ACTIONS(1898), [anon_sym_explicit] = ACTIONS(1898), [sym_auto] = ACTIONS(1898), [anon_sym_typename] = ACTIONS(1898), [anon_sym_template] = ACTIONS(1898), [anon_sym_operator] = ACTIONS(1898), [anon_sym_delete] = ACTIONS(1898), [anon_sym_throw] = ACTIONS(1898), [anon_sym_namespace] = ACTIONS(1898), [anon_sym_using] = ACTIONS(1898), [anon_sym_static_assert] = ACTIONS(1898), [anon_sym_co_return] = ACTIONS(1898), [anon_sym_co_yield] = ACTIONS(1898), [anon_sym_try] = ACTIONS(1898), [anon_sym_co_await] = ACTIONS(1898), [anon_sym_new] = ACTIONS(1898), [sym_this] = ACTIONS(1898), [sym_nullptr] = ACTIONS(1898), [sym_raw_string_literal] = ACTIONS(1900), }, [303] = { [sym_identifier] = ACTIONS(1902), [aux_sym_preproc_include_token1] = ACTIONS(1902), [aux_sym_preproc_def_token1] = ACTIONS(1902), [aux_sym_preproc_if_token1] = ACTIONS(1902), [aux_sym_preproc_if_token2] = ACTIONS(1902), [aux_sym_preproc_ifdef_token1] = ACTIONS(1902), [aux_sym_preproc_ifdef_token2] = ACTIONS(1902), [aux_sym_preproc_else_token1] = ACTIONS(1902), [aux_sym_preproc_elif_token1] = ACTIONS(1902), [sym_preproc_directive] = ACTIONS(1902), [anon_sym_LPAREN2] = ACTIONS(1904), [anon_sym_BANG] = ACTIONS(1904), [anon_sym_TILDE] = ACTIONS(1904), [anon_sym_DASH] = ACTIONS(1902), [anon_sym_PLUS] = ACTIONS(1902), [anon_sym_STAR] = ACTIONS(1904), [anon_sym_AMP_AMP] = ACTIONS(1904), [anon_sym_AMP] = ACTIONS(1902), [anon_sym_SEMI] = ACTIONS(1904), [anon_sym_typedef] = ACTIONS(1902), [anon_sym_extern] = ACTIONS(1902), [anon_sym___attribute__] = ACTIONS(1902), [anon_sym_COLON_COLON] = ACTIONS(1904), [anon_sym_LBRACK_LBRACK] = ACTIONS(1904), [anon_sym___declspec] = ACTIONS(1902), [anon_sym___based] = ACTIONS(1902), [anon_sym___cdecl] = ACTIONS(1902), [anon_sym___clrcall] = ACTIONS(1902), [anon_sym___stdcall] = ACTIONS(1902), [anon_sym___fastcall] = ACTIONS(1902), [anon_sym___thiscall] = ACTIONS(1902), [anon_sym___vectorcall] = ACTIONS(1902), [anon_sym_LBRACE] = ACTIONS(1904), [anon_sym_LBRACK] = ACTIONS(1902), [anon_sym_static] = ACTIONS(1902), [anon_sym_register] = ACTIONS(1902), [anon_sym_inline] = ACTIONS(1902), [anon_sym_thread_local] = ACTIONS(1902), [anon_sym_const] = ACTIONS(1902), [anon_sym_volatile] = ACTIONS(1902), [anon_sym_restrict] = ACTIONS(1902), [anon_sym__Atomic] = ACTIONS(1902), [anon_sym_mutable] = ACTIONS(1902), [anon_sym_constexpr] = ACTIONS(1902), [anon_sym_signed] = ACTIONS(1902), [anon_sym_unsigned] = ACTIONS(1902), [anon_sym_long] = ACTIONS(1902), [anon_sym_short] = ACTIONS(1902), [sym_primitive_type] = ACTIONS(1902), [anon_sym_enum] = ACTIONS(1902), [anon_sym_class] = ACTIONS(1902), [anon_sym_struct] = ACTIONS(1902), [anon_sym_union] = ACTIONS(1902), [anon_sym_if] = ACTIONS(1902), [anon_sym_else] = ACTIONS(1902), [anon_sym_switch] = ACTIONS(1902), [anon_sym_case] = ACTIONS(1902), [anon_sym_default] = ACTIONS(1902), [anon_sym_while] = ACTIONS(1902), [anon_sym_do] = ACTIONS(1902), [anon_sym_for] = ACTIONS(1902), [anon_sym_return] = ACTIONS(1902), [anon_sym_break] = ACTIONS(1902), [anon_sym_continue] = ACTIONS(1902), [anon_sym_goto] = ACTIONS(1902), [anon_sym_DASH_DASH] = ACTIONS(1904), [anon_sym_PLUS_PLUS] = ACTIONS(1904), [anon_sym_sizeof] = ACTIONS(1902), [sym_number_literal] = ACTIONS(1904), [anon_sym_L_SQUOTE] = ACTIONS(1904), [anon_sym_u_SQUOTE] = ACTIONS(1904), [anon_sym_U_SQUOTE] = ACTIONS(1904), [anon_sym_u8_SQUOTE] = ACTIONS(1904), [anon_sym_SQUOTE] = ACTIONS(1904), [anon_sym_L_DQUOTE] = ACTIONS(1904), [anon_sym_u_DQUOTE] = ACTIONS(1904), [anon_sym_U_DQUOTE] = ACTIONS(1904), [anon_sym_u8_DQUOTE] = ACTIONS(1904), [anon_sym_DQUOTE] = ACTIONS(1904), [sym_true] = ACTIONS(1902), [sym_false] = ACTIONS(1902), [sym_null] = ACTIONS(1902), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1902), [anon_sym_virtual] = ACTIONS(1902), [anon_sym_explicit] = ACTIONS(1902), [sym_auto] = ACTIONS(1902), [anon_sym_typename] = ACTIONS(1902), [anon_sym_template] = ACTIONS(1902), [anon_sym_operator] = ACTIONS(1902), [anon_sym_delete] = ACTIONS(1902), [anon_sym_throw] = ACTIONS(1902), [anon_sym_namespace] = ACTIONS(1902), [anon_sym_using] = ACTIONS(1902), [anon_sym_static_assert] = ACTIONS(1902), [anon_sym_co_return] = ACTIONS(1902), [anon_sym_co_yield] = ACTIONS(1902), [anon_sym_try] = ACTIONS(1902), [anon_sym_co_await] = ACTIONS(1902), [anon_sym_new] = ACTIONS(1902), [sym_this] = ACTIONS(1902), [sym_nullptr] = ACTIONS(1902), [sym_raw_string_literal] = ACTIONS(1904), }, [304] = { [sym_identifier] = ACTIONS(1906), [aux_sym_preproc_include_token1] = ACTIONS(1906), [aux_sym_preproc_def_token1] = ACTIONS(1906), [aux_sym_preproc_if_token1] = ACTIONS(1906), [aux_sym_preproc_if_token2] = ACTIONS(1906), [aux_sym_preproc_ifdef_token1] = ACTIONS(1906), [aux_sym_preproc_ifdef_token2] = ACTIONS(1906), [aux_sym_preproc_else_token1] = ACTIONS(1906), [aux_sym_preproc_elif_token1] = ACTIONS(1906), [sym_preproc_directive] = ACTIONS(1906), [anon_sym_LPAREN2] = ACTIONS(1908), [anon_sym_BANG] = ACTIONS(1908), [anon_sym_TILDE] = ACTIONS(1908), [anon_sym_DASH] = ACTIONS(1906), [anon_sym_PLUS] = ACTIONS(1906), [anon_sym_STAR] = ACTIONS(1908), [anon_sym_AMP_AMP] = ACTIONS(1908), [anon_sym_AMP] = ACTIONS(1906), [anon_sym_SEMI] = ACTIONS(1908), [anon_sym_typedef] = ACTIONS(1906), [anon_sym_extern] = ACTIONS(1906), [anon_sym___attribute__] = ACTIONS(1906), [anon_sym_COLON_COLON] = ACTIONS(1908), [anon_sym_LBRACK_LBRACK] = ACTIONS(1908), [anon_sym___declspec] = ACTIONS(1906), [anon_sym___based] = ACTIONS(1906), [anon_sym___cdecl] = ACTIONS(1906), [anon_sym___clrcall] = ACTIONS(1906), [anon_sym___stdcall] = ACTIONS(1906), [anon_sym___fastcall] = ACTIONS(1906), [anon_sym___thiscall] = ACTIONS(1906), [anon_sym___vectorcall] = ACTIONS(1906), [anon_sym_LBRACE] = ACTIONS(1908), [anon_sym_LBRACK] = ACTIONS(1906), [anon_sym_static] = ACTIONS(1906), [anon_sym_register] = ACTIONS(1906), [anon_sym_inline] = ACTIONS(1906), [anon_sym_thread_local] = ACTIONS(1906), [anon_sym_const] = ACTIONS(1906), [anon_sym_volatile] = ACTIONS(1906), [anon_sym_restrict] = ACTIONS(1906), [anon_sym__Atomic] = ACTIONS(1906), [anon_sym_mutable] = ACTIONS(1906), [anon_sym_constexpr] = ACTIONS(1906), [anon_sym_signed] = ACTIONS(1906), [anon_sym_unsigned] = ACTIONS(1906), [anon_sym_long] = ACTIONS(1906), [anon_sym_short] = ACTIONS(1906), [sym_primitive_type] = ACTIONS(1906), [anon_sym_enum] = ACTIONS(1906), [anon_sym_class] = ACTIONS(1906), [anon_sym_struct] = ACTIONS(1906), [anon_sym_union] = ACTIONS(1906), [anon_sym_if] = ACTIONS(1906), [anon_sym_else] = ACTIONS(1906), [anon_sym_switch] = ACTIONS(1906), [anon_sym_case] = ACTIONS(1906), [anon_sym_default] = ACTIONS(1906), [anon_sym_while] = ACTIONS(1906), [anon_sym_do] = ACTIONS(1906), [anon_sym_for] = ACTIONS(1906), [anon_sym_return] = ACTIONS(1906), [anon_sym_break] = ACTIONS(1906), [anon_sym_continue] = ACTIONS(1906), [anon_sym_goto] = ACTIONS(1906), [anon_sym_DASH_DASH] = ACTIONS(1908), [anon_sym_PLUS_PLUS] = ACTIONS(1908), [anon_sym_sizeof] = ACTIONS(1906), [sym_number_literal] = ACTIONS(1908), [anon_sym_L_SQUOTE] = ACTIONS(1908), [anon_sym_u_SQUOTE] = ACTIONS(1908), [anon_sym_U_SQUOTE] = ACTIONS(1908), [anon_sym_u8_SQUOTE] = ACTIONS(1908), [anon_sym_SQUOTE] = ACTIONS(1908), [anon_sym_L_DQUOTE] = ACTIONS(1908), [anon_sym_u_DQUOTE] = ACTIONS(1908), [anon_sym_U_DQUOTE] = ACTIONS(1908), [anon_sym_u8_DQUOTE] = ACTIONS(1908), [anon_sym_DQUOTE] = ACTIONS(1908), [sym_true] = ACTIONS(1906), [sym_false] = ACTIONS(1906), [sym_null] = ACTIONS(1906), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1906), [anon_sym_virtual] = ACTIONS(1906), [anon_sym_explicit] = ACTIONS(1906), [sym_auto] = ACTIONS(1906), [anon_sym_typename] = ACTIONS(1906), [anon_sym_template] = ACTIONS(1906), [anon_sym_operator] = ACTIONS(1906), [anon_sym_delete] = ACTIONS(1906), [anon_sym_throw] = ACTIONS(1906), [anon_sym_namespace] = ACTIONS(1906), [anon_sym_using] = ACTIONS(1906), [anon_sym_static_assert] = ACTIONS(1906), [anon_sym_co_return] = ACTIONS(1906), [anon_sym_co_yield] = ACTIONS(1906), [anon_sym_try] = ACTIONS(1906), [anon_sym_co_await] = ACTIONS(1906), [anon_sym_new] = ACTIONS(1906), [sym_this] = ACTIONS(1906), [sym_nullptr] = ACTIONS(1906), [sym_raw_string_literal] = ACTIONS(1908), }, [305] = { [sym_identifier] = ACTIONS(1910), [aux_sym_preproc_include_token1] = ACTIONS(1910), [aux_sym_preproc_def_token1] = ACTIONS(1910), [aux_sym_preproc_if_token1] = ACTIONS(1910), [aux_sym_preproc_if_token2] = ACTIONS(1910), [aux_sym_preproc_ifdef_token1] = ACTIONS(1910), [aux_sym_preproc_ifdef_token2] = ACTIONS(1910), [aux_sym_preproc_else_token1] = ACTIONS(1910), [aux_sym_preproc_elif_token1] = ACTIONS(1910), [sym_preproc_directive] = ACTIONS(1910), [anon_sym_LPAREN2] = ACTIONS(1912), [anon_sym_BANG] = ACTIONS(1912), [anon_sym_TILDE] = ACTIONS(1912), [anon_sym_DASH] = ACTIONS(1910), [anon_sym_PLUS] = ACTIONS(1910), [anon_sym_STAR] = ACTIONS(1912), [anon_sym_AMP_AMP] = ACTIONS(1912), [anon_sym_AMP] = ACTIONS(1910), [anon_sym_SEMI] = ACTIONS(1912), [anon_sym_typedef] = ACTIONS(1910), [anon_sym_extern] = ACTIONS(1910), [anon_sym___attribute__] = ACTIONS(1910), [anon_sym_COLON_COLON] = ACTIONS(1912), [anon_sym_LBRACK_LBRACK] = ACTIONS(1912), [anon_sym___declspec] = ACTIONS(1910), [anon_sym___based] = ACTIONS(1910), [anon_sym___cdecl] = ACTIONS(1910), [anon_sym___clrcall] = ACTIONS(1910), [anon_sym___stdcall] = ACTIONS(1910), [anon_sym___fastcall] = ACTIONS(1910), [anon_sym___thiscall] = ACTIONS(1910), [anon_sym___vectorcall] = ACTIONS(1910), [anon_sym_LBRACE] = ACTIONS(1912), [anon_sym_LBRACK] = ACTIONS(1910), [anon_sym_static] = ACTIONS(1910), [anon_sym_register] = ACTIONS(1910), [anon_sym_inline] = ACTIONS(1910), [anon_sym_thread_local] = ACTIONS(1910), [anon_sym_const] = ACTIONS(1910), [anon_sym_volatile] = ACTIONS(1910), [anon_sym_restrict] = ACTIONS(1910), [anon_sym__Atomic] = ACTIONS(1910), [anon_sym_mutable] = ACTIONS(1910), [anon_sym_constexpr] = ACTIONS(1910), [anon_sym_signed] = ACTIONS(1910), [anon_sym_unsigned] = ACTIONS(1910), [anon_sym_long] = ACTIONS(1910), [anon_sym_short] = ACTIONS(1910), [sym_primitive_type] = ACTIONS(1910), [anon_sym_enum] = ACTIONS(1910), [anon_sym_class] = ACTIONS(1910), [anon_sym_struct] = ACTIONS(1910), [anon_sym_union] = ACTIONS(1910), [anon_sym_if] = ACTIONS(1910), [anon_sym_else] = ACTIONS(1910), [anon_sym_switch] = ACTIONS(1910), [anon_sym_case] = ACTIONS(1910), [anon_sym_default] = ACTIONS(1910), [anon_sym_while] = ACTIONS(1910), [anon_sym_do] = ACTIONS(1910), [anon_sym_for] = ACTIONS(1910), [anon_sym_return] = ACTIONS(1910), [anon_sym_break] = ACTIONS(1910), [anon_sym_continue] = ACTIONS(1910), [anon_sym_goto] = ACTIONS(1910), [anon_sym_DASH_DASH] = ACTIONS(1912), [anon_sym_PLUS_PLUS] = ACTIONS(1912), [anon_sym_sizeof] = ACTIONS(1910), [sym_number_literal] = ACTIONS(1912), [anon_sym_L_SQUOTE] = ACTIONS(1912), [anon_sym_u_SQUOTE] = ACTIONS(1912), [anon_sym_U_SQUOTE] = ACTIONS(1912), [anon_sym_u8_SQUOTE] = ACTIONS(1912), [anon_sym_SQUOTE] = ACTIONS(1912), [anon_sym_L_DQUOTE] = ACTIONS(1912), [anon_sym_u_DQUOTE] = ACTIONS(1912), [anon_sym_U_DQUOTE] = ACTIONS(1912), [anon_sym_u8_DQUOTE] = ACTIONS(1912), [anon_sym_DQUOTE] = ACTIONS(1912), [sym_true] = ACTIONS(1910), [sym_false] = ACTIONS(1910), [sym_null] = ACTIONS(1910), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1910), [anon_sym_virtual] = ACTIONS(1910), [anon_sym_explicit] = ACTIONS(1910), [sym_auto] = ACTIONS(1910), [anon_sym_typename] = ACTIONS(1910), [anon_sym_template] = ACTIONS(1910), [anon_sym_operator] = ACTIONS(1910), [anon_sym_delete] = ACTIONS(1910), [anon_sym_throw] = ACTIONS(1910), [anon_sym_namespace] = ACTIONS(1910), [anon_sym_using] = ACTIONS(1910), [anon_sym_static_assert] = ACTIONS(1910), [anon_sym_co_return] = ACTIONS(1910), [anon_sym_co_yield] = ACTIONS(1910), [anon_sym_try] = ACTIONS(1910), [anon_sym_co_await] = ACTIONS(1910), [anon_sym_new] = ACTIONS(1910), [sym_this] = ACTIONS(1910), [sym_nullptr] = ACTIONS(1910), [sym_raw_string_literal] = ACTIONS(1912), }, [306] = { [sym_identifier] = ACTIONS(1914), [aux_sym_preproc_include_token1] = ACTIONS(1914), [aux_sym_preproc_def_token1] = ACTIONS(1914), [aux_sym_preproc_if_token1] = ACTIONS(1914), [aux_sym_preproc_if_token2] = ACTIONS(1914), [aux_sym_preproc_ifdef_token1] = ACTIONS(1914), [aux_sym_preproc_ifdef_token2] = ACTIONS(1914), [aux_sym_preproc_else_token1] = ACTIONS(1914), [aux_sym_preproc_elif_token1] = ACTIONS(1914), [sym_preproc_directive] = ACTIONS(1914), [anon_sym_LPAREN2] = ACTIONS(1916), [anon_sym_BANG] = ACTIONS(1916), [anon_sym_TILDE] = ACTIONS(1916), [anon_sym_DASH] = ACTIONS(1914), [anon_sym_PLUS] = ACTIONS(1914), [anon_sym_STAR] = ACTIONS(1916), [anon_sym_AMP_AMP] = ACTIONS(1916), [anon_sym_AMP] = ACTIONS(1914), [anon_sym_SEMI] = ACTIONS(1916), [anon_sym_typedef] = ACTIONS(1914), [anon_sym_extern] = ACTIONS(1914), [anon_sym___attribute__] = ACTIONS(1914), [anon_sym_COLON_COLON] = ACTIONS(1916), [anon_sym_LBRACK_LBRACK] = ACTIONS(1916), [anon_sym___declspec] = ACTIONS(1914), [anon_sym___based] = ACTIONS(1914), [anon_sym___cdecl] = ACTIONS(1914), [anon_sym___clrcall] = ACTIONS(1914), [anon_sym___stdcall] = ACTIONS(1914), [anon_sym___fastcall] = ACTIONS(1914), [anon_sym___thiscall] = ACTIONS(1914), [anon_sym___vectorcall] = ACTIONS(1914), [anon_sym_LBRACE] = ACTIONS(1916), [anon_sym_LBRACK] = ACTIONS(1914), [anon_sym_static] = ACTIONS(1914), [anon_sym_register] = ACTIONS(1914), [anon_sym_inline] = ACTIONS(1914), [anon_sym_thread_local] = ACTIONS(1914), [anon_sym_const] = ACTIONS(1914), [anon_sym_volatile] = ACTIONS(1914), [anon_sym_restrict] = ACTIONS(1914), [anon_sym__Atomic] = ACTIONS(1914), [anon_sym_mutable] = ACTIONS(1914), [anon_sym_constexpr] = ACTIONS(1914), [anon_sym_signed] = ACTIONS(1914), [anon_sym_unsigned] = ACTIONS(1914), [anon_sym_long] = ACTIONS(1914), [anon_sym_short] = ACTIONS(1914), [sym_primitive_type] = ACTIONS(1914), [anon_sym_enum] = ACTIONS(1914), [anon_sym_class] = ACTIONS(1914), [anon_sym_struct] = ACTIONS(1914), [anon_sym_union] = ACTIONS(1914), [anon_sym_if] = ACTIONS(1914), [anon_sym_else] = ACTIONS(1914), [anon_sym_switch] = ACTIONS(1914), [anon_sym_case] = ACTIONS(1914), [anon_sym_default] = ACTIONS(1914), [anon_sym_while] = ACTIONS(1914), [anon_sym_do] = ACTIONS(1914), [anon_sym_for] = ACTIONS(1914), [anon_sym_return] = ACTIONS(1914), [anon_sym_break] = ACTIONS(1914), [anon_sym_continue] = ACTIONS(1914), [anon_sym_goto] = ACTIONS(1914), [anon_sym_DASH_DASH] = ACTIONS(1916), [anon_sym_PLUS_PLUS] = ACTIONS(1916), [anon_sym_sizeof] = ACTIONS(1914), [sym_number_literal] = ACTIONS(1916), [anon_sym_L_SQUOTE] = ACTIONS(1916), [anon_sym_u_SQUOTE] = ACTIONS(1916), [anon_sym_U_SQUOTE] = ACTIONS(1916), [anon_sym_u8_SQUOTE] = ACTIONS(1916), [anon_sym_SQUOTE] = ACTIONS(1916), [anon_sym_L_DQUOTE] = ACTIONS(1916), [anon_sym_u_DQUOTE] = ACTIONS(1916), [anon_sym_U_DQUOTE] = ACTIONS(1916), [anon_sym_u8_DQUOTE] = ACTIONS(1916), [anon_sym_DQUOTE] = ACTIONS(1916), [sym_true] = ACTIONS(1914), [sym_false] = ACTIONS(1914), [sym_null] = ACTIONS(1914), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1914), [anon_sym_virtual] = ACTIONS(1914), [anon_sym_explicit] = ACTIONS(1914), [sym_auto] = ACTIONS(1914), [anon_sym_typename] = ACTIONS(1914), [anon_sym_template] = ACTIONS(1914), [anon_sym_operator] = ACTIONS(1914), [anon_sym_delete] = ACTIONS(1914), [anon_sym_throw] = ACTIONS(1914), [anon_sym_namespace] = ACTIONS(1914), [anon_sym_using] = ACTIONS(1914), [anon_sym_static_assert] = ACTIONS(1914), [anon_sym_co_return] = ACTIONS(1914), [anon_sym_co_yield] = ACTIONS(1914), [anon_sym_try] = ACTIONS(1914), [anon_sym_co_await] = ACTIONS(1914), [anon_sym_new] = ACTIONS(1914), [sym_this] = ACTIONS(1914), [sym_nullptr] = ACTIONS(1914), [sym_raw_string_literal] = ACTIONS(1916), }, [307] = { [sym_identifier] = ACTIONS(1918), [aux_sym_preproc_include_token1] = ACTIONS(1918), [aux_sym_preproc_def_token1] = ACTIONS(1918), [aux_sym_preproc_if_token1] = ACTIONS(1918), [aux_sym_preproc_if_token2] = ACTIONS(1918), [aux_sym_preproc_ifdef_token1] = ACTIONS(1918), [aux_sym_preproc_ifdef_token2] = ACTIONS(1918), [aux_sym_preproc_else_token1] = ACTIONS(1918), [aux_sym_preproc_elif_token1] = ACTIONS(1918), [sym_preproc_directive] = ACTIONS(1918), [anon_sym_LPAREN2] = ACTIONS(1920), [anon_sym_BANG] = ACTIONS(1920), [anon_sym_TILDE] = ACTIONS(1920), [anon_sym_DASH] = ACTIONS(1918), [anon_sym_PLUS] = ACTIONS(1918), [anon_sym_STAR] = ACTIONS(1920), [anon_sym_AMP_AMP] = ACTIONS(1920), [anon_sym_AMP] = ACTIONS(1918), [anon_sym_SEMI] = ACTIONS(1920), [anon_sym_typedef] = ACTIONS(1918), [anon_sym_extern] = ACTIONS(1918), [anon_sym___attribute__] = ACTIONS(1918), [anon_sym_COLON_COLON] = ACTIONS(1920), [anon_sym_LBRACK_LBRACK] = ACTIONS(1920), [anon_sym___declspec] = ACTIONS(1918), [anon_sym___based] = ACTIONS(1918), [anon_sym___cdecl] = ACTIONS(1918), [anon_sym___clrcall] = ACTIONS(1918), [anon_sym___stdcall] = ACTIONS(1918), [anon_sym___fastcall] = ACTIONS(1918), [anon_sym___thiscall] = ACTIONS(1918), [anon_sym___vectorcall] = ACTIONS(1918), [anon_sym_LBRACE] = ACTIONS(1920), [anon_sym_LBRACK] = ACTIONS(1918), [anon_sym_static] = ACTIONS(1918), [anon_sym_register] = ACTIONS(1918), [anon_sym_inline] = ACTIONS(1918), [anon_sym_thread_local] = ACTIONS(1918), [anon_sym_const] = ACTIONS(1918), [anon_sym_volatile] = ACTIONS(1918), [anon_sym_restrict] = ACTIONS(1918), [anon_sym__Atomic] = ACTIONS(1918), [anon_sym_mutable] = ACTIONS(1918), [anon_sym_constexpr] = ACTIONS(1918), [anon_sym_signed] = ACTIONS(1918), [anon_sym_unsigned] = ACTIONS(1918), [anon_sym_long] = ACTIONS(1918), [anon_sym_short] = ACTIONS(1918), [sym_primitive_type] = ACTIONS(1918), [anon_sym_enum] = ACTIONS(1918), [anon_sym_class] = ACTIONS(1918), [anon_sym_struct] = ACTIONS(1918), [anon_sym_union] = ACTIONS(1918), [anon_sym_if] = ACTIONS(1918), [anon_sym_else] = ACTIONS(1918), [anon_sym_switch] = ACTIONS(1918), [anon_sym_case] = ACTIONS(1918), [anon_sym_default] = ACTIONS(1918), [anon_sym_while] = ACTIONS(1918), [anon_sym_do] = ACTIONS(1918), [anon_sym_for] = ACTIONS(1918), [anon_sym_return] = ACTIONS(1918), [anon_sym_break] = ACTIONS(1918), [anon_sym_continue] = ACTIONS(1918), [anon_sym_goto] = ACTIONS(1918), [anon_sym_DASH_DASH] = ACTIONS(1920), [anon_sym_PLUS_PLUS] = ACTIONS(1920), [anon_sym_sizeof] = ACTIONS(1918), [sym_number_literal] = ACTIONS(1920), [anon_sym_L_SQUOTE] = ACTIONS(1920), [anon_sym_u_SQUOTE] = ACTIONS(1920), [anon_sym_U_SQUOTE] = ACTIONS(1920), [anon_sym_u8_SQUOTE] = ACTIONS(1920), [anon_sym_SQUOTE] = ACTIONS(1920), [anon_sym_L_DQUOTE] = ACTIONS(1920), [anon_sym_u_DQUOTE] = ACTIONS(1920), [anon_sym_U_DQUOTE] = ACTIONS(1920), [anon_sym_u8_DQUOTE] = ACTIONS(1920), [anon_sym_DQUOTE] = ACTIONS(1920), [sym_true] = ACTIONS(1918), [sym_false] = ACTIONS(1918), [sym_null] = ACTIONS(1918), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1918), [anon_sym_virtual] = ACTIONS(1918), [anon_sym_explicit] = ACTIONS(1918), [sym_auto] = ACTIONS(1918), [anon_sym_typename] = ACTIONS(1918), [anon_sym_template] = ACTIONS(1918), [anon_sym_operator] = ACTIONS(1918), [anon_sym_delete] = ACTIONS(1918), [anon_sym_throw] = ACTIONS(1918), [anon_sym_namespace] = ACTIONS(1918), [anon_sym_using] = ACTIONS(1918), [anon_sym_static_assert] = ACTIONS(1918), [anon_sym_co_return] = ACTIONS(1918), [anon_sym_co_yield] = ACTIONS(1918), [anon_sym_try] = ACTIONS(1918), [anon_sym_co_await] = ACTIONS(1918), [anon_sym_new] = ACTIONS(1918), [sym_this] = ACTIONS(1918), [sym_nullptr] = ACTIONS(1918), [sym_raw_string_literal] = ACTIONS(1920), }, [308] = { [sym_identifier] = ACTIONS(1922), [aux_sym_preproc_include_token1] = ACTIONS(1922), [aux_sym_preproc_def_token1] = ACTIONS(1922), [aux_sym_preproc_if_token1] = ACTIONS(1922), [aux_sym_preproc_if_token2] = ACTIONS(1922), [aux_sym_preproc_ifdef_token1] = ACTIONS(1922), [aux_sym_preproc_ifdef_token2] = ACTIONS(1922), [aux_sym_preproc_else_token1] = ACTIONS(1922), [aux_sym_preproc_elif_token1] = ACTIONS(1922), [sym_preproc_directive] = ACTIONS(1922), [anon_sym_LPAREN2] = ACTIONS(1924), [anon_sym_BANG] = ACTIONS(1924), [anon_sym_TILDE] = ACTIONS(1924), [anon_sym_DASH] = ACTIONS(1922), [anon_sym_PLUS] = ACTIONS(1922), [anon_sym_STAR] = ACTIONS(1924), [anon_sym_AMP_AMP] = ACTIONS(1924), [anon_sym_AMP] = ACTIONS(1922), [anon_sym_SEMI] = ACTIONS(1924), [anon_sym_typedef] = ACTIONS(1922), [anon_sym_extern] = ACTIONS(1922), [anon_sym___attribute__] = ACTIONS(1922), [anon_sym_COLON_COLON] = ACTIONS(1924), [anon_sym_LBRACK_LBRACK] = ACTIONS(1924), [anon_sym___declspec] = ACTIONS(1922), [anon_sym___based] = ACTIONS(1922), [anon_sym___cdecl] = ACTIONS(1922), [anon_sym___clrcall] = ACTIONS(1922), [anon_sym___stdcall] = ACTIONS(1922), [anon_sym___fastcall] = ACTIONS(1922), [anon_sym___thiscall] = ACTIONS(1922), [anon_sym___vectorcall] = ACTIONS(1922), [anon_sym_LBRACE] = ACTIONS(1924), [anon_sym_LBRACK] = ACTIONS(1922), [anon_sym_static] = ACTIONS(1922), [anon_sym_register] = ACTIONS(1922), [anon_sym_inline] = ACTIONS(1922), [anon_sym_thread_local] = ACTIONS(1922), [anon_sym_const] = ACTIONS(1922), [anon_sym_volatile] = ACTIONS(1922), [anon_sym_restrict] = ACTIONS(1922), [anon_sym__Atomic] = ACTIONS(1922), [anon_sym_mutable] = ACTIONS(1922), [anon_sym_constexpr] = ACTIONS(1922), [anon_sym_signed] = ACTIONS(1922), [anon_sym_unsigned] = ACTIONS(1922), [anon_sym_long] = ACTIONS(1922), [anon_sym_short] = ACTIONS(1922), [sym_primitive_type] = ACTIONS(1922), [anon_sym_enum] = ACTIONS(1922), [anon_sym_class] = ACTIONS(1922), [anon_sym_struct] = ACTIONS(1922), [anon_sym_union] = ACTIONS(1922), [anon_sym_if] = ACTIONS(1922), [anon_sym_else] = ACTIONS(1922), [anon_sym_switch] = ACTIONS(1922), [anon_sym_case] = ACTIONS(1922), [anon_sym_default] = ACTIONS(1922), [anon_sym_while] = ACTIONS(1922), [anon_sym_do] = ACTIONS(1922), [anon_sym_for] = ACTIONS(1922), [anon_sym_return] = ACTIONS(1922), [anon_sym_break] = ACTIONS(1922), [anon_sym_continue] = ACTIONS(1922), [anon_sym_goto] = ACTIONS(1922), [anon_sym_DASH_DASH] = ACTIONS(1924), [anon_sym_PLUS_PLUS] = ACTIONS(1924), [anon_sym_sizeof] = ACTIONS(1922), [sym_number_literal] = ACTIONS(1924), [anon_sym_L_SQUOTE] = ACTIONS(1924), [anon_sym_u_SQUOTE] = ACTIONS(1924), [anon_sym_U_SQUOTE] = ACTIONS(1924), [anon_sym_u8_SQUOTE] = ACTIONS(1924), [anon_sym_SQUOTE] = ACTIONS(1924), [anon_sym_L_DQUOTE] = ACTIONS(1924), [anon_sym_u_DQUOTE] = ACTIONS(1924), [anon_sym_U_DQUOTE] = ACTIONS(1924), [anon_sym_u8_DQUOTE] = ACTIONS(1924), [anon_sym_DQUOTE] = ACTIONS(1924), [sym_true] = ACTIONS(1922), [sym_false] = ACTIONS(1922), [sym_null] = ACTIONS(1922), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1922), [anon_sym_virtual] = ACTIONS(1922), [anon_sym_explicit] = ACTIONS(1922), [sym_auto] = ACTIONS(1922), [anon_sym_typename] = ACTIONS(1922), [anon_sym_template] = ACTIONS(1922), [anon_sym_operator] = ACTIONS(1922), [anon_sym_delete] = ACTIONS(1922), [anon_sym_throw] = ACTIONS(1922), [anon_sym_namespace] = ACTIONS(1922), [anon_sym_using] = ACTIONS(1922), [anon_sym_static_assert] = ACTIONS(1922), [anon_sym_co_return] = ACTIONS(1922), [anon_sym_co_yield] = ACTIONS(1922), [anon_sym_try] = ACTIONS(1922), [anon_sym_co_await] = ACTIONS(1922), [anon_sym_new] = ACTIONS(1922), [sym_this] = ACTIONS(1922), [sym_nullptr] = ACTIONS(1922), [sym_raw_string_literal] = ACTIONS(1924), }, [309] = { [sym_compound_statement] = STATE(577), [sym_labeled_statement] = STATE(577), [sym_expression_statement] = STATE(577), [sym_if_statement] = STATE(577), [sym_switch_statement] = STATE(577), [sym_case_statement] = STATE(577), [sym_while_statement] = STATE(577), [sym_do_statement] = STATE(577), [sym_for_statement] = STATE(577), [sym_return_statement] = STATE(577), [sym_break_statement] = STATE(577), [sym_continue_statement] = STATE(577), [sym_goto_statement] = STATE(577), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(577), [sym_co_return_statement] = STATE(577), [sym_co_yield_statement] = STATE(577), [sym_throw_statement] = STATE(577), [sym_try_statement] = STATE(577), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [310] = { [sym_compound_statement] = STATE(569), [sym_labeled_statement] = STATE(569), [sym_expression_statement] = STATE(569), [sym_if_statement] = STATE(569), [sym_switch_statement] = STATE(569), [sym_case_statement] = STATE(569), [sym_while_statement] = STATE(569), [sym_do_statement] = STATE(569), [sym_for_statement] = STATE(569), [sym_return_statement] = STATE(569), [sym_break_statement] = STATE(569), [sym_continue_statement] = STATE(569), [sym_goto_statement] = STATE(569), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(569), [sym_co_return_statement] = STATE(569), [sym_co_yield_statement] = STATE(569), [sym_throw_statement] = STATE(569), [sym_try_statement] = STATE(569), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [311] = { [sym_identifier] = ACTIONS(1926), [aux_sym_preproc_include_token1] = ACTIONS(1926), [aux_sym_preproc_def_token1] = ACTIONS(1926), [aux_sym_preproc_if_token1] = ACTIONS(1926), [aux_sym_preproc_if_token2] = ACTIONS(1926), [aux_sym_preproc_ifdef_token1] = ACTIONS(1926), [aux_sym_preproc_ifdef_token2] = ACTIONS(1926), [aux_sym_preproc_else_token1] = ACTIONS(1926), [aux_sym_preproc_elif_token1] = ACTIONS(1926), [sym_preproc_directive] = ACTIONS(1926), [anon_sym_LPAREN2] = ACTIONS(1928), [anon_sym_BANG] = ACTIONS(1928), [anon_sym_TILDE] = ACTIONS(1928), [anon_sym_DASH] = ACTIONS(1926), [anon_sym_PLUS] = ACTIONS(1926), [anon_sym_STAR] = ACTIONS(1928), [anon_sym_AMP_AMP] = ACTIONS(1928), [anon_sym_AMP] = ACTIONS(1926), [anon_sym_SEMI] = ACTIONS(1928), [anon_sym_typedef] = ACTIONS(1926), [anon_sym_extern] = ACTIONS(1926), [anon_sym___attribute__] = ACTIONS(1926), [anon_sym_COLON_COLON] = ACTIONS(1928), [anon_sym_LBRACK_LBRACK] = ACTIONS(1928), [anon_sym___declspec] = ACTIONS(1926), [anon_sym___based] = ACTIONS(1926), [anon_sym___cdecl] = ACTIONS(1926), [anon_sym___clrcall] = ACTIONS(1926), [anon_sym___stdcall] = ACTIONS(1926), [anon_sym___fastcall] = ACTIONS(1926), [anon_sym___thiscall] = ACTIONS(1926), [anon_sym___vectorcall] = ACTIONS(1926), [anon_sym_LBRACE] = ACTIONS(1928), [anon_sym_LBRACK] = ACTIONS(1926), [anon_sym_static] = ACTIONS(1926), [anon_sym_register] = ACTIONS(1926), [anon_sym_inline] = ACTIONS(1926), [anon_sym_thread_local] = ACTIONS(1926), [anon_sym_const] = ACTIONS(1926), [anon_sym_volatile] = ACTIONS(1926), [anon_sym_restrict] = ACTIONS(1926), [anon_sym__Atomic] = ACTIONS(1926), [anon_sym_mutable] = ACTIONS(1926), [anon_sym_constexpr] = ACTIONS(1926), [anon_sym_signed] = ACTIONS(1926), [anon_sym_unsigned] = ACTIONS(1926), [anon_sym_long] = ACTIONS(1926), [anon_sym_short] = ACTIONS(1926), [sym_primitive_type] = ACTIONS(1926), [anon_sym_enum] = ACTIONS(1926), [anon_sym_class] = ACTIONS(1926), [anon_sym_struct] = ACTIONS(1926), [anon_sym_union] = ACTIONS(1926), [anon_sym_if] = ACTIONS(1926), [anon_sym_else] = ACTIONS(1930), [anon_sym_switch] = ACTIONS(1926), [anon_sym_case] = ACTIONS(1926), [anon_sym_default] = ACTIONS(1926), [anon_sym_while] = ACTIONS(1926), [anon_sym_do] = ACTIONS(1926), [anon_sym_for] = ACTIONS(1926), [anon_sym_return] = ACTIONS(1926), [anon_sym_break] = ACTIONS(1926), [anon_sym_continue] = ACTIONS(1926), [anon_sym_goto] = ACTIONS(1926), [anon_sym_DASH_DASH] = ACTIONS(1928), [anon_sym_PLUS_PLUS] = ACTIONS(1928), [anon_sym_sizeof] = ACTIONS(1926), [sym_number_literal] = ACTIONS(1928), [anon_sym_L_SQUOTE] = ACTIONS(1928), [anon_sym_u_SQUOTE] = ACTIONS(1928), [anon_sym_U_SQUOTE] = ACTIONS(1928), [anon_sym_u8_SQUOTE] = ACTIONS(1928), [anon_sym_SQUOTE] = ACTIONS(1928), [anon_sym_L_DQUOTE] = ACTIONS(1928), [anon_sym_u_DQUOTE] = ACTIONS(1928), [anon_sym_U_DQUOTE] = ACTIONS(1928), [anon_sym_u8_DQUOTE] = ACTIONS(1928), [anon_sym_DQUOTE] = ACTIONS(1928), [sym_true] = ACTIONS(1926), [sym_false] = ACTIONS(1926), [sym_null] = ACTIONS(1926), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1926), [anon_sym_virtual] = ACTIONS(1926), [anon_sym_explicit] = ACTIONS(1926), [sym_auto] = ACTIONS(1926), [anon_sym_typename] = ACTIONS(1926), [anon_sym_template] = ACTIONS(1926), [anon_sym_operator] = ACTIONS(1926), [anon_sym_delete] = ACTIONS(1926), [anon_sym_throw] = ACTIONS(1926), [anon_sym_namespace] = ACTIONS(1926), [anon_sym_using] = ACTIONS(1926), [anon_sym_static_assert] = ACTIONS(1926), [anon_sym_co_return] = ACTIONS(1926), [anon_sym_co_yield] = ACTIONS(1926), [anon_sym_try] = ACTIONS(1926), [anon_sym_co_await] = ACTIONS(1926), [anon_sym_new] = ACTIONS(1926), [sym_this] = ACTIONS(1926), [sym_nullptr] = ACTIONS(1926), [sym_raw_string_literal] = ACTIONS(1928), }, [312] = { [sym_compound_statement] = STATE(318), [sym_labeled_statement] = STATE(318), [sym_expression_statement] = STATE(318), [sym_if_statement] = STATE(318), [sym_switch_statement] = STATE(318), [sym_case_statement] = STATE(318), [sym_while_statement] = STATE(318), [sym_do_statement] = STATE(318), [sym_for_statement] = STATE(318), [sym_return_statement] = STATE(318), [sym_break_statement] = STATE(318), [sym_continue_statement] = STATE(318), [sym_goto_statement] = STATE(318), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(318), [sym_co_return_statement] = STATE(318), [sym_co_yield_statement] = STATE(318), [sym_throw_statement] = STATE(318), [sym_try_statement] = STATE(318), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [313] = { [sym_identifier] = ACTIONS(1932), [aux_sym_preproc_include_token1] = ACTIONS(1932), [aux_sym_preproc_def_token1] = ACTIONS(1932), [aux_sym_preproc_if_token1] = ACTIONS(1932), [aux_sym_preproc_if_token2] = ACTIONS(1932), [aux_sym_preproc_ifdef_token1] = ACTIONS(1932), [aux_sym_preproc_ifdef_token2] = ACTIONS(1932), [aux_sym_preproc_else_token1] = ACTIONS(1932), [aux_sym_preproc_elif_token1] = ACTIONS(1932), [sym_preproc_directive] = ACTIONS(1932), [anon_sym_LPAREN2] = ACTIONS(1934), [anon_sym_BANG] = ACTIONS(1934), [anon_sym_TILDE] = ACTIONS(1934), [anon_sym_DASH] = ACTIONS(1932), [anon_sym_PLUS] = ACTIONS(1932), [anon_sym_STAR] = ACTIONS(1934), [anon_sym_AMP_AMP] = ACTIONS(1934), [anon_sym_AMP] = ACTIONS(1932), [anon_sym_SEMI] = ACTIONS(1934), [anon_sym_typedef] = ACTIONS(1932), [anon_sym_extern] = ACTIONS(1932), [anon_sym___attribute__] = ACTIONS(1932), [anon_sym_COLON_COLON] = ACTIONS(1934), [anon_sym_LBRACK_LBRACK] = ACTIONS(1934), [anon_sym___declspec] = ACTIONS(1932), [anon_sym___based] = ACTIONS(1932), [anon_sym___cdecl] = ACTIONS(1932), [anon_sym___clrcall] = ACTIONS(1932), [anon_sym___stdcall] = ACTIONS(1932), [anon_sym___fastcall] = ACTIONS(1932), [anon_sym___thiscall] = ACTIONS(1932), [anon_sym___vectorcall] = ACTIONS(1932), [anon_sym_LBRACE] = ACTIONS(1934), [anon_sym_LBRACK] = ACTIONS(1932), [anon_sym_static] = ACTIONS(1932), [anon_sym_register] = ACTIONS(1932), [anon_sym_inline] = ACTIONS(1932), [anon_sym_thread_local] = ACTIONS(1932), [anon_sym_const] = ACTIONS(1932), [anon_sym_volatile] = ACTIONS(1932), [anon_sym_restrict] = ACTIONS(1932), [anon_sym__Atomic] = ACTIONS(1932), [anon_sym_mutable] = ACTIONS(1932), [anon_sym_constexpr] = ACTIONS(1932), [anon_sym_signed] = ACTIONS(1932), [anon_sym_unsigned] = ACTIONS(1932), [anon_sym_long] = ACTIONS(1932), [anon_sym_short] = ACTIONS(1932), [sym_primitive_type] = ACTIONS(1932), [anon_sym_enum] = ACTIONS(1932), [anon_sym_class] = ACTIONS(1932), [anon_sym_struct] = ACTIONS(1932), [anon_sym_union] = ACTIONS(1932), [anon_sym_if] = ACTIONS(1932), [anon_sym_else] = ACTIONS(1932), [anon_sym_switch] = ACTIONS(1932), [anon_sym_case] = ACTIONS(1932), [anon_sym_default] = ACTIONS(1932), [anon_sym_while] = ACTIONS(1932), [anon_sym_do] = ACTIONS(1932), [anon_sym_for] = ACTIONS(1932), [anon_sym_return] = ACTIONS(1932), [anon_sym_break] = ACTIONS(1932), [anon_sym_continue] = ACTIONS(1932), [anon_sym_goto] = ACTIONS(1932), [anon_sym_DASH_DASH] = ACTIONS(1934), [anon_sym_PLUS_PLUS] = ACTIONS(1934), [anon_sym_sizeof] = ACTIONS(1932), [sym_number_literal] = ACTIONS(1934), [anon_sym_L_SQUOTE] = ACTIONS(1934), [anon_sym_u_SQUOTE] = ACTIONS(1934), [anon_sym_U_SQUOTE] = ACTIONS(1934), [anon_sym_u8_SQUOTE] = ACTIONS(1934), [anon_sym_SQUOTE] = ACTIONS(1934), [anon_sym_L_DQUOTE] = ACTIONS(1934), [anon_sym_u_DQUOTE] = ACTIONS(1934), [anon_sym_U_DQUOTE] = ACTIONS(1934), [anon_sym_u8_DQUOTE] = ACTIONS(1934), [anon_sym_DQUOTE] = ACTIONS(1934), [sym_true] = ACTIONS(1932), [sym_false] = ACTIONS(1932), [sym_null] = ACTIONS(1932), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1932), [anon_sym_virtual] = ACTIONS(1932), [anon_sym_explicit] = ACTIONS(1932), [sym_auto] = ACTIONS(1932), [anon_sym_typename] = ACTIONS(1932), [anon_sym_template] = ACTIONS(1932), [anon_sym_operator] = ACTIONS(1932), [anon_sym_delete] = ACTIONS(1932), [anon_sym_throw] = ACTIONS(1932), [anon_sym_namespace] = ACTIONS(1932), [anon_sym_using] = ACTIONS(1932), [anon_sym_static_assert] = ACTIONS(1932), [anon_sym_co_return] = ACTIONS(1932), [anon_sym_co_yield] = ACTIONS(1932), [anon_sym_try] = ACTIONS(1932), [anon_sym_co_await] = ACTIONS(1932), [anon_sym_new] = ACTIONS(1932), [sym_this] = ACTIONS(1932), [sym_nullptr] = ACTIONS(1932), [sym_raw_string_literal] = ACTIONS(1934), }, [314] = { [sym_compound_statement] = STATE(570), [sym_labeled_statement] = STATE(570), [sym_expression_statement] = STATE(570), [sym_if_statement] = STATE(570), [sym_switch_statement] = STATE(570), [sym_case_statement] = STATE(570), [sym_while_statement] = STATE(570), [sym_do_statement] = STATE(570), [sym_for_statement] = STATE(570), [sym_return_statement] = STATE(570), [sym_break_statement] = STATE(570), [sym_continue_statement] = STATE(570), [sym_goto_statement] = STATE(570), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(570), [sym_co_return_statement] = STATE(570), [sym_co_yield_statement] = STATE(570), [sym_throw_statement] = STATE(570), [sym_try_statement] = STATE(570), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [315] = { [sym_identifier] = ACTIONS(1756), [aux_sym_preproc_include_token1] = ACTIONS(1756), [aux_sym_preproc_def_token1] = ACTIONS(1756), [anon_sym_COMMA] = ACTIONS(1936), [aux_sym_preproc_if_token1] = ACTIONS(1756), [aux_sym_preproc_if_token2] = ACTIONS(1756), [aux_sym_preproc_ifdef_token1] = ACTIONS(1756), [aux_sym_preproc_ifdef_token2] = ACTIONS(1756), [aux_sym_preproc_else_token1] = ACTIONS(1756), [aux_sym_preproc_elif_token1] = ACTIONS(1756), [sym_preproc_directive] = ACTIONS(1756), [anon_sym_LPAREN2] = ACTIONS(1758), [anon_sym_BANG] = ACTIONS(1758), [anon_sym_TILDE] = ACTIONS(1758), [anon_sym_DASH] = ACTIONS(1756), [anon_sym_PLUS] = ACTIONS(1756), [anon_sym_STAR] = ACTIONS(1758), [anon_sym_AMP_AMP] = ACTIONS(1758), [anon_sym_AMP] = ACTIONS(1756), [anon_sym_SEMI] = ACTIONS(1936), [anon_sym_typedef] = ACTIONS(1756), [anon_sym_extern] = ACTIONS(1756), [anon_sym___attribute__] = ACTIONS(1756), [anon_sym_COLON_COLON] = ACTIONS(1758), [anon_sym_LBRACK_LBRACK] = ACTIONS(1758), [anon_sym___declspec] = ACTIONS(1756), [anon_sym___based] = ACTIONS(1756), [anon_sym___cdecl] = ACTIONS(1756), [anon_sym___clrcall] = ACTIONS(1756), [anon_sym___stdcall] = ACTIONS(1756), [anon_sym___fastcall] = ACTIONS(1756), [anon_sym___thiscall] = ACTIONS(1756), [anon_sym___vectorcall] = ACTIONS(1756), [anon_sym_LBRACE] = ACTIONS(1758), [anon_sym_LBRACK] = ACTIONS(1756), [anon_sym_static] = ACTIONS(1756), [anon_sym_register] = ACTIONS(1756), [anon_sym_inline] = ACTIONS(1756), [anon_sym_thread_local] = ACTIONS(1756), [anon_sym_const] = ACTIONS(1756), [anon_sym_volatile] = ACTIONS(1756), [anon_sym_restrict] = ACTIONS(1756), [anon_sym__Atomic] = ACTIONS(1756), [anon_sym_mutable] = ACTIONS(1756), [anon_sym_constexpr] = ACTIONS(1756), [anon_sym_signed] = ACTIONS(1756), [anon_sym_unsigned] = ACTIONS(1756), [anon_sym_long] = ACTIONS(1756), [anon_sym_short] = ACTIONS(1756), [sym_primitive_type] = ACTIONS(1756), [anon_sym_enum] = ACTIONS(1756), [anon_sym_class] = ACTIONS(1756), [anon_sym_struct] = ACTIONS(1756), [anon_sym_union] = ACTIONS(1756), [anon_sym_if] = ACTIONS(1756), [anon_sym_switch] = ACTIONS(1756), [anon_sym_case] = ACTIONS(1756), [anon_sym_default] = ACTIONS(1756), [anon_sym_while] = ACTIONS(1756), [anon_sym_do] = ACTIONS(1756), [anon_sym_for] = ACTIONS(1756), [anon_sym_return] = ACTIONS(1756), [anon_sym_break] = ACTIONS(1756), [anon_sym_continue] = ACTIONS(1756), [anon_sym_goto] = ACTIONS(1756), [anon_sym_DASH_DASH] = ACTIONS(1758), [anon_sym_PLUS_PLUS] = ACTIONS(1758), [anon_sym_sizeof] = ACTIONS(1756), [sym_number_literal] = ACTIONS(1758), [anon_sym_L_SQUOTE] = ACTIONS(1758), [anon_sym_u_SQUOTE] = ACTIONS(1758), [anon_sym_U_SQUOTE] = ACTIONS(1758), [anon_sym_u8_SQUOTE] = ACTIONS(1758), [anon_sym_SQUOTE] = ACTIONS(1758), [anon_sym_L_DQUOTE] = ACTIONS(1758), [anon_sym_u_DQUOTE] = ACTIONS(1758), [anon_sym_U_DQUOTE] = ACTIONS(1758), [anon_sym_u8_DQUOTE] = ACTIONS(1758), [anon_sym_DQUOTE] = ACTIONS(1758), [sym_true] = ACTIONS(1756), [sym_false] = ACTIONS(1756), [sym_null] = ACTIONS(1756), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1756), [anon_sym_virtual] = ACTIONS(1756), [anon_sym_explicit] = ACTIONS(1756), [sym_auto] = ACTIONS(1756), [anon_sym_typename] = ACTIONS(1756), [anon_sym_template] = ACTIONS(1756), [anon_sym_operator] = ACTIONS(1756), [anon_sym_delete] = ACTIONS(1756), [anon_sym_throw] = ACTIONS(1756), [anon_sym_namespace] = ACTIONS(1756), [anon_sym_using] = ACTIONS(1756), [anon_sym_static_assert] = ACTIONS(1756), [anon_sym_co_return] = ACTIONS(1756), [anon_sym_co_yield] = ACTIONS(1756), [anon_sym_try] = ACTIONS(1756), [anon_sym_co_await] = ACTIONS(1756), [anon_sym_new] = ACTIONS(1756), [sym_this] = ACTIONS(1756), [sym_nullptr] = ACTIONS(1756), [sym_raw_string_literal] = ACTIONS(1758), }, [316] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [317] = { [sym_compound_statement] = STATE(323), [sym_labeled_statement] = STATE(323), [sym_expression_statement] = STATE(323), [sym_if_statement] = STATE(323), [sym_switch_statement] = STATE(323), [sym_case_statement] = STATE(323), [sym_while_statement] = STATE(323), [sym_do_statement] = STATE(323), [sym_for_statement] = STATE(323), [sym_return_statement] = STATE(323), [sym_break_statement] = STATE(323), [sym_continue_statement] = STATE(323), [sym_goto_statement] = STATE(323), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(323), [sym_co_return_statement] = STATE(323), [sym_co_yield_statement] = STATE(323), [sym_throw_statement] = STATE(323), [sym_try_statement] = STATE(323), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [318] = { [sym_identifier] = ACTIONS(1938), [aux_sym_preproc_include_token1] = ACTIONS(1938), [aux_sym_preproc_def_token1] = ACTIONS(1938), [aux_sym_preproc_if_token1] = ACTIONS(1938), [aux_sym_preproc_if_token2] = ACTIONS(1938), [aux_sym_preproc_ifdef_token1] = ACTIONS(1938), [aux_sym_preproc_ifdef_token2] = ACTIONS(1938), [aux_sym_preproc_else_token1] = ACTIONS(1938), [aux_sym_preproc_elif_token1] = ACTIONS(1938), [sym_preproc_directive] = ACTIONS(1938), [anon_sym_LPAREN2] = ACTIONS(1940), [anon_sym_BANG] = ACTIONS(1940), [anon_sym_TILDE] = ACTIONS(1940), [anon_sym_DASH] = ACTIONS(1938), [anon_sym_PLUS] = ACTIONS(1938), [anon_sym_STAR] = ACTIONS(1940), [anon_sym_AMP_AMP] = ACTIONS(1940), [anon_sym_AMP] = ACTIONS(1938), [anon_sym_SEMI] = ACTIONS(1940), [anon_sym_typedef] = ACTIONS(1938), [anon_sym_extern] = ACTIONS(1938), [anon_sym___attribute__] = ACTIONS(1938), [anon_sym_COLON_COLON] = ACTIONS(1940), [anon_sym_LBRACK_LBRACK] = ACTIONS(1940), [anon_sym___declspec] = ACTIONS(1938), [anon_sym___based] = ACTIONS(1938), [anon_sym___cdecl] = ACTIONS(1938), [anon_sym___clrcall] = ACTIONS(1938), [anon_sym___stdcall] = ACTIONS(1938), [anon_sym___fastcall] = ACTIONS(1938), [anon_sym___thiscall] = ACTIONS(1938), [anon_sym___vectorcall] = ACTIONS(1938), [anon_sym_LBRACE] = ACTIONS(1940), [anon_sym_LBRACK] = ACTIONS(1938), [anon_sym_static] = ACTIONS(1938), [anon_sym_register] = ACTIONS(1938), [anon_sym_inline] = ACTIONS(1938), [anon_sym_thread_local] = ACTIONS(1938), [anon_sym_const] = ACTIONS(1938), [anon_sym_volatile] = ACTIONS(1938), [anon_sym_restrict] = ACTIONS(1938), [anon_sym__Atomic] = ACTIONS(1938), [anon_sym_mutable] = ACTIONS(1938), [anon_sym_constexpr] = ACTIONS(1938), [anon_sym_signed] = ACTIONS(1938), [anon_sym_unsigned] = ACTIONS(1938), [anon_sym_long] = ACTIONS(1938), [anon_sym_short] = ACTIONS(1938), [sym_primitive_type] = ACTIONS(1938), [anon_sym_enum] = ACTIONS(1938), [anon_sym_class] = ACTIONS(1938), [anon_sym_struct] = ACTIONS(1938), [anon_sym_union] = ACTIONS(1938), [anon_sym_if] = ACTIONS(1938), [anon_sym_else] = ACTIONS(1938), [anon_sym_switch] = ACTIONS(1938), [anon_sym_case] = ACTIONS(1938), [anon_sym_default] = ACTIONS(1938), [anon_sym_while] = ACTIONS(1938), [anon_sym_do] = ACTIONS(1938), [anon_sym_for] = ACTIONS(1938), [anon_sym_return] = ACTIONS(1938), [anon_sym_break] = ACTIONS(1938), [anon_sym_continue] = ACTIONS(1938), [anon_sym_goto] = ACTIONS(1938), [anon_sym_DASH_DASH] = ACTIONS(1940), [anon_sym_PLUS_PLUS] = ACTIONS(1940), [anon_sym_sizeof] = ACTIONS(1938), [sym_number_literal] = ACTIONS(1940), [anon_sym_L_SQUOTE] = ACTIONS(1940), [anon_sym_u_SQUOTE] = ACTIONS(1940), [anon_sym_U_SQUOTE] = ACTIONS(1940), [anon_sym_u8_SQUOTE] = ACTIONS(1940), [anon_sym_SQUOTE] = ACTIONS(1940), [anon_sym_L_DQUOTE] = ACTIONS(1940), [anon_sym_u_DQUOTE] = ACTIONS(1940), [anon_sym_U_DQUOTE] = ACTIONS(1940), [anon_sym_u8_DQUOTE] = ACTIONS(1940), [anon_sym_DQUOTE] = ACTIONS(1940), [sym_true] = ACTIONS(1938), [sym_false] = ACTIONS(1938), [sym_null] = ACTIONS(1938), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1938), [anon_sym_virtual] = ACTIONS(1938), [anon_sym_explicit] = ACTIONS(1938), [sym_auto] = ACTIONS(1938), [anon_sym_typename] = ACTIONS(1938), [anon_sym_template] = ACTIONS(1938), [anon_sym_operator] = ACTIONS(1938), [anon_sym_delete] = ACTIONS(1938), [anon_sym_throw] = ACTIONS(1938), [anon_sym_namespace] = ACTIONS(1938), [anon_sym_using] = ACTIONS(1938), [anon_sym_static_assert] = ACTIONS(1938), [anon_sym_co_return] = ACTIONS(1938), [anon_sym_co_yield] = ACTIONS(1938), [anon_sym_try] = ACTIONS(1938), [anon_sym_co_await] = ACTIONS(1938), [anon_sym_new] = ACTIONS(1938), [sym_this] = ACTIONS(1938), [sym_nullptr] = ACTIONS(1938), [sym_raw_string_literal] = ACTIONS(1940), }, [319] = { [sym_identifier] = ACTIONS(1942), [aux_sym_preproc_include_token1] = ACTIONS(1942), [aux_sym_preproc_def_token1] = ACTIONS(1942), [aux_sym_preproc_if_token1] = ACTIONS(1942), [aux_sym_preproc_if_token2] = ACTIONS(1942), [aux_sym_preproc_ifdef_token1] = ACTIONS(1942), [aux_sym_preproc_ifdef_token2] = ACTIONS(1942), [aux_sym_preproc_else_token1] = ACTIONS(1942), [aux_sym_preproc_elif_token1] = ACTIONS(1942), [sym_preproc_directive] = ACTIONS(1942), [anon_sym_LPAREN2] = ACTIONS(1944), [anon_sym_BANG] = ACTIONS(1944), [anon_sym_TILDE] = ACTIONS(1944), [anon_sym_DASH] = ACTIONS(1942), [anon_sym_PLUS] = ACTIONS(1942), [anon_sym_STAR] = ACTIONS(1944), [anon_sym_AMP_AMP] = ACTIONS(1944), [anon_sym_AMP] = ACTIONS(1942), [anon_sym_SEMI] = ACTIONS(1944), [anon_sym_typedef] = ACTIONS(1942), [anon_sym_extern] = ACTIONS(1942), [anon_sym___attribute__] = ACTIONS(1942), [anon_sym_COLON_COLON] = ACTIONS(1944), [anon_sym_LBRACK_LBRACK] = ACTIONS(1944), [anon_sym___declspec] = ACTIONS(1942), [anon_sym___based] = ACTIONS(1942), [anon_sym___cdecl] = ACTIONS(1942), [anon_sym___clrcall] = ACTIONS(1942), [anon_sym___stdcall] = ACTIONS(1942), [anon_sym___fastcall] = ACTIONS(1942), [anon_sym___thiscall] = ACTIONS(1942), [anon_sym___vectorcall] = ACTIONS(1942), [anon_sym_LBRACE] = ACTIONS(1944), [anon_sym_LBRACK] = ACTIONS(1942), [anon_sym_static] = ACTIONS(1942), [anon_sym_register] = ACTIONS(1942), [anon_sym_inline] = ACTIONS(1942), [anon_sym_thread_local] = ACTIONS(1942), [anon_sym_const] = ACTIONS(1942), [anon_sym_volatile] = ACTIONS(1942), [anon_sym_restrict] = ACTIONS(1942), [anon_sym__Atomic] = ACTIONS(1942), [anon_sym_mutable] = ACTIONS(1942), [anon_sym_constexpr] = ACTIONS(1942), [anon_sym_signed] = ACTIONS(1942), [anon_sym_unsigned] = ACTIONS(1942), [anon_sym_long] = ACTIONS(1942), [anon_sym_short] = ACTIONS(1942), [sym_primitive_type] = ACTIONS(1942), [anon_sym_enum] = ACTIONS(1942), [anon_sym_class] = ACTIONS(1942), [anon_sym_struct] = ACTIONS(1942), [anon_sym_union] = ACTIONS(1942), [anon_sym_if] = ACTIONS(1942), [anon_sym_else] = ACTIONS(1942), [anon_sym_switch] = ACTIONS(1942), [anon_sym_case] = ACTIONS(1942), [anon_sym_default] = ACTIONS(1942), [anon_sym_while] = ACTIONS(1942), [anon_sym_do] = ACTIONS(1942), [anon_sym_for] = ACTIONS(1942), [anon_sym_return] = ACTIONS(1942), [anon_sym_break] = ACTIONS(1942), [anon_sym_continue] = ACTIONS(1942), [anon_sym_goto] = ACTIONS(1942), [anon_sym_DASH_DASH] = ACTIONS(1944), [anon_sym_PLUS_PLUS] = ACTIONS(1944), [anon_sym_sizeof] = ACTIONS(1942), [sym_number_literal] = ACTIONS(1944), [anon_sym_L_SQUOTE] = ACTIONS(1944), [anon_sym_u_SQUOTE] = ACTIONS(1944), [anon_sym_U_SQUOTE] = ACTIONS(1944), [anon_sym_u8_SQUOTE] = ACTIONS(1944), [anon_sym_SQUOTE] = ACTIONS(1944), [anon_sym_L_DQUOTE] = ACTIONS(1944), [anon_sym_u_DQUOTE] = ACTIONS(1944), [anon_sym_U_DQUOTE] = ACTIONS(1944), [anon_sym_u8_DQUOTE] = ACTIONS(1944), [anon_sym_DQUOTE] = ACTIONS(1944), [sym_true] = ACTIONS(1942), [sym_false] = ACTIONS(1942), [sym_null] = ACTIONS(1942), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1942), [anon_sym_virtual] = ACTIONS(1942), [anon_sym_explicit] = ACTIONS(1942), [sym_auto] = ACTIONS(1942), [anon_sym_typename] = ACTIONS(1942), [anon_sym_template] = ACTIONS(1942), [anon_sym_operator] = ACTIONS(1942), [anon_sym_delete] = ACTIONS(1942), [anon_sym_throw] = ACTIONS(1942), [anon_sym_namespace] = ACTIONS(1942), [anon_sym_using] = ACTIONS(1942), [anon_sym_static_assert] = ACTIONS(1942), [anon_sym_co_return] = ACTIONS(1942), [anon_sym_co_yield] = ACTIONS(1942), [anon_sym_try] = ACTIONS(1942), [anon_sym_co_await] = ACTIONS(1942), [anon_sym_new] = ACTIONS(1942), [sym_this] = ACTIONS(1942), [sym_nullptr] = ACTIONS(1942), [sym_raw_string_literal] = ACTIONS(1944), }, [320] = { [sym_compound_statement] = STATE(324), [sym_labeled_statement] = STATE(324), [sym_expression_statement] = STATE(324), [sym_if_statement] = STATE(324), [sym_switch_statement] = STATE(324), [sym_case_statement] = STATE(324), [sym_while_statement] = STATE(324), [sym_do_statement] = STATE(324), [sym_for_statement] = STATE(324), [sym_return_statement] = STATE(324), [sym_break_statement] = STATE(324), [sym_continue_statement] = STATE(324), [sym_goto_statement] = STATE(324), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(324), [sym_co_return_statement] = STATE(324), [sym_co_yield_statement] = STATE(324), [sym_throw_statement] = STATE(324), [sym_try_statement] = STATE(324), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [321] = { [sym_compound_statement] = STATE(327), [sym_labeled_statement] = STATE(327), [sym_expression_statement] = STATE(327), [sym_if_statement] = STATE(327), [sym_switch_statement] = STATE(327), [sym_case_statement] = STATE(327), [sym_while_statement] = STATE(327), [sym_do_statement] = STATE(327), [sym_for_statement] = STATE(327), [sym_return_statement] = STATE(327), [sym_break_statement] = STATE(327), [sym_continue_statement] = STATE(327), [sym_goto_statement] = STATE(327), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(327), [sym_co_return_statement] = STATE(327), [sym_co_yield_statement] = STATE(327), [sym_throw_statement] = STATE(327), [sym_try_statement] = STATE(327), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [322] = { [sym__expression] = STATE(1833), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_initializer_list] = STATE(1834), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_DOT_DOT_DOT] = ACTIONS(1948), [anon_sym_COMMA] = ACTIONS(1948), [anon_sym_RPAREN] = ACTIONS(1948), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1952), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(925), [anon_sym_SLASH] = ACTIONS(1956), [anon_sym_PERCENT] = ACTIONS(1956), [anon_sym_PIPE_PIPE] = ACTIONS(1948), [anon_sym_AMP_AMP] = ACTIONS(1948), [anon_sym_PIPE] = ACTIONS(1956), [anon_sym_CARET] = ACTIONS(1956), [anon_sym_AMP] = ACTIONS(925), [anon_sym_EQ_EQ] = ACTIONS(1948), [anon_sym_BANG_EQ] = ACTIONS(1948), [anon_sym_GT] = ACTIONS(1956), [anon_sym_GT_EQ] = ACTIONS(1948), [anon_sym_LT_EQ] = ACTIONS(1948), [anon_sym_LT] = ACTIONS(1956), [anon_sym_LT_LT] = ACTIONS(1956), [anon_sym_GT_GT] = ACTIONS(1956), [anon_sym_SEMI] = ACTIONS(1948), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACE] = ACTIONS(1960), [anon_sym_RBRACE] = ACTIONS(1948), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(1948), [anon_sym_EQ] = ACTIONS(1956), [sym_primitive_type] = ACTIONS(1728), [anon_sym_QMARK] = ACTIONS(1948), [anon_sym_STAR_EQ] = ACTIONS(1948), [anon_sym_SLASH_EQ] = ACTIONS(1948), [anon_sym_PERCENT_EQ] = ACTIONS(1948), [anon_sym_PLUS_EQ] = ACTIONS(1948), [anon_sym_DASH_EQ] = ACTIONS(1948), [anon_sym_LT_LT_EQ] = ACTIONS(1948), [anon_sym_GT_GT_EQ] = ACTIONS(1948), [anon_sym_AMP_EQ] = ACTIONS(1948), [anon_sym_CARET_EQ] = ACTIONS(1948), [anon_sym_PIPE_EQ] = ACTIONS(1948), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [anon_sym_DOT] = ACTIONS(1956), [anon_sym_DASH_GT] = ACTIONS(1948), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [323] = { [sym_identifier] = ACTIONS(1982), [aux_sym_preproc_include_token1] = ACTIONS(1982), [aux_sym_preproc_def_token1] = ACTIONS(1982), [aux_sym_preproc_if_token1] = ACTIONS(1982), [aux_sym_preproc_if_token2] = ACTIONS(1982), [aux_sym_preproc_ifdef_token1] = ACTIONS(1982), [aux_sym_preproc_ifdef_token2] = ACTIONS(1982), [aux_sym_preproc_else_token1] = ACTIONS(1982), [aux_sym_preproc_elif_token1] = ACTIONS(1982), [sym_preproc_directive] = ACTIONS(1982), [anon_sym_LPAREN2] = ACTIONS(1984), [anon_sym_BANG] = ACTIONS(1984), [anon_sym_TILDE] = ACTIONS(1984), [anon_sym_DASH] = ACTIONS(1982), [anon_sym_PLUS] = ACTIONS(1982), [anon_sym_STAR] = ACTIONS(1984), [anon_sym_AMP_AMP] = ACTIONS(1984), [anon_sym_AMP] = ACTIONS(1982), [anon_sym_SEMI] = ACTIONS(1984), [anon_sym_typedef] = ACTIONS(1982), [anon_sym_extern] = ACTIONS(1982), [anon_sym___attribute__] = ACTIONS(1982), [anon_sym_COLON_COLON] = ACTIONS(1984), [anon_sym_LBRACK_LBRACK] = ACTIONS(1984), [anon_sym___declspec] = ACTIONS(1982), [anon_sym___based] = ACTIONS(1982), [anon_sym___cdecl] = ACTIONS(1982), [anon_sym___clrcall] = ACTIONS(1982), [anon_sym___stdcall] = ACTIONS(1982), [anon_sym___fastcall] = ACTIONS(1982), [anon_sym___thiscall] = ACTIONS(1982), [anon_sym___vectorcall] = ACTIONS(1982), [anon_sym_LBRACE] = ACTIONS(1984), [anon_sym_LBRACK] = ACTIONS(1982), [anon_sym_static] = ACTIONS(1982), [anon_sym_register] = ACTIONS(1982), [anon_sym_inline] = ACTIONS(1982), [anon_sym_thread_local] = ACTIONS(1982), [anon_sym_const] = ACTIONS(1982), [anon_sym_volatile] = ACTIONS(1982), [anon_sym_restrict] = ACTIONS(1982), [anon_sym__Atomic] = ACTIONS(1982), [anon_sym_mutable] = ACTIONS(1982), [anon_sym_constexpr] = ACTIONS(1982), [anon_sym_signed] = ACTIONS(1982), [anon_sym_unsigned] = ACTIONS(1982), [anon_sym_long] = ACTIONS(1982), [anon_sym_short] = ACTIONS(1982), [sym_primitive_type] = ACTIONS(1982), [anon_sym_enum] = ACTIONS(1982), [anon_sym_class] = ACTIONS(1982), [anon_sym_struct] = ACTIONS(1982), [anon_sym_union] = ACTIONS(1982), [anon_sym_if] = ACTIONS(1982), [anon_sym_else] = ACTIONS(1982), [anon_sym_switch] = ACTIONS(1982), [anon_sym_case] = ACTIONS(1982), [anon_sym_default] = ACTIONS(1982), [anon_sym_while] = ACTIONS(1982), [anon_sym_do] = ACTIONS(1982), [anon_sym_for] = ACTIONS(1982), [anon_sym_return] = ACTIONS(1982), [anon_sym_break] = ACTIONS(1982), [anon_sym_continue] = ACTIONS(1982), [anon_sym_goto] = ACTIONS(1982), [anon_sym_DASH_DASH] = ACTIONS(1984), [anon_sym_PLUS_PLUS] = ACTIONS(1984), [anon_sym_sizeof] = ACTIONS(1982), [sym_number_literal] = ACTIONS(1984), [anon_sym_L_SQUOTE] = ACTIONS(1984), [anon_sym_u_SQUOTE] = ACTIONS(1984), [anon_sym_U_SQUOTE] = ACTIONS(1984), [anon_sym_u8_SQUOTE] = ACTIONS(1984), [anon_sym_SQUOTE] = ACTIONS(1984), [anon_sym_L_DQUOTE] = ACTIONS(1984), [anon_sym_u_DQUOTE] = ACTIONS(1984), [anon_sym_U_DQUOTE] = ACTIONS(1984), [anon_sym_u8_DQUOTE] = ACTIONS(1984), [anon_sym_DQUOTE] = ACTIONS(1984), [sym_true] = ACTIONS(1982), [sym_false] = ACTIONS(1982), [sym_null] = ACTIONS(1982), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1982), [anon_sym_virtual] = ACTIONS(1982), [anon_sym_explicit] = ACTIONS(1982), [sym_auto] = ACTIONS(1982), [anon_sym_typename] = ACTIONS(1982), [anon_sym_template] = ACTIONS(1982), [anon_sym_operator] = ACTIONS(1982), [anon_sym_delete] = ACTIONS(1982), [anon_sym_throw] = ACTIONS(1982), [anon_sym_namespace] = ACTIONS(1982), [anon_sym_using] = ACTIONS(1982), [anon_sym_static_assert] = ACTIONS(1982), [anon_sym_co_return] = ACTIONS(1982), [anon_sym_co_yield] = ACTIONS(1982), [anon_sym_try] = ACTIONS(1982), [anon_sym_co_await] = ACTIONS(1982), [anon_sym_new] = ACTIONS(1982), [sym_this] = ACTIONS(1982), [sym_nullptr] = ACTIONS(1982), [sym_raw_string_literal] = ACTIONS(1984), }, [324] = { [sym_identifier] = ACTIONS(1986), [aux_sym_preproc_include_token1] = ACTIONS(1986), [aux_sym_preproc_def_token1] = ACTIONS(1986), [aux_sym_preproc_if_token1] = ACTIONS(1986), [aux_sym_preproc_if_token2] = ACTIONS(1986), [aux_sym_preproc_ifdef_token1] = ACTIONS(1986), [aux_sym_preproc_ifdef_token2] = ACTIONS(1986), [aux_sym_preproc_else_token1] = ACTIONS(1986), [aux_sym_preproc_elif_token1] = ACTIONS(1986), [sym_preproc_directive] = ACTIONS(1986), [anon_sym_LPAREN2] = ACTIONS(1988), [anon_sym_BANG] = ACTIONS(1988), [anon_sym_TILDE] = ACTIONS(1988), [anon_sym_DASH] = ACTIONS(1986), [anon_sym_PLUS] = ACTIONS(1986), [anon_sym_STAR] = ACTIONS(1988), [anon_sym_AMP_AMP] = ACTIONS(1988), [anon_sym_AMP] = ACTIONS(1986), [anon_sym_SEMI] = ACTIONS(1988), [anon_sym_typedef] = ACTIONS(1986), [anon_sym_extern] = ACTIONS(1986), [anon_sym___attribute__] = ACTIONS(1986), [anon_sym_COLON_COLON] = ACTIONS(1988), [anon_sym_LBRACK_LBRACK] = ACTIONS(1988), [anon_sym___declspec] = ACTIONS(1986), [anon_sym___based] = ACTIONS(1986), [anon_sym___cdecl] = ACTIONS(1986), [anon_sym___clrcall] = ACTIONS(1986), [anon_sym___stdcall] = ACTIONS(1986), [anon_sym___fastcall] = ACTIONS(1986), [anon_sym___thiscall] = ACTIONS(1986), [anon_sym___vectorcall] = ACTIONS(1986), [anon_sym_LBRACE] = ACTIONS(1988), [anon_sym_LBRACK] = ACTIONS(1986), [anon_sym_static] = ACTIONS(1986), [anon_sym_register] = ACTIONS(1986), [anon_sym_inline] = ACTIONS(1986), [anon_sym_thread_local] = ACTIONS(1986), [anon_sym_const] = ACTIONS(1986), [anon_sym_volatile] = ACTIONS(1986), [anon_sym_restrict] = ACTIONS(1986), [anon_sym__Atomic] = ACTIONS(1986), [anon_sym_mutable] = ACTIONS(1986), [anon_sym_constexpr] = ACTIONS(1986), [anon_sym_signed] = ACTIONS(1986), [anon_sym_unsigned] = ACTIONS(1986), [anon_sym_long] = ACTIONS(1986), [anon_sym_short] = ACTIONS(1986), [sym_primitive_type] = ACTIONS(1986), [anon_sym_enum] = ACTIONS(1986), [anon_sym_class] = ACTIONS(1986), [anon_sym_struct] = ACTIONS(1986), [anon_sym_union] = ACTIONS(1986), [anon_sym_if] = ACTIONS(1986), [anon_sym_else] = ACTIONS(1986), [anon_sym_switch] = ACTIONS(1986), [anon_sym_case] = ACTIONS(1986), [anon_sym_default] = ACTIONS(1986), [anon_sym_while] = ACTIONS(1986), [anon_sym_do] = ACTIONS(1986), [anon_sym_for] = ACTIONS(1986), [anon_sym_return] = ACTIONS(1986), [anon_sym_break] = ACTIONS(1986), [anon_sym_continue] = ACTIONS(1986), [anon_sym_goto] = ACTIONS(1986), [anon_sym_DASH_DASH] = ACTIONS(1988), [anon_sym_PLUS_PLUS] = ACTIONS(1988), [anon_sym_sizeof] = ACTIONS(1986), [sym_number_literal] = ACTIONS(1988), [anon_sym_L_SQUOTE] = ACTIONS(1988), [anon_sym_u_SQUOTE] = ACTIONS(1988), [anon_sym_U_SQUOTE] = ACTIONS(1988), [anon_sym_u8_SQUOTE] = ACTIONS(1988), [anon_sym_SQUOTE] = ACTIONS(1988), [anon_sym_L_DQUOTE] = ACTIONS(1988), [anon_sym_u_DQUOTE] = ACTIONS(1988), [anon_sym_U_DQUOTE] = ACTIONS(1988), [anon_sym_u8_DQUOTE] = ACTIONS(1988), [anon_sym_DQUOTE] = ACTIONS(1988), [sym_true] = ACTIONS(1986), [sym_false] = ACTIONS(1986), [sym_null] = ACTIONS(1986), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1986), [anon_sym_virtual] = ACTIONS(1986), [anon_sym_explicit] = ACTIONS(1986), [sym_auto] = ACTIONS(1986), [anon_sym_typename] = ACTIONS(1986), [anon_sym_template] = ACTIONS(1986), [anon_sym_operator] = ACTIONS(1986), [anon_sym_delete] = ACTIONS(1986), [anon_sym_throw] = ACTIONS(1986), [anon_sym_namespace] = ACTIONS(1986), [anon_sym_using] = ACTIONS(1986), [anon_sym_static_assert] = ACTIONS(1986), [anon_sym_co_return] = ACTIONS(1986), [anon_sym_co_yield] = ACTIONS(1986), [anon_sym_try] = ACTIONS(1986), [anon_sym_co_await] = ACTIONS(1986), [anon_sym_new] = ACTIONS(1986), [sym_this] = ACTIONS(1986), [sym_nullptr] = ACTIONS(1986), [sym_raw_string_literal] = ACTIONS(1988), }, [325] = { [sym_compound_statement] = STATE(333), [sym_labeled_statement] = STATE(333), [sym_expression_statement] = STATE(333), [sym_if_statement] = STATE(333), [sym_switch_statement] = STATE(333), [sym_case_statement] = STATE(333), [sym_while_statement] = STATE(333), [sym_do_statement] = STATE(333), [sym_for_statement] = STATE(333), [sym_return_statement] = STATE(333), [sym_break_statement] = STATE(333), [sym_continue_statement] = STATE(333), [sym_goto_statement] = STATE(333), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(333), [sym_co_return_statement] = STATE(333), [sym_co_yield_statement] = STATE(333), [sym_throw_statement] = STATE(333), [sym_try_statement] = STATE(333), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [326] = { [sym_compound_statement] = STATE(334), [sym_labeled_statement] = STATE(334), [sym_expression_statement] = STATE(334), [sym_if_statement] = STATE(334), [sym_switch_statement] = STATE(334), [sym_case_statement] = STATE(334), [sym_while_statement] = STATE(334), [sym_do_statement] = STATE(334), [sym_for_statement] = STATE(334), [sym_return_statement] = STATE(334), [sym_break_statement] = STATE(334), [sym_continue_statement] = STATE(334), [sym_goto_statement] = STATE(334), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(334), [sym_co_return_statement] = STATE(334), [sym_co_yield_statement] = STATE(334), [sym_throw_statement] = STATE(334), [sym_try_statement] = STATE(334), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [327] = { [sym_identifier] = ACTIONS(1990), [aux_sym_preproc_include_token1] = ACTIONS(1990), [aux_sym_preproc_def_token1] = ACTIONS(1990), [aux_sym_preproc_if_token1] = ACTIONS(1990), [aux_sym_preproc_if_token2] = ACTIONS(1990), [aux_sym_preproc_ifdef_token1] = ACTIONS(1990), [aux_sym_preproc_ifdef_token2] = ACTIONS(1990), [aux_sym_preproc_else_token1] = ACTIONS(1990), [aux_sym_preproc_elif_token1] = ACTIONS(1990), [sym_preproc_directive] = ACTIONS(1990), [anon_sym_LPAREN2] = ACTIONS(1992), [anon_sym_BANG] = ACTIONS(1992), [anon_sym_TILDE] = ACTIONS(1992), [anon_sym_DASH] = ACTIONS(1990), [anon_sym_PLUS] = ACTIONS(1990), [anon_sym_STAR] = ACTIONS(1992), [anon_sym_AMP_AMP] = ACTIONS(1992), [anon_sym_AMP] = ACTIONS(1990), [anon_sym_SEMI] = ACTIONS(1992), [anon_sym_typedef] = ACTIONS(1990), [anon_sym_extern] = ACTIONS(1990), [anon_sym___attribute__] = ACTIONS(1990), [anon_sym_COLON_COLON] = ACTIONS(1992), [anon_sym_LBRACK_LBRACK] = ACTIONS(1992), [anon_sym___declspec] = ACTIONS(1990), [anon_sym___based] = ACTIONS(1990), [anon_sym___cdecl] = ACTIONS(1990), [anon_sym___clrcall] = ACTIONS(1990), [anon_sym___stdcall] = ACTIONS(1990), [anon_sym___fastcall] = ACTIONS(1990), [anon_sym___thiscall] = ACTIONS(1990), [anon_sym___vectorcall] = ACTIONS(1990), [anon_sym_LBRACE] = ACTIONS(1992), [anon_sym_LBRACK] = ACTIONS(1990), [anon_sym_static] = ACTIONS(1990), [anon_sym_register] = ACTIONS(1990), [anon_sym_inline] = ACTIONS(1990), [anon_sym_thread_local] = ACTIONS(1990), [anon_sym_const] = ACTIONS(1990), [anon_sym_volatile] = ACTIONS(1990), [anon_sym_restrict] = ACTIONS(1990), [anon_sym__Atomic] = ACTIONS(1990), [anon_sym_mutable] = ACTIONS(1990), [anon_sym_constexpr] = ACTIONS(1990), [anon_sym_signed] = ACTIONS(1990), [anon_sym_unsigned] = ACTIONS(1990), [anon_sym_long] = ACTIONS(1990), [anon_sym_short] = ACTIONS(1990), [sym_primitive_type] = ACTIONS(1990), [anon_sym_enum] = ACTIONS(1990), [anon_sym_class] = ACTIONS(1990), [anon_sym_struct] = ACTIONS(1990), [anon_sym_union] = ACTIONS(1990), [anon_sym_if] = ACTIONS(1990), [anon_sym_else] = ACTIONS(1990), [anon_sym_switch] = ACTIONS(1990), [anon_sym_case] = ACTIONS(1990), [anon_sym_default] = ACTIONS(1990), [anon_sym_while] = ACTIONS(1990), [anon_sym_do] = ACTIONS(1990), [anon_sym_for] = ACTIONS(1990), [anon_sym_return] = ACTIONS(1990), [anon_sym_break] = ACTIONS(1990), [anon_sym_continue] = ACTIONS(1990), [anon_sym_goto] = ACTIONS(1990), [anon_sym_DASH_DASH] = ACTIONS(1992), [anon_sym_PLUS_PLUS] = ACTIONS(1992), [anon_sym_sizeof] = ACTIONS(1990), [sym_number_literal] = ACTIONS(1992), [anon_sym_L_SQUOTE] = ACTIONS(1992), [anon_sym_u_SQUOTE] = ACTIONS(1992), [anon_sym_U_SQUOTE] = ACTIONS(1992), [anon_sym_u8_SQUOTE] = ACTIONS(1992), [anon_sym_SQUOTE] = ACTIONS(1992), [anon_sym_L_DQUOTE] = ACTIONS(1992), [anon_sym_u_DQUOTE] = ACTIONS(1992), [anon_sym_U_DQUOTE] = ACTIONS(1992), [anon_sym_u8_DQUOTE] = ACTIONS(1992), [anon_sym_DQUOTE] = ACTIONS(1992), [sym_true] = ACTIONS(1990), [sym_false] = ACTIONS(1990), [sym_null] = ACTIONS(1990), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1990), [anon_sym_virtual] = ACTIONS(1990), [anon_sym_explicit] = ACTIONS(1990), [sym_auto] = ACTIONS(1990), [anon_sym_typename] = ACTIONS(1990), [anon_sym_template] = ACTIONS(1990), [anon_sym_operator] = ACTIONS(1990), [anon_sym_delete] = ACTIONS(1990), [anon_sym_throw] = ACTIONS(1990), [anon_sym_namespace] = ACTIONS(1990), [anon_sym_using] = ACTIONS(1990), [anon_sym_static_assert] = ACTIONS(1990), [anon_sym_co_return] = ACTIONS(1990), [anon_sym_co_yield] = ACTIONS(1990), [anon_sym_try] = ACTIONS(1990), [anon_sym_co_await] = ACTIONS(1990), [anon_sym_new] = ACTIONS(1990), [sym_this] = ACTIONS(1990), [sym_nullptr] = ACTIONS(1990), [sym_raw_string_literal] = ACTIONS(1992), }, [328] = { [sym_compound_statement] = STATE(434), [sym_labeled_statement] = STATE(434), [sym_expression_statement] = STATE(434), [sym_if_statement] = STATE(434), [sym_switch_statement] = STATE(434), [sym_case_statement] = STATE(434), [sym_while_statement] = STATE(434), [sym_do_statement] = STATE(434), [sym_for_statement] = STATE(434), [sym_return_statement] = STATE(434), [sym_break_statement] = STATE(434), [sym_continue_statement] = STATE(434), [sym_goto_statement] = STATE(434), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(434), [sym_co_return_statement] = STATE(434), [sym_co_yield_statement] = STATE(434), [sym_throw_statement] = STATE(434), [sym_try_statement] = STATE(434), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [329] = { [sym_compound_statement] = STATE(336), [sym_labeled_statement] = STATE(336), [sym_expression_statement] = STATE(336), [sym_if_statement] = STATE(336), [sym_switch_statement] = STATE(336), [sym_case_statement] = STATE(336), [sym_while_statement] = STATE(336), [sym_do_statement] = STATE(336), [sym_for_statement] = STATE(336), [sym_return_statement] = STATE(336), [sym_break_statement] = STATE(336), [sym_continue_statement] = STATE(336), [sym_goto_statement] = STATE(336), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(336), [sym_co_return_statement] = STATE(336), [sym_co_yield_statement] = STATE(336), [sym_throw_statement] = STATE(336), [sym_try_statement] = STATE(336), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [330] = { [sym_compound_statement] = STATE(438), [sym_labeled_statement] = STATE(438), [sym_expression_statement] = STATE(438), [sym_if_statement] = STATE(438), [sym_switch_statement] = STATE(438), [sym_case_statement] = STATE(438), [sym_while_statement] = STATE(438), [sym_do_statement] = STATE(438), [sym_for_statement] = STATE(438), [sym_return_statement] = STATE(438), [sym_break_statement] = STATE(438), [sym_continue_statement] = STATE(438), [sym_goto_statement] = STATE(438), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(438), [sym_co_return_statement] = STATE(438), [sym_co_yield_statement] = STATE(438), [sym_throw_statement] = STATE(438), [sym_try_statement] = STATE(438), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [331] = { [sym_compound_statement] = STATE(152), [sym_labeled_statement] = STATE(152), [sym_expression_statement] = STATE(152), [sym_if_statement] = STATE(152), [sym_switch_statement] = STATE(152), [sym_case_statement] = STATE(152), [sym_while_statement] = STATE(152), [sym_do_statement] = STATE(152), [sym_for_statement] = STATE(152), [sym_return_statement] = STATE(152), [sym_break_statement] = STATE(152), [sym_continue_statement] = STATE(152), [sym_goto_statement] = STATE(152), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(152), [sym_co_return_statement] = STATE(152), [sym_co_yield_statement] = STATE(152), [sym_throw_statement] = STATE(152), [sym_try_statement] = STATE(152), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [332] = { [sym_compound_statement] = STATE(342), [sym_labeled_statement] = STATE(342), [sym_expression_statement] = STATE(342), [sym_if_statement] = STATE(342), [sym_switch_statement] = STATE(342), [sym_case_statement] = STATE(342), [sym_while_statement] = STATE(342), [sym_do_statement] = STATE(342), [sym_for_statement] = STATE(342), [sym_return_statement] = STATE(342), [sym_break_statement] = STATE(342), [sym_continue_statement] = STATE(342), [sym_goto_statement] = STATE(342), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(342), [sym_co_return_statement] = STATE(342), [sym_co_yield_statement] = STATE(342), [sym_throw_statement] = STATE(342), [sym_try_statement] = STATE(342), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [333] = { [sym_identifier] = ACTIONS(1994), [aux_sym_preproc_include_token1] = ACTIONS(1994), [aux_sym_preproc_def_token1] = ACTIONS(1994), [aux_sym_preproc_if_token1] = ACTIONS(1994), [aux_sym_preproc_if_token2] = ACTIONS(1994), [aux_sym_preproc_ifdef_token1] = ACTIONS(1994), [aux_sym_preproc_ifdef_token2] = ACTIONS(1994), [aux_sym_preproc_else_token1] = ACTIONS(1994), [aux_sym_preproc_elif_token1] = ACTIONS(1994), [sym_preproc_directive] = ACTIONS(1994), [anon_sym_LPAREN2] = ACTIONS(1996), [anon_sym_BANG] = ACTIONS(1996), [anon_sym_TILDE] = ACTIONS(1996), [anon_sym_DASH] = ACTIONS(1994), [anon_sym_PLUS] = ACTIONS(1994), [anon_sym_STAR] = ACTIONS(1996), [anon_sym_AMP_AMP] = ACTIONS(1996), [anon_sym_AMP] = ACTIONS(1994), [anon_sym_SEMI] = ACTIONS(1996), [anon_sym_typedef] = ACTIONS(1994), [anon_sym_extern] = ACTIONS(1994), [anon_sym___attribute__] = ACTIONS(1994), [anon_sym_COLON_COLON] = ACTIONS(1996), [anon_sym_LBRACK_LBRACK] = ACTIONS(1996), [anon_sym___declspec] = ACTIONS(1994), [anon_sym___based] = ACTIONS(1994), [anon_sym___cdecl] = ACTIONS(1994), [anon_sym___clrcall] = ACTIONS(1994), [anon_sym___stdcall] = ACTIONS(1994), [anon_sym___fastcall] = ACTIONS(1994), [anon_sym___thiscall] = ACTIONS(1994), [anon_sym___vectorcall] = ACTIONS(1994), [anon_sym_LBRACE] = ACTIONS(1996), [anon_sym_LBRACK] = ACTIONS(1994), [anon_sym_static] = ACTIONS(1994), [anon_sym_register] = ACTIONS(1994), [anon_sym_inline] = ACTIONS(1994), [anon_sym_thread_local] = ACTIONS(1994), [anon_sym_const] = ACTIONS(1994), [anon_sym_volatile] = ACTIONS(1994), [anon_sym_restrict] = ACTIONS(1994), [anon_sym__Atomic] = ACTIONS(1994), [anon_sym_mutable] = ACTIONS(1994), [anon_sym_constexpr] = ACTIONS(1994), [anon_sym_signed] = ACTIONS(1994), [anon_sym_unsigned] = ACTIONS(1994), [anon_sym_long] = ACTIONS(1994), [anon_sym_short] = ACTIONS(1994), [sym_primitive_type] = ACTIONS(1994), [anon_sym_enum] = ACTIONS(1994), [anon_sym_class] = ACTIONS(1994), [anon_sym_struct] = ACTIONS(1994), [anon_sym_union] = ACTIONS(1994), [anon_sym_if] = ACTIONS(1994), [anon_sym_else] = ACTIONS(1994), [anon_sym_switch] = ACTIONS(1994), [anon_sym_case] = ACTIONS(1994), [anon_sym_default] = ACTIONS(1994), [anon_sym_while] = ACTIONS(1994), [anon_sym_do] = ACTIONS(1994), [anon_sym_for] = ACTIONS(1994), [anon_sym_return] = ACTIONS(1994), [anon_sym_break] = ACTIONS(1994), [anon_sym_continue] = ACTIONS(1994), [anon_sym_goto] = ACTIONS(1994), [anon_sym_DASH_DASH] = ACTIONS(1996), [anon_sym_PLUS_PLUS] = ACTIONS(1996), [anon_sym_sizeof] = ACTIONS(1994), [sym_number_literal] = ACTIONS(1996), [anon_sym_L_SQUOTE] = ACTIONS(1996), [anon_sym_u_SQUOTE] = ACTIONS(1996), [anon_sym_U_SQUOTE] = ACTIONS(1996), [anon_sym_u8_SQUOTE] = ACTIONS(1996), [anon_sym_SQUOTE] = ACTIONS(1996), [anon_sym_L_DQUOTE] = ACTIONS(1996), [anon_sym_u_DQUOTE] = ACTIONS(1996), [anon_sym_U_DQUOTE] = ACTIONS(1996), [anon_sym_u8_DQUOTE] = ACTIONS(1996), [anon_sym_DQUOTE] = ACTIONS(1996), [sym_true] = ACTIONS(1994), [sym_false] = ACTIONS(1994), [sym_null] = ACTIONS(1994), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1994), [anon_sym_virtual] = ACTIONS(1994), [anon_sym_explicit] = ACTIONS(1994), [sym_auto] = ACTIONS(1994), [anon_sym_typename] = ACTIONS(1994), [anon_sym_template] = ACTIONS(1994), [anon_sym_operator] = ACTIONS(1994), [anon_sym_delete] = ACTIONS(1994), [anon_sym_throw] = ACTIONS(1994), [anon_sym_namespace] = ACTIONS(1994), [anon_sym_using] = ACTIONS(1994), [anon_sym_static_assert] = ACTIONS(1994), [anon_sym_co_return] = ACTIONS(1994), [anon_sym_co_yield] = ACTIONS(1994), [anon_sym_try] = ACTIONS(1994), [anon_sym_co_await] = ACTIONS(1994), [anon_sym_new] = ACTIONS(1994), [sym_this] = ACTIONS(1994), [sym_nullptr] = ACTIONS(1994), [sym_raw_string_literal] = ACTIONS(1996), }, [334] = { [sym_identifier] = ACTIONS(1998), [aux_sym_preproc_include_token1] = ACTIONS(1998), [aux_sym_preproc_def_token1] = ACTIONS(1998), [aux_sym_preproc_if_token1] = ACTIONS(1998), [aux_sym_preproc_if_token2] = ACTIONS(1998), [aux_sym_preproc_ifdef_token1] = ACTIONS(1998), [aux_sym_preproc_ifdef_token2] = ACTIONS(1998), [aux_sym_preproc_else_token1] = ACTIONS(1998), [aux_sym_preproc_elif_token1] = ACTIONS(1998), [sym_preproc_directive] = ACTIONS(1998), [anon_sym_LPAREN2] = ACTIONS(2000), [anon_sym_BANG] = ACTIONS(2000), [anon_sym_TILDE] = ACTIONS(2000), [anon_sym_DASH] = ACTIONS(1998), [anon_sym_PLUS] = ACTIONS(1998), [anon_sym_STAR] = ACTIONS(2000), [anon_sym_AMP_AMP] = ACTIONS(2000), [anon_sym_AMP] = ACTIONS(1998), [anon_sym_SEMI] = ACTIONS(2000), [anon_sym_typedef] = ACTIONS(1998), [anon_sym_extern] = ACTIONS(1998), [anon_sym___attribute__] = ACTIONS(1998), [anon_sym_COLON_COLON] = ACTIONS(2000), [anon_sym_LBRACK_LBRACK] = ACTIONS(2000), [anon_sym___declspec] = ACTIONS(1998), [anon_sym___based] = ACTIONS(1998), [anon_sym___cdecl] = ACTIONS(1998), [anon_sym___clrcall] = ACTIONS(1998), [anon_sym___stdcall] = ACTIONS(1998), [anon_sym___fastcall] = ACTIONS(1998), [anon_sym___thiscall] = ACTIONS(1998), [anon_sym___vectorcall] = ACTIONS(1998), [anon_sym_LBRACE] = ACTIONS(2000), [anon_sym_LBRACK] = ACTIONS(1998), [anon_sym_static] = ACTIONS(1998), [anon_sym_register] = ACTIONS(1998), [anon_sym_inline] = ACTIONS(1998), [anon_sym_thread_local] = ACTIONS(1998), [anon_sym_const] = ACTIONS(1998), [anon_sym_volatile] = ACTIONS(1998), [anon_sym_restrict] = ACTIONS(1998), [anon_sym__Atomic] = ACTIONS(1998), [anon_sym_mutable] = ACTIONS(1998), [anon_sym_constexpr] = ACTIONS(1998), [anon_sym_signed] = ACTIONS(1998), [anon_sym_unsigned] = ACTIONS(1998), [anon_sym_long] = ACTIONS(1998), [anon_sym_short] = ACTIONS(1998), [sym_primitive_type] = ACTIONS(1998), [anon_sym_enum] = ACTIONS(1998), [anon_sym_class] = ACTIONS(1998), [anon_sym_struct] = ACTIONS(1998), [anon_sym_union] = ACTIONS(1998), [anon_sym_if] = ACTIONS(1998), [anon_sym_else] = ACTIONS(1998), [anon_sym_switch] = ACTIONS(1998), [anon_sym_case] = ACTIONS(1998), [anon_sym_default] = ACTIONS(1998), [anon_sym_while] = ACTIONS(1998), [anon_sym_do] = ACTIONS(1998), [anon_sym_for] = ACTIONS(1998), [anon_sym_return] = ACTIONS(1998), [anon_sym_break] = ACTIONS(1998), [anon_sym_continue] = ACTIONS(1998), [anon_sym_goto] = ACTIONS(1998), [anon_sym_DASH_DASH] = ACTIONS(2000), [anon_sym_PLUS_PLUS] = ACTIONS(2000), [anon_sym_sizeof] = ACTIONS(1998), [sym_number_literal] = ACTIONS(2000), [anon_sym_L_SQUOTE] = ACTIONS(2000), [anon_sym_u_SQUOTE] = ACTIONS(2000), [anon_sym_U_SQUOTE] = ACTIONS(2000), [anon_sym_u8_SQUOTE] = ACTIONS(2000), [anon_sym_SQUOTE] = ACTIONS(2000), [anon_sym_L_DQUOTE] = ACTIONS(2000), [anon_sym_u_DQUOTE] = ACTIONS(2000), [anon_sym_U_DQUOTE] = ACTIONS(2000), [anon_sym_u8_DQUOTE] = ACTIONS(2000), [anon_sym_DQUOTE] = ACTIONS(2000), [sym_true] = ACTIONS(1998), [sym_false] = ACTIONS(1998), [sym_null] = ACTIONS(1998), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1998), [anon_sym_virtual] = ACTIONS(1998), [anon_sym_explicit] = ACTIONS(1998), [sym_auto] = ACTIONS(1998), [anon_sym_typename] = ACTIONS(1998), [anon_sym_template] = ACTIONS(1998), [anon_sym_operator] = ACTIONS(1998), [anon_sym_delete] = ACTIONS(1998), [anon_sym_throw] = ACTIONS(1998), [anon_sym_namespace] = ACTIONS(1998), [anon_sym_using] = ACTIONS(1998), [anon_sym_static_assert] = ACTIONS(1998), [anon_sym_co_return] = ACTIONS(1998), [anon_sym_co_yield] = ACTIONS(1998), [anon_sym_try] = ACTIONS(1998), [anon_sym_co_await] = ACTIONS(1998), [anon_sym_new] = ACTIONS(1998), [sym_this] = ACTIONS(1998), [sym_nullptr] = ACTIONS(1998), [sym_raw_string_literal] = ACTIONS(2000), }, [335] = { [sym_compound_statement] = STATE(346), [sym_labeled_statement] = STATE(346), [sym_expression_statement] = STATE(346), [sym_if_statement] = STATE(346), [sym_switch_statement] = STATE(346), [sym_case_statement] = STATE(346), [sym_while_statement] = STATE(346), [sym_do_statement] = STATE(346), [sym_for_statement] = STATE(346), [sym_return_statement] = STATE(346), [sym_break_statement] = STATE(346), [sym_continue_statement] = STATE(346), [sym_goto_statement] = STATE(346), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(346), [sym_co_return_statement] = STATE(346), [sym_co_yield_statement] = STATE(346), [sym_throw_statement] = STATE(346), [sym_try_statement] = STATE(346), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [336] = { [sym_identifier] = ACTIONS(2002), [aux_sym_preproc_include_token1] = ACTIONS(2002), [aux_sym_preproc_def_token1] = ACTIONS(2002), [aux_sym_preproc_if_token1] = ACTIONS(2002), [aux_sym_preproc_if_token2] = ACTIONS(2002), [aux_sym_preproc_ifdef_token1] = ACTIONS(2002), [aux_sym_preproc_ifdef_token2] = ACTIONS(2002), [aux_sym_preproc_else_token1] = ACTIONS(2002), [aux_sym_preproc_elif_token1] = ACTIONS(2002), [sym_preproc_directive] = ACTIONS(2002), [anon_sym_LPAREN2] = ACTIONS(2004), [anon_sym_BANG] = ACTIONS(2004), [anon_sym_TILDE] = ACTIONS(2004), [anon_sym_DASH] = ACTIONS(2002), [anon_sym_PLUS] = ACTIONS(2002), [anon_sym_STAR] = ACTIONS(2004), [anon_sym_AMP_AMP] = ACTIONS(2004), [anon_sym_AMP] = ACTIONS(2002), [anon_sym_SEMI] = ACTIONS(2004), [anon_sym_typedef] = ACTIONS(2002), [anon_sym_extern] = ACTIONS(2002), [anon_sym___attribute__] = ACTIONS(2002), [anon_sym_COLON_COLON] = ACTIONS(2004), [anon_sym_LBRACK_LBRACK] = ACTIONS(2004), [anon_sym___declspec] = ACTIONS(2002), [anon_sym___based] = ACTIONS(2002), [anon_sym___cdecl] = ACTIONS(2002), [anon_sym___clrcall] = ACTIONS(2002), [anon_sym___stdcall] = ACTIONS(2002), [anon_sym___fastcall] = ACTIONS(2002), [anon_sym___thiscall] = ACTIONS(2002), [anon_sym___vectorcall] = ACTIONS(2002), [anon_sym_LBRACE] = ACTIONS(2004), [anon_sym_LBRACK] = ACTIONS(2002), [anon_sym_static] = ACTIONS(2002), [anon_sym_register] = ACTIONS(2002), [anon_sym_inline] = ACTIONS(2002), [anon_sym_thread_local] = ACTIONS(2002), [anon_sym_const] = ACTIONS(2002), [anon_sym_volatile] = ACTIONS(2002), [anon_sym_restrict] = ACTIONS(2002), [anon_sym__Atomic] = ACTIONS(2002), [anon_sym_mutable] = ACTIONS(2002), [anon_sym_constexpr] = ACTIONS(2002), [anon_sym_signed] = ACTIONS(2002), [anon_sym_unsigned] = ACTIONS(2002), [anon_sym_long] = ACTIONS(2002), [anon_sym_short] = ACTIONS(2002), [sym_primitive_type] = ACTIONS(2002), [anon_sym_enum] = ACTIONS(2002), [anon_sym_class] = ACTIONS(2002), [anon_sym_struct] = ACTIONS(2002), [anon_sym_union] = ACTIONS(2002), [anon_sym_if] = ACTIONS(2002), [anon_sym_else] = ACTIONS(2002), [anon_sym_switch] = ACTIONS(2002), [anon_sym_case] = ACTIONS(2002), [anon_sym_default] = ACTIONS(2002), [anon_sym_while] = ACTIONS(2002), [anon_sym_do] = ACTIONS(2002), [anon_sym_for] = ACTIONS(2002), [anon_sym_return] = ACTIONS(2002), [anon_sym_break] = ACTIONS(2002), [anon_sym_continue] = ACTIONS(2002), [anon_sym_goto] = ACTIONS(2002), [anon_sym_DASH_DASH] = ACTIONS(2004), [anon_sym_PLUS_PLUS] = ACTIONS(2004), [anon_sym_sizeof] = ACTIONS(2002), [sym_number_literal] = ACTIONS(2004), [anon_sym_L_SQUOTE] = ACTIONS(2004), [anon_sym_u_SQUOTE] = ACTIONS(2004), [anon_sym_U_SQUOTE] = ACTIONS(2004), [anon_sym_u8_SQUOTE] = ACTIONS(2004), [anon_sym_SQUOTE] = ACTIONS(2004), [anon_sym_L_DQUOTE] = ACTIONS(2004), [anon_sym_u_DQUOTE] = ACTIONS(2004), [anon_sym_U_DQUOTE] = ACTIONS(2004), [anon_sym_u8_DQUOTE] = ACTIONS(2004), [anon_sym_DQUOTE] = ACTIONS(2004), [sym_true] = ACTIONS(2002), [sym_false] = ACTIONS(2002), [sym_null] = ACTIONS(2002), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2002), [anon_sym_virtual] = ACTIONS(2002), [anon_sym_explicit] = ACTIONS(2002), [sym_auto] = ACTIONS(2002), [anon_sym_typename] = ACTIONS(2002), [anon_sym_template] = ACTIONS(2002), [anon_sym_operator] = ACTIONS(2002), [anon_sym_delete] = ACTIONS(2002), [anon_sym_throw] = ACTIONS(2002), [anon_sym_namespace] = ACTIONS(2002), [anon_sym_using] = ACTIONS(2002), [anon_sym_static_assert] = ACTIONS(2002), [anon_sym_co_return] = ACTIONS(2002), [anon_sym_co_yield] = ACTIONS(2002), [anon_sym_try] = ACTIONS(2002), [anon_sym_co_await] = ACTIONS(2002), [anon_sym_new] = ACTIONS(2002), [sym_this] = ACTIONS(2002), [sym_nullptr] = ACTIONS(2002), [sym_raw_string_literal] = ACTIONS(2004), }, [337] = { [sym_compound_statement] = STATE(584), [sym_labeled_statement] = STATE(584), [sym_expression_statement] = STATE(584), [sym_if_statement] = STATE(584), [sym_switch_statement] = STATE(584), [sym_case_statement] = STATE(584), [sym_while_statement] = STATE(584), [sym_do_statement] = STATE(584), [sym_for_statement] = STATE(584), [sym_return_statement] = STATE(584), [sym_break_statement] = STATE(584), [sym_continue_statement] = STATE(584), [sym_goto_statement] = STATE(584), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(584), [sym_co_return_statement] = STATE(584), [sym_co_yield_statement] = STATE(584), [sym_throw_statement] = STATE(584), [sym_try_statement] = STATE(584), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [338] = { [sym_compound_statement] = STATE(299), [sym_labeled_statement] = STATE(299), [sym_expression_statement] = STATE(299), [sym_if_statement] = STATE(299), [sym_switch_statement] = STATE(299), [sym_case_statement] = STATE(299), [sym_while_statement] = STATE(299), [sym_do_statement] = STATE(299), [sym_for_statement] = STATE(299), [sym_return_statement] = STATE(299), [sym_break_statement] = STATE(299), [sym_continue_statement] = STATE(299), [sym_goto_statement] = STATE(299), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(299), [sym_co_return_statement] = STATE(299), [sym_co_yield_statement] = STATE(299), [sym_throw_statement] = STATE(299), [sym_try_statement] = STATE(299), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [339] = { [sym_compound_statement] = STATE(350), [sym_labeled_statement] = STATE(350), [sym_expression_statement] = STATE(350), [sym_if_statement] = STATE(350), [sym_switch_statement] = STATE(350), [sym_case_statement] = STATE(350), [sym_while_statement] = STATE(350), [sym_do_statement] = STATE(350), [sym_for_statement] = STATE(350), [sym_return_statement] = STATE(350), [sym_break_statement] = STATE(350), [sym_continue_statement] = STATE(350), [sym_goto_statement] = STATE(350), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(350), [sym_co_return_statement] = STATE(350), [sym_co_yield_statement] = STATE(350), [sym_throw_statement] = STATE(350), [sym_try_statement] = STATE(350), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [340] = { [sym_compound_statement] = STATE(351), [sym_labeled_statement] = STATE(352), [sym_expression_statement] = STATE(354), [sym_if_statement] = STATE(355), [sym_switch_statement] = STATE(356), [sym_case_statement] = STATE(357), [sym_while_statement] = STATE(316), [sym_do_statement] = STATE(279), [sym_for_statement] = STATE(266), [sym_return_statement] = STATE(265), [sym_break_statement] = STATE(264), [sym_continue_statement] = STATE(263), [sym_goto_statement] = STATE(262), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(256), [sym_co_return_statement] = STATE(255), [sym_co_yield_statement] = STATE(254), [sym_throw_statement] = STATE(252), [sym_try_statement] = STATE(251), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [341] = { [sym_compound_statement] = STATE(247), [sym_labeled_statement] = STATE(243), [sym_expression_statement] = STATE(237), [sym_if_statement] = STATE(234), [sym_switch_statement] = STATE(228), [sym_case_statement] = STATE(227), [sym_while_statement] = STATE(224), [sym_do_statement] = STATE(223), [sym_for_statement] = STATE(221), [sym_return_statement] = STATE(220), [sym_break_statement] = STATE(217), [sym_continue_statement] = STATE(216), [sym_goto_statement] = STATE(215), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(214), [sym_co_return_statement] = STATE(213), [sym_co_yield_statement] = STATE(211), [sym_throw_statement] = STATE(209), [sym_try_statement] = STATE(208), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [342] = { [sym_identifier] = ACTIONS(2006), [aux_sym_preproc_include_token1] = ACTIONS(2006), [aux_sym_preproc_def_token1] = ACTIONS(2006), [aux_sym_preproc_if_token1] = ACTIONS(2006), [aux_sym_preproc_if_token2] = ACTIONS(2006), [aux_sym_preproc_ifdef_token1] = ACTIONS(2006), [aux_sym_preproc_ifdef_token2] = ACTIONS(2006), [aux_sym_preproc_else_token1] = ACTIONS(2006), [aux_sym_preproc_elif_token1] = ACTIONS(2006), [sym_preproc_directive] = ACTIONS(2006), [anon_sym_LPAREN2] = ACTIONS(2008), [anon_sym_BANG] = ACTIONS(2008), [anon_sym_TILDE] = ACTIONS(2008), [anon_sym_DASH] = ACTIONS(2006), [anon_sym_PLUS] = ACTIONS(2006), [anon_sym_STAR] = ACTIONS(2008), [anon_sym_AMP_AMP] = ACTIONS(2008), [anon_sym_AMP] = ACTIONS(2006), [anon_sym_SEMI] = ACTIONS(2008), [anon_sym_typedef] = ACTIONS(2006), [anon_sym_extern] = ACTIONS(2006), [anon_sym___attribute__] = ACTIONS(2006), [anon_sym_COLON_COLON] = ACTIONS(2008), [anon_sym_LBRACK_LBRACK] = ACTIONS(2008), [anon_sym___declspec] = ACTIONS(2006), [anon_sym___based] = ACTIONS(2006), [anon_sym___cdecl] = ACTIONS(2006), [anon_sym___clrcall] = ACTIONS(2006), [anon_sym___stdcall] = ACTIONS(2006), [anon_sym___fastcall] = ACTIONS(2006), [anon_sym___thiscall] = ACTIONS(2006), [anon_sym___vectorcall] = ACTIONS(2006), [anon_sym_LBRACE] = ACTIONS(2008), [anon_sym_LBRACK] = ACTIONS(2006), [anon_sym_static] = ACTIONS(2006), [anon_sym_register] = ACTIONS(2006), [anon_sym_inline] = ACTIONS(2006), [anon_sym_thread_local] = ACTIONS(2006), [anon_sym_const] = ACTIONS(2006), [anon_sym_volatile] = ACTIONS(2006), [anon_sym_restrict] = ACTIONS(2006), [anon_sym__Atomic] = ACTIONS(2006), [anon_sym_mutable] = ACTIONS(2006), [anon_sym_constexpr] = ACTIONS(2006), [anon_sym_signed] = ACTIONS(2006), [anon_sym_unsigned] = ACTIONS(2006), [anon_sym_long] = ACTIONS(2006), [anon_sym_short] = ACTIONS(2006), [sym_primitive_type] = ACTIONS(2006), [anon_sym_enum] = ACTIONS(2006), [anon_sym_class] = ACTIONS(2006), [anon_sym_struct] = ACTIONS(2006), [anon_sym_union] = ACTIONS(2006), [anon_sym_if] = ACTIONS(2006), [anon_sym_else] = ACTIONS(2006), [anon_sym_switch] = ACTIONS(2006), [anon_sym_case] = ACTIONS(2006), [anon_sym_default] = ACTIONS(2006), [anon_sym_while] = ACTIONS(2006), [anon_sym_do] = ACTIONS(2006), [anon_sym_for] = ACTIONS(2006), [anon_sym_return] = ACTIONS(2006), [anon_sym_break] = ACTIONS(2006), [anon_sym_continue] = ACTIONS(2006), [anon_sym_goto] = ACTIONS(2006), [anon_sym_DASH_DASH] = ACTIONS(2008), [anon_sym_PLUS_PLUS] = ACTIONS(2008), [anon_sym_sizeof] = ACTIONS(2006), [sym_number_literal] = ACTIONS(2008), [anon_sym_L_SQUOTE] = ACTIONS(2008), [anon_sym_u_SQUOTE] = ACTIONS(2008), [anon_sym_U_SQUOTE] = ACTIONS(2008), [anon_sym_u8_SQUOTE] = ACTIONS(2008), [anon_sym_SQUOTE] = ACTIONS(2008), [anon_sym_L_DQUOTE] = ACTIONS(2008), [anon_sym_u_DQUOTE] = ACTIONS(2008), [anon_sym_U_DQUOTE] = ACTIONS(2008), [anon_sym_u8_DQUOTE] = ACTIONS(2008), [anon_sym_DQUOTE] = ACTIONS(2008), [sym_true] = ACTIONS(2006), [sym_false] = ACTIONS(2006), [sym_null] = ACTIONS(2006), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2006), [anon_sym_virtual] = ACTIONS(2006), [anon_sym_explicit] = ACTIONS(2006), [sym_auto] = ACTIONS(2006), [anon_sym_typename] = ACTIONS(2006), [anon_sym_template] = ACTIONS(2006), [anon_sym_operator] = ACTIONS(2006), [anon_sym_delete] = ACTIONS(2006), [anon_sym_throw] = ACTIONS(2006), [anon_sym_namespace] = ACTIONS(2006), [anon_sym_using] = ACTIONS(2006), [anon_sym_static_assert] = ACTIONS(2006), [anon_sym_co_return] = ACTIONS(2006), [anon_sym_co_yield] = ACTIONS(2006), [anon_sym_try] = ACTIONS(2006), [anon_sym_co_await] = ACTIONS(2006), [anon_sym_new] = ACTIONS(2006), [sym_this] = ACTIONS(2006), [sym_nullptr] = ACTIONS(2006), [sym_raw_string_literal] = ACTIONS(2008), }, [343] = { [sym_compound_statement] = STATE(207), [sym_labeled_statement] = STATE(207), [sym_expression_statement] = STATE(207), [sym_if_statement] = STATE(207), [sym_switch_statement] = STATE(207), [sym_case_statement] = STATE(207), [sym_while_statement] = STATE(207), [sym_do_statement] = STATE(207), [sym_for_statement] = STATE(207), [sym_return_statement] = STATE(207), [sym_break_statement] = STATE(207), [sym_continue_statement] = STATE(207), [sym_goto_statement] = STATE(207), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(207), [sym_co_return_statement] = STATE(207), [sym_co_yield_statement] = STATE(207), [sym_throw_statement] = STATE(207), [sym_try_statement] = STATE(207), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_case] = ACTIONS(251), [anon_sym_default] = ACTIONS(253), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [344] = { [sym_compound_statement] = STATE(585), [sym_labeled_statement] = STATE(581), [sym_expression_statement] = STATE(579), [sym_if_statement] = STATE(546), [sym_switch_statement] = STATE(541), [sym_case_statement] = STATE(617), [sym_while_statement] = STATE(505), [sym_do_statement] = STATE(500), [sym_for_statement] = STATE(494), [sym_return_statement] = STATE(477), [sym_break_statement] = STATE(476), [sym_continue_statement] = STATE(475), [sym_goto_statement] = STATE(467), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(435), [sym_co_return_statement] = STATE(433), [sym_co_yield_statement] = STATE(427), [sym_throw_statement] = STATE(423), [sym_try_statement] = STATE(442), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [345] = { [sym_compound_statement] = STATE(425), [sym_labeled_statement] = STATE(425), [sym_expression_statement] = STATE(425), [sym_if_statement] = STATE(425), [sym_switch_statement] = STATE(425), [sym_case_statement] = STATE(425), [sym_while_statement] = STATE(425), [sym_do_statement] = STATE(425), [sym_for_statement] = STATE(425), [sym_return_statement] = STATE(425), [sym_break_statement] = STATE(425), [sym_continue_statement] = STATE(425), [sym_goto_statement] = STATE(425), [sym__expression] = STATE(2867), [sym_comma_expression] = STATE(5353), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(425), [sym_co_return_statement] = STATE(425), [sym_co_yield_statement] = STATE(425), [sym_throw_statement] = STATE(425), [sym_try_statement] = STATE(425), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1726), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(155), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(522), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(167), [anon_sym_switch] = ACTIONS(169), [anon_sym_case] = ACTIONS(171), [anon_sym_default] = ACTIONS(173), [anon_sym_while] = ACTIONS(175), [anon_sym_do] = ACTIONS(177), [anon_sym_for] = ACTIONS(179), [anon_sym_return] = ACTIONS(181), [anon_sym_break] = ACTIONS(183), [anon_sym_continue] = ACTIONS(185), [anon_sym_goto] = ACTIONS(187), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(193), [anon_sym_co_return] = ACTIONS(201), [anon_sym_co_yield] = ACTIONS(203), [anon_sym_try] = ACTIONS(205), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [346] = { [sym_identifier] = ACTIONS(2010), [aux_sym_preproc_include_token1] = ACTIONS(2010), [aux_sym_preproc_def_token1] = ACTIONS(2010), [aux_sym_preproc_if_token1] = ACTIONS(2010), [aux_sym_preproc_if_token2] = ACTIONS(2010), [aux_sym_preproc_ifdef_token1] = ACTIONS(2010), [aux_sym_preproc_ifdef_token2] = ACTIONS(2010), [aux_sym_preproc_else_token1] = ACTIONS(2010), [aux_sym_preproc_elif_token1] = ACTIONS(2010), [sym_preproc_directive] = ACTIONS(2010), [anon_sym_LPAREN2] = ACTIONS(2012), [anon_sym_BANG] = ACTIONS(2012), [anon_sym_TILDE] = ACTIONS(2012), [anon_sym_DASH] = ACTIONS(2010), [anon_sym_PLUS] = ACTIONS(2010), [anon_sym_STAR] = ACTIONS(2012), [anon_sym_AMP_AMP] = ACTIONS(2012), [anon_sym_AMP] = ACTIONS(2010), [anon_sym_SEMI] = ACTIONS(2012), [anon_sym_typedef] = ACTIONS(2010), [anon_sym_extern] = ACTIONS(2010), [anon_sym___attribute__] = ACTIONS(2010), [anon_sym_COLON_COLON] = ACTIONS(2012), [anon_sym_LBRACK_LBRACK] = ACTIONS(2012), [anon_sym___declspec] = ACTIONS(2010), [anon_sym___based] = ACTIONS(2010), [anon_sym___cdecl] = ACTIONS(2010), [anon_sym___clrcall] = ACTIONS(2010), [anon_sym___stdcall] = ACTIONS(2010), [anon_sym___fastcall] = ACTIONS(2010), [anon_sym___thiscall] = ACTIONS(2010), [anon_sym___vectorcall] = ACTIONS(2010), [anon_sym_LBRACE] = ACTIONS(2012), [anon_sym_LBRACK] = ACTIONS(2010), [anon_sym_static] = ACTIONS(2010), [anon_sym_register] = ACTIONS(2010), [anon_sym_inline] = ACTIONS(2010), [anon_sym_thread_local] = ACTIONS(2010), [anon_sym_const] = ACTIONS(2010), [anon_sym_volatile] = ACTIONS(2010), [anon_sym_restrict] = ACTIONS(2010), [anon_sym__Atomic] = ACTIONS(2010), [anon_sym_mutable] = ACTIONS(2010), [anon_sym_constexpr] = ACTIONS(2010), [anon_sym_signed] = ACTIONS(2010), [anon_sym_unsigned] = ACTIONS(2010), [anon_sym_long] = ACTIONS(2010), [anon_sym_short] = ACTIONS(2010), [sym_primitive_type] = ACTIONS(2010), [anon_sym_enum] = ACTIONS(2010), [anon_sym_class] = ACTIONS(2010), [anon_sym_struct] = ACTIONS(2010), [anon_sym_union] = ACTIONS(2010), [anon_sym_if] = ACTIONS(2010), [anon_sym_else] = ACTIONS(2010), [anon_sym_switch] = ACTIONS(2010), [anon_sym_case] = ACTIONS(2010), [anon_sym_default] = ACTIONS(2010), [anon_sym_while] = ACTIONS(2010), [anon_sym_do] = ACTIONS(2010), [anon_sym_for] = ACTIONS(2010), [anon_sym_return] = ACTIONS(2010), [anon_sym_break] = ACTIONS(2010), [anon_sym_continue] = ACTIONS(2010), [anon_sym_goto] = ACTIONS(2010), [anon_sym_DASH_DASH] = ACTIONS(2012), [anon_sym_PLUS_PLUS] = ACTIONS(2012), [anon_sym_sizeof] = ACTIONS(2010), [sym_number_literal] = ACTIONS(2012), [anon_sym_L_SQUOTE] = ACTIONS(2012), [anon_sym_u_SQUOTE] = ACTIONS(2012), [anon_sym_U_SQUOTE] = ACTIONS(2012), [anon_sym_u8_SQUOTE] = ACTIONS(2012), [anon_sym_SQUOTE] = ACTIONS(2012), [anon_sym_L_DQUOTE] = ACTIONS(2012), [anon_sym_u_DQUOTE] = ACTIONS(2012), [anon_sym_U_DQUOTE] = ACTIONS(2012), [anon_sym_u8_DQUOTE] = ACTIONS(2012), [anon_sym_DQUOTE] = ACTIONS(2012), [sym_true] = ACTIONS(2010), [sym_false] = ACTIONS(2010), [sym_null] = ACTIONS(2010), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2010), [anon_sym_virtual] = ACTIONS(2010), [anon_sym_explicit] = ACTIONS(2010), [sym_auto] = ACTIONS(2010), [anon_sym_typename] = ACTIONS(2010), [anon_sym_template] = ACTIONS(2010), [anon_sym_operator] = ACTIONS(2010), [anon_sym_delete] = ACTIONS(2010), [anon_sym_throw] = ACTIONS(2010), [anon_sym_namespace] = ACTIONS(2010), [anon_sym_using] = ACTIONS(2010), [anon_sym_static_assert] = ACTIONS(2010), [anon_sym_co_return] = ACTIONS(2010), [anon_sym_co_yield] = ACTIONS(2010), [anon_sym_try] = ACTIONS(2010), [anon_sym_co_await] = ACTIONS(2010), [anon_sym_new] = ACTIONS(2010), [sym_this] = ACTIONS(2010), [sym_nullptr] = ACTIONS(2010), [sym_raw_string_literal] = ACTIONS(2012), }, [347] = { [sym_compound_statement] = STATE(627), [sym_labeled_statement] = STATE(628), [sym_expression_statement] = STATE(632), [sym_if_statement] = STATE(633), [sym_switch_statement] = STATE(636), [sym_case_statement] = STATE(638), [sym_while_statement] = STATE(647), [sym_do_statement] = STATE(650), [sym_for_statement] = STATE(643), [sym_return_statement] = STATE(641), [sym_break_statement] = STATE(624), [sym_continue_statement] = STATE(621), [sym_goto_statement] = STATE(620), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(596), [sym_co_return_statement] = STATE(594), [sym_co_yield_statement] = STATE(592), [sym_throw_statement] = STATE(591), [sym_try_statement] = STATE(590), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [348] = { [sym_compound_statement] = STATE(623), [sym_labeled_statement] = STATE(623), [sym_expression_statement] = STATE(623), [sym_if_statement] = STATE(623), [sym_switch_statement] = STATE(623), [sym_case_statement] = STATE(623), [sym_while_statement] = STATE(623), [sym_do_statement] = STATE(623), [sym_for_statement] = STATE(623), [sym_return_statement] = STATE(623), [sym_break_statement] = STATE(623), [sym_continue_statement] = STATE(623), [sym_goto_statement] = STATE(623), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(623), [sym_co_return_statement] = STATE(623), [sym_co_yield_statement] = STATE(623), [sym_throw_statement] = STATE(623), [sym_try_statement] = STATE(623), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [349] = { [sym_attribute_declaration] = STATE(1376), [sym_compound_statement] = STATE(313), [sym_labeled_statement] = STATE(313), [sym_expression_statement] = STATE(313), [sym_if_statement] = STATE(313), [sym_switch_statement] = STATE(313), [sym_while_statement] = STATE(313), [sym_do_statement] = STATE(313), [sym_for_statement] = STATE(313), [sym_return_statement] = STATE(313), [sym_break_statement] = STATE(313), [sym_continue_statement] = STATE(313), [sym_goto_statement] = STATE(313), [sym__expression] = STATE(2812), [sym_comma_expression] = STATE(5130), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(313), [sym_co_return_statement] = STATE(313), [sym_co_yield_statement] = STATE(313), [sym_throw_statement] = STATE(313), [sym_try_statement] = STATE(313), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_attributed_declarator_repeat1] = STATE(1376), [sym_identifier] = ACTIONS(1745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(239), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK_LBRACK] = ACTIONS(927), [anon_sym_LBRACE] = ACTIONS(245), [anon_sym_LBRACK] = ACTIONS(929), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(247), [anon_sym_switch] = ACTIONS(249), [anon_sym_while] = ACTIONS(255), [anon_sym_do] = ACTIONS(257), [anon_sym_for] = ACTIONS(259), [anon_sym_return] = ACTIONS(261), [anon_sym_break] = ACTIONS(263), [anon_sym_continue] = ACTIONS(265), [anon_sym_goto] = ACTIONS(267), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(271), [anon_sym_co_return] = ACTIONS(279), [anon_sym_co_yield] = ACTIONS(281), [anon_sym_try] = ACTIONS(283), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [350] = { [sym_identifier] = ACTIONS(2014), [aux_sym_preproc_include_token1] = ACTIONS(2014), [aux_sym_preproc_def_token1] = ACTIONS(2014), [aux_sym_preproc_if_token1] = ACTIONS(2014), [aux_sym_preproc_if_token2] = ACTIONS(2014), [aux_sym_preproc_ifdef_token1] = ACTIONS(2014), [aux_sym_preproc_ifdef_token2] = ACTIONS(2014), [aux_sym_preproc_else_token1] = ACTIONS(2014), [aux_sym_preproc_elif_token1] = ACTIONS(2014), [sym_preproc_directive] = ACTIONS(2014), [anon_sym_LPAREN2] = ACTIONS(2016), [anon_sym_BANG] = ACTIONS(2016), [anon_sym_TILDE] = ACTIONS(2016), [anon_sym_DASH] = ACTIONS(2014), [anon_sym_PLUS] = ACTIONS(2014), [anon_sym_STAR] = ACTIONS(2016), [anon_sym_AMP_AMP] = ACTIONS(2016), [anon_sym_AMP] = ACTIONS(2014), [anon_sym_SEMI] = ACTIONS(2016), [anon_sym_typedef] = ACTIONS(2014), [anon_sym_extern] = ACTIONS(2014), [anon_sym___attribute__] = ACTIONS(2014), [anon_sym_COLON_COLON] = ACTIONS(2016), [anon_sym_LBRACK_LBRACK] = ACTIONS(2016), [anon_sym___declspec] = ACTIONS(2014), [anon_sym___based] = ACTIONS(2014), [anon_sym___cdecl] = ACTIONS(2014), [anon_sym___clrcall] = ACTIONS(2014), [anon_sym___stdcall] = ACTIONS(2014), [anon_sym___fastcall] = ACTIONS(2014), [anon_sym___thiscall] = ACTIONS(2014), [anon_sym___vectorcall] = ACTIONS(2014), [anon_sym_LBRACE] = ACTIONS(2016), [anon_sym_LBRACK] = ACTIONS(2014), [anon_sym_static] = ACTIONS(2014), [anon_sym_register] = ACTIONS(2014), [anon_sym_inline] = ACTIONS(2014), [anon_sym_thread_local] = ACTIONS(2014), [anon_sym_const] = ACTIONS(2014), [anon_sym_volatile] = ACTIONS(2014), [anon_sym_restrict] = ACTIONS(2014), [anon_sym__Atomic] = ACTIONS(2014), [anon_sym_mutable] = ACTIONS(2014), [anon_sym_constexpr] = ACTIONS(2014), [anon_sym_signed] = ACTIONS(2014), [anon_sym_unsigned] = ACTIONS(2014), [anon_sym_long] = ACTIONS(2014), [anon_sym_short] = ACTIONS(2014), [sym_primitive_type] = ACTIONS(2014), [anon_sym_enum] = ACTIONS(2014), [anon_sym_class] = ACTIONS(2014), [anon_sym_struct] = ACTIONS(2014), [anon_sym_union] = ACTIONS(2014), [anon_sym_if] = ACTIONS(2014), [anon_sym_else] = ACTIONS(2014), [anon_sym_switch] = ACTIONS(2014), [anon_sym_case] = ACTIONS(2014), [anon_sym_default] = ACTIONS(2014), [anon_sym_while] = ACTIONS(2014), [anon_sym_do] = ACTIONS(2014), [anon_sym_for] = ACTIONS(2014), [anon_sym_return] = ACTIONS(2014), [anon_sym_break] = ACTIONS(2014), [anon_sym_continue] = ACTIONS(2014), [anon_sym_goto] = ACTIONS(2014), [anon_sym_DASH_DASH] = ACTIONS(2016), [anon_sym_PLUS_PLUS] = ACTIONS(2016), [anon_sym_sizeof] = ACTIONS(2014), [sym_number_literal] = ACTIONS(2016), [anon_sym_L_SQUOTE] = ACTIONS(2016), [anon_sym_u_SQUOTE] = ACTIONS(2016), [anon_sym_U_SQUOTE] = ACTIONS(2016), [anon_sym_u8_SQUOTE] = ACTIONS(2016), [anon_sym_SQUOTE] = ACTIONS(2016), [anon_sym_L_DQUOTE] = ACTIONS(2016), [anon_sym_u_DQUOTE] = ACTIONS(2016), [anon_sym_U_DQUOTE] = ACTIONS(2016), [anon_sym_u8_DQUOTE] = ACTIONS(2016), [anon_sym_DQUOTE] = ACTIONS(2016), [sym_true] = ACTIONS(2014), [sym_false] = ACTIONS(2014), [sym_null] = ACTIONS(2014), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2014), [anon_sym_virtual] = ACTIONS(2014), [anon_sym_explicit] = ACTIONS(2014), [sym_auto] = ACTIONS(2014), [anon_sym_typename] = ACTIONS(2014), [anon_sym_template] = ACTIONS(2014), [anon_sym_operator] = ACTIONS(2014), [anon_sym_delete] = ACTIONS(2014), [anon_sym_throw] = ACTIONS(2014), [anon_sym_namespace] = ACTIONS(2014), [anon_sym_using] = ACTIONS(2014), [anon_sym_static_assert] = ACTIONS(2014), [anon_sym_co_return] = ACTIONS(2014), [anon_sym_co_yield] = ACTIONS(2014), [anon_sym_try] = ACTIONS(2014), [anon_sym_co_await] = ACTIONS(2014), [anon_sym_new] = ACTIONS(2014), [sym_this] = ACTIONS(2014), [sym_nullptr] = ACTIONS(2014), [sym_raw_string_literal] = ACTIONS(2016), }, [351] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [352] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [353] = { [sym_compound_statement] = STATE(622), [sym_labeled_statement] = STATE(622), [sym_expression_statement] = STATE(622), [sym_if_statement] = STATE(622), [sym_switch_statement] = STATE(622), [sym_case_statement] = STATE(622), [sym_while_statement] = STATE(622), [sym_do_statement] = STATE(622), [sym_for_statement] = STATE(622), [sym_return_statement] = STATE(622), [sym_break_statement] = STATE(622), [sym_continue_statement] = STATE(622), [sym_goto_statement] = STATE(622), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(622), [sym_co_return_statement] = STATE(622), [sym_co_yield_statement] = STATE(622), [sym_throw_statement] = STATE(622), [sym_try_statement] = STATE(622), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [354] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [355] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [356] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [357] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [aux_sym_preproc_else_token1] = ACTIONS(1832), [aux_sym_preproc_elif_token1] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [358] = { [sym_compound_statement] = STATE(618), [sym_labeled_statement] = STATE(618), [sym_expression_statement] = STATE(618), [sym_if_statement] = STATE(618), [sym_switch_statement] = STATE(618), [sym_case_statement] = STATE(618), [sym_while_statement] = STATE(618), [sym_do_statement] = STATE(618), [sym_for_statement] = STATE(618), [sym_return_statement] = STATE(618), [sym_break_statement] = STATE(618), [sym_continue_statement] = STATE(618), [sym_goto_statement] = STATE(618), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(618), [sym_co_return_statement] = STATE(618), [sym_co_yield_statement] = STATE(618), [sym_throw_statement] = STATE(618), [sym_try_statement] = STATE(618), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [359] = { [sym_compound_statement] = STATE(575), [sym_labeled_statement] = STATE(575), [sym_expression_statement] = STATE(575), [sym_if_statement] = STATE(575), [sym_switch_statement] = STATE(575), [sym_case_statement] = STATE(575), [sym_while_statement] = STATE(575), [sym_do_statement] = STATE(575), [sym_for_statement] = STATE(575), [sym_return_statement] = STATE(575), [sym_break_statement] = STATE(575), [sym_continue_statement] = STATE(575), [sym_goto_statement] = STATE(575), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(575), [sym_co_return_statement] = STATE(575), [sym_co_yield_statement] = STATE(575), [sym_throw_statement] = STATE(575), [sym_try_statement] = STATE(575), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [360] = { [sym_compound_statement] = STATE(572), [sym_labeled_statement] = STATE(572), [sym_expression_statement] = STATE(572), [sym_if_statement] = STATE(572), [sym_switch_statement] = STATE(572), [sym_case_statement] = STATE(572), [sym_while_statement] = STATE(572), [sym_do_statement] = STATE(572), [sym_for_statement] = STATE(572), [sym_return_statement] = STATE(572), [sym_break_statement] = STATE(572), [sym_continue_statement] = STATE(572), [sym_goto_statement] = STATE(572), [sym__expression] = STATE(2833), [sym_comma_expression] = STATE(5261), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_for_range_loop] = STATE(572), [sym_co_return_statement] = STATE(572), [sym_co_yield_statement] = STATE(572), [sym_throw_statement] = STATE(572), [sym_try_statement] = STATE(572), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(1747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(762), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(768), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_if] = ACTIONS(770), [anon_sym_switch] = ACTIONS(772), [anon_sym_case] = ACTIONS(774), [anon_sym_default] = ACTIONS(776), [anon_sym_while] = ACTIONS(778), [anon_sym_do] = ACTIONS(780), [anon_sym_for] = ACTIONS(782), [anon_sym_return] = ACTIONS(784), [anon_sym_break] = ACTIONS(786), [anon_sym_continue] = ACTIONS(788), [anon_sym_goto] = ACTIONS(790), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_throw] = ACTIONS(794), [anon_sym_co_return] = ACTIONS(802), [anon_sym_co_yield] = ACTIONS(804), [anon_sym_try] = ACTIONS(806), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [361] = { [sym_identifier] = ACTIONS(2018), [aux_sym_preproc_include_token1] = ACTIONS(2018), [aux_sym_preproc_def_token1] = ACTIONS(2018), [aux_sym_preproc_if_token1] = ACTIONS(2018), [aux_sym_preproc_if_token2] = ACTIONS(2018), [aux_sym_preproc_ifdef_token1] = ACTIONS(2018), [aux_sym_preproc_ifdef_token2] = ACTIONS(2018), [aux_sym_preproc_else_token1] = ACTIONS(2018), [aux_sym_preproc_elif_token1] = ACTIONS(2018), [sym_preproc_directive] = ACTIONS(2018), [anon_sym_LPAREN2] = ACTIONS(2020), [anon_sym_BANG] = ACTIONS(2020), [anon_sym_TILDE] = ACTIONS(2020), [anon_sym_DASH] = ACTIONS(2018), [anon_sym_PLUS] = ACTIONS(2018), [anon_sym_STAR] = ACTIONS(2020), [anon_sym_AMP_AMP] = ACTIONS(2020), [anon_sym_AMP] = ACTIONS(2018), [anon_sym_SEMI] = ACTIONS(2020), [anon_sym_typedef] = ACTIONS(2018), [anon_sym_extern] = ACTIONS(2018), [anon_sym___attribute__] = ACTIONS(2018), [anon_sym_COLON_COLON] = ACTIONS(2020), [anon_sym_LBRACK_LBRACK] = ACTIONS(2020), [anon_sym___declspec] = ACTIONS(2018), [anon_sym___based] = ACTIONS(2018), [anon_sym___cdecl] = ACTIONS(2018), [anon_sym___clrcall] = ACTIONS(2018), [anon_sym___stdcall] = ACTIONS(2018), [anon_sym___fastcall] = ACTIONS(2018), [anon_sym___thiscall] = ACTIONS(2018), [anon_sym___vectorcall] = ACTIONS(2018), [anon_sym_LBRACE] = ACTIONS(2020), [anon_sym_LBRACK] = ACTIONS(2018), [anon_sym_static] = ACTIONS(2018), [anon_sym_register] = ACTIONS(2018), [anon_sym_inline] = ACTIONS(2018), [anon_sym_thread_local] = ACTIONS(2018), [anon_sym_const] = ACTIONS(2018), [anon_sym_volatile] = ACTIONS(2018), [anon_sym_restrict] = ACTIONS(2018), [anon_sym__Atomic] = ACTIONS(2018), [anon_sym_mutable] = ACTIONS(2018), [anon_sym_constexpr] = ACTIONS(2018), [anon_sym_signed] = ACTIONS(2018), [anon_sym_unsigned] = ACTIONS(2018), [anon_sym_long] = ACTIONS(2018), [anon_sym_short] = ACTIONS(2018), [sym_primitive_type] = ACTIONS(2018), [anon_sym_enum] = ACTIONS(2018), [anon_sym_class] = ACTIONS(2018), [anon_sym_struct] = ACTIONS(2018), [anon_sym_union] = ACTIONS(2018), [anon_sym_if] = ACTIONS(2018), [anon_sym_switch] = ACTIONS(2018), [anon_sym_case] = ACTIONS(2018), [anon_sym_default] = ACTIONS(2018), [anon_sym_while] = ACTIONS(2018), [anon_sym_do] = ACTIONS(2018), [anon_sym_for] = ACTIONS(2018), [anon_sym_return] = ACTIONS(2018), [anon_sym_break] = ACTIONS(2018), [anon_sym_continue] = ACTIONS(2018), [anon_sym_goto] = ACTIONS(2018), [anon_sym_DASH_DASH] = ACTIONS(2020), [anon_sym_PLUS_PLUS] = ACTIONS(2020), [anon_sym_sizeof] = ACTIONS(2018), [sym_number_literal] = ACTIONS(2020), [anon_sym_L_SQUOTE] = ACTIONS(2020), [anon_sym_u_SQUOTE] = ACTIONS(2020), [anon_sym_U_SQUOTE] = ACTIONS(2020), [anon_sym_u8_SQUOTE] = ACTIONS(2020), [anon_sym_SQUOTE] = ACTIONS(2020), [anon_sym_L_DQUOTE] = ACTIONS(2020), [anon_sym_u_DQUOTE] = ACTIONS(2020), [anon_sym_U_DQUOTE] = ACTIONS(2020), [anon_sym_u8_DQUOTE] = ACTIONS(2020), [anon_sym_DQUOTE] = ACTIONS(2020), [sym_true] = ACTIONS(2018), [sym_false] = ACTIONS(2018), [sym_null] = ACTIONS(2018), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2018), [anon_sym_virtual] = ACTIONS(2018), [anon_sym_explicit] = ACTIONS(2018), [sym_auto] = ACTIONS(2018), [anon_sym_typename] = ACTIONS(2018), [anon_sym_template] = ACTIONS(2018), [anon_sym_operator] = ACTIONS(2018), [anon_sym_delete] = ACTIONS(2018), [anon_sym_throw] = ACTIONS(2018), [anon_sym_namespace] = ACTIONS(2018), [anon_sym_using] = ACTIONS(2018), [anon_sym_static_assert] = ACTIONS(2018), [anon_sym_co_return] = ACTIONS(2018), [anon_sym_co_yield] = ACTIONS(2018), [anon_sym_try] = ACTIONS(2018), [anon_sym_co_await] = ACTIONS(2018), [anon_sym_new] = ACTIONS(2018), [sym_this] = ACTIONS(2018), [sym_nullptr] = ACTIONS(2018), [sym_raw_string_literal] = ACTIONS(2020), }, [362] = { [sym_identifier] = ACTIONS(2022), [aux_sym_preproc_include_token1] = ACTIONS(2022), [aux_sym_preproc_def_token1] = ACTIONS(2022), [aux_sym_preproc_if_token1] = ACTIONS(2022), [aux_sym_preproc_if_token2] = ACTIONS(2022), [aux_sym_preproc_ifdef_token1] = ACTIONS(2022), [aux_sym_preproc_ifdef_token2] = ACTIONS(2022), [aux_sym_preproc_else_token1] = ACTIONS(2022), [aux_sym_preproc_elif_token1] = ACTIONS(2022), [sym_preproc_directive] = ACTIONS(2022), [anon_sym_LPAREN2] = ACTIONS(2024), [anon_sym_BANG] = ACTIONS(2024), [anon_sym_TILDE] = ACTIONS(2024), [anon_sym_DASH] = ACTIONS(2022), [anon_sym_PLUS] = ACTIONS(2022), [anon_sym_STAR] = ACTIONS(2024), [anon_sym_AMP_AMP] = ACTIONS(2024), [anon_sym_AMP] = ACTIONS(2022), [anon_sym_SEMI] = ACTIONS(2024), [anon_sym_typedef] = ACTIONS(2022), [anon_sym_extern] = ACTIONS(2022), [anon_sym___attribute__] = ACTIONS(2022), [anon_sym_COLON_COLON] = ACTIONS(2024), [anon_sym_LBRACK_LBRACK] = ACTIONS(2024), [anon_sym___declspec] = ACTIONS(2022), [anon_sym___based] = ACTIONS(2022), [anon_sym___cdecl] = ACTIONS(2022), [anon_sym___clrcall] = ACTIONS(2022), [anon_sym___stdcall] = ACTIONS(2022), [anon_sym___fastcall] = ACTIONS(2022), [anon_sym___thiscall] = ACTIONS(2022), [anon_sym___vectorcall] = ACTIONS(2022), [anon_sym_LBRACE] = ACTIONS(2024), [anon_sym_LBRACK] = ACTIONS(2022), [anon_sym_static] = ACTIONS(2022), [anon_sym_register] = ACTIONS(2022), [anon_sym_inline] = ACTIONS(2022), [anon_sym_thread_local] = ACTIONS(2022), [anon_sym_const] = ACTIONS(2022), [anon_sym_volatile] = ACTIONS(2022), [anon_sym_restrict] = ACTIONS(2022), [anon_sym__Atomic] = ACTIONS(2022), [anon_sym_mutable] = ACTIONS(2022), [anon_sym_constexpr] = ACTIONS(2022), [anon_sym_signed] = ACTIONS(2022), [anon_sym_unsigned] = ACTIONS(2022), [anon_sym_long] = ACTIONS(2022), [anon_sym_short] = ACTIONS(2022), [sym_primitive_type] = ACTIONS(2022), [anon_sym_enum] = ACTIONS(2022), [anon_sym_class] = ACTIONS(2022), [anon_sym_struct] = ACTIONS(2022), [anon_sym_union] = ACTIONS(2022), [anon_sym_if] = ACTIONS(2022), [anon_sym_switch] = ACTIONS(2022), [anon_sym_case] = ACTIONS(2022), [anon_sym_default] = ACTIONS(2022), [anon_sym_while] = ACTIONS(2022), [anon_sym_do] = ACTIONS(2022), [anon_sym_for] = ACTIONS(2022), [anon_sym_return] = ACTIONS(2022), [anon_sym_break] = ACTIONS(2022), [anon_sym_continue] = ACTIONS(2022), [anon_sym_goto] = ACTIONS(2022), [anon_sym_DASH_DASH] = ACTIONS(2024), [anon_sym_PLUS_PLUS] = ACTIONS(2024), [anon_sym_sizeof] = ACTIONS(2022), [sym_number_literal] = ACTIONS(2024), [anon_sym_L_SQUOTE] = ACTIONS(2024), [anon_sym_u_SQUOTE] = ACTIONS(2024), [anon_sym_U_SQUOTE] = ACTIONS(2024), [anon_sym_u8_SQUOTE] = ACTIONS(2024), [anon_sym_SQUOTE] = ACTIONS(2024), [anon_sym_L_DQUOTE] = ACTIONS(2024), [anon_sym_u_DQUOTE] = ACTIONS(2024), [anon_sym_U_DQUOTE] = ACTIONS(2024), [anon_sym_u8_DQUOTE] = ACTIONS(2024), [anon_sym_DQUOTE] = ACTIONS(2024), [sym_true] = ACTIONS(2022), [sym_false] = ACTIONS(2022), [sym_null] = ACTIONS(2022), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2022), [anon_sym_virtual] = ACTIONS(2022), [anon_sym_explicit] = ACTIONS(2022), [sym_auto] = ACTIONS(2022), [anon_sym_typename] = ACTIONS(2022), [anon_sym_template] = ACTIONS(2022), [anon_sym_operator] = ACTIONS(2022), [anon_sym_delete] = ACTIONS(2022), [anon_sym_throw] = ACTIONS(2022), [anon_sym_namespace] = ACTIONS(2022), [anon_sym_using] = ACTIONS(2022), [anon_sym_static_assert] = ACTIONS(2022), [anon_sym_co_return] = ACTIONS(2022), [anon_sym_co_yield] = ACTIONS(2022), [anon_sym_try] = ACTIONS(2022), [anon_sym_co_await] = ACTIONS(2022), [anon_sym_new] = ACTIONS(2022), [sym_this] = ACTIONS(2022), [sym_nullptr] = ACTIONS(2022), [sym_raw_string_literal] = ACTIONS(2024), }, [363] = { [sym_identifier] = ACTIONS(2026), [aux_sym_preproc_include_token1] = ACTIONS(2026), [aux_sym_preproc_def_token1] = ACTIONS(2026), [aux_sym_preproc_if_token1] = ACTIONS(2026), [aux_sym_preproc_if_token2] = ACTIONS(2026), [aux_sym_preproc_ifdef_token1] = ACTIONS(2026), [aux_sym_preproc_ifdef_token2] = ACTIONS(2026), [aux_sym_preproc_else_token1] = ACTIONS(2026), [aux_sym_preproc_elif_token1] = ACTIONS(2026), [sym_preproc_directive] = ACTIONS(2026), [anon_sym_LPAREN2] = ACTIONS(2028), [anon_sym_BANG] = ACTIONS(2028), [anon_sym_TILDE] = ACTIONS(2028), [anon_sym_DASH] = ACTIONS(2026), [anon_sym_PLUS] = ACTIONS(2026), [anon_sym_STAR] = ACTIONS(2028), [anon_sym_AMP_AMP] = ACTIONS(2028), [anon_sym_AMP] = ACTIONS(2026), [anon_sym_SEMI] = ACTIONS(2028), [anon_sym_typedef] = ACTIONS(2026), [anon_sym_extern] = ACTIONS(2026), [anon_sym___attribute__] = ACTIONS(2026), [anon_sym_COLON_COLON] = ACTIONS(2028), [anon_sym_LBRACK_LBRACK] = ACTIONS(2028), [anon_sym___declspec] = ACTIONS(2026), [anon_sym___based] = ACTIONS(2026), [anon_sym___cdecl] = ACTIONS(2026), [anon_sym___clrcall] = ACTIONS(2026), [anon_sym___stdcall] = ACTIONS(2026), [anon_sym___fastcall] = ACTIONS(2026), [anon_sym___thiscall] = ACTIONS(2026), [anon_sym___vectorcall] = ACTIONS(2026), [anon_sym_LBRACE] = ACTIONS(2028), [anon_sym_LBRACK] = ACTIONS(2026), [anon_sym_static] = ACTIONS(2026), [anon_sym_register] = ACTIONS(2026), [anon_sym_inline] = ACTIONS(2026), [anon_sym_thread_local] = ACTIONS(2026), [anon_sym_const] = ACTIONS(2026), [anon_sym_volatile] = ACTIONS(2026), [anon_sym_restrict] = ACTIONS(2026), [anon_sym__Atomic] = ACTIONS(2026), [anon_sym_mutable] = ACTIONS(2026), [anon_sym_constexpr] = ACTIONS(2026), [anon_sym_signed] = ACTIONS(2026), [anon_sym_unsigned] = ACTIONS(2026), [anon_sym_long] = ACTIONS(2026), [anon_sym_short] = ACTIONS(2026), [sym_primitive_type] = ACTIONS(2026), [anon_sym_enum] = ACTIONS(2026), [anon_sym_class] = ACTIONS(2026), [anon_sym_struct] = ACTIONS(2026), [anon_sym_union] = ACTIONS(2026), [anon_sym_if] = ACTIONS(2026), [anon_sym_switch] = ACTIONS(2026), [anon_sym_case] = ACTIONS(2026), [anon_sym_default] = ACTIONS(2026), [anon_sym_while] = ACTIONS(2026), [anon_sym_do] = ACTIONS(2026), [anon_sym_for] = ACTIONS(2026), [anon_sym_return] = ACTIONS(2026), [anon_sym_break] = ACTIONS(2026), [anon_sym_continue] = ACTIONS(2026), [anon_sym_goto] = ACTIONS(2026), [anon_sym_DASH_DASH] = ACTIONS(2028), [anon_sym_PLUS_PLUS] = ACTIONS(2028), [anon_sym_sizeof] = ACTIONS(2026), [sym_number_literal] = ACTIONS(2028), [anon_sym_L_SQUOTE] = ACTIONS(2028), [anon_sym_u_SQUOTE] = ACTIONS(2028), [anon_sym_U_SQUOTE] = ACTIONS(2028), [anon_sym_u8_SQUOTE] = ACTIONS(2028), [anon_sym_SQUOTE] = ACTIONS(2028), [anon_sym_L_DQUOTE] = ACTIONS(2028), [anon_sym_u_DQUOTE] = ACTIONS(2028), [anon_sym_U_DQUOTE] = ACTIONS(2028), [anon_sym_u8_DQUOTE] = ACTIONS(2028), [anon_sym_DQUOTE] = ACTIONS(2028), [sym_true] = ACTIONS(2026), [sym_false] = ACTIONS(2026), [sym_null] = ACTIONS(2026), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2026), [anon_sym_virtual] = ACTIONS(2026), [anon_sym_explicit] = ACTIONS(2026), [sym_auto] = ACTIONS(2026), [anon_sym_typename] = ACTIONS(2026), [anon_sym_template] = ACTIONS(2026), [anon_sym_operator] = ACTIONS(2026), [anon_sym_delete] = ACTIONS(2026), [anon_sym_throw] = ACTIONS(2026), [anon_sym_namespace] = ACTIONS(2026), [anon_sym_using] = ACTIONS(2026), [anon_sym_static_assert] = ACTIONS(2026), [anon_sym_co_return] = ACTIONS(2026), [anon_sym_co_yield] = ACTIONS(2026), [anon_sym_try] = ACTIONS(2026), [anon_sym_co_await] = ACTIONS(2026), [anon_sym_new] = ACTIONS(2026), [sym_this] = ACTIONS(2026), [sym_nullptr] = ACTIONS(2026), [sym_raw_string_literal] = ACTIONS(2028), }, [364] = { [sym_identifier] = ACTIONS(2030), [aux_sym_preproc_include_token1] = ACTIONS(2030), [aux_sym_preproc_def_token1] = ACTIONS(2030), [aux_sym_preproc_if_token1] = ACTIONS(2030), [aux_sym_preproc_if_token2] = ACTIONS(2030), [aux_sym_preproc_ifdef_token1] = ACTIONS(2030), [aux_sym_preproc_ifdef_token2] = ACTIONS(2030), [aux_sym_preproc_else_token1] = ACTIONS(2030), [aux_sym_preproc_elif_token1] = ACTIONS(2030), [sym_preproc_directive] = ACTIONS(2030), [anon_sym_LPAREN2] = ACTIONS(2032), [anon_sym_BANG] = ACTIONS(2032), [anon_sym_TILDE] = ACTIONS(2032), [anon_sym_DASH] = ACTIONS(2030), [anon_sym_PLUS] = ACTIONS(2030), [anon_sym_STAR] = ACTIONS(2032), [anon_sym_AMP_AMP] = ACTIONS(2032), [anon_sym_AMP] = ACTIONS(2030), [anon_sym_SEMI] = ACTIONS(2032), [anon_sym_typedef] = ACTIONS(2030), [anon_sym_extern] = ACTIONS(2030), [anon_sym___attribute__] = ACTIONS(2030), [anon_sym_COLON_COLON] = ACTIONS(2032), [anon_sym_LBRACK_LBRACK] = ACTIONS(2032), [anon_sym___declspec] = ACTIONS(2030), [anon_sym___based] = ACTIONS(2030), [anon_sym___cdecl] = ACTIONS(2030), [anon_sym___clrcall] = ACTIONS(2030), [anon_sym___stdcall] = ACTIONS(2030), [anon_sym___fastcall] = ACTIONS(2030), [anon_sym___thiscall] = ACTIONS(2030), [anon_sym___vectorcall] = ACTIONS(2030), [anon_sym_LBRACE] = ACTIONS(2032), [anon_sym_LBRACK] = ACTIONS(2030), [anon_sym_static] = ACTIONS(2030), [anon_sym_register] = ACTIONS(2030), [anon_sym_inline] = ACTIONS(2030), [anon_sym_thread_local] = ACTIONS(2030), [anon_sym_const] = ACTIONS(2030), [anon_sym_volatile] = ACTIONS(2030), [anon_sym_restrict] = ACTIONS(2030), [anon_sym__Atomic] = ACTIONS(2030), [anon_sym_mutable] = ACTIONS(2030), [anon_sym_constexpr] = ACTIONS(2030), [anon_sym_signed] = ACTIONS(2030), [anon_sym_unsigned] = ACTIONS(2030), [anon_sym_long] = ACTIONS(2030), [anon_sym_short] = ACTIONS(2030), [sym_primitive_type] = ACTIONS(2030), [anon_sym_enum] = ACTIONS(2030), [anon_sym_class] = ACTIONS(2030), [anon_sym_struct] = ACTIONS(2030), [anon_sym_union] = ACTIONS(2030), [anon_sym_if] = ACTIONS(2030), [anon_sym_switch] = ACTIONS(2030), [anon_sym_case] = ACTIONS(2030), [anon_sym_default] = ACTIONS(2030), [anon_sym_while] = ACTIONS(2030), [anon_sym_do] = ACTIONS(2030), [anon_sym_for] = ACTIONS(2030), [anon_sym_return] = ACTIONS(2030), [anon_sym_break] = ACTIONS(2030), [anon_sym_continue] = ACTIONS(2030), [anon_sym_goto] = ACTIONS(2030), [anon_sym_DASH_DASH] = ACTIONS(2032), [anon_sym_PLUS_PLUS] = ACTIONS(2032), [anon_sym_sizeof] = ACTIONS(2030), [sym_number_literal] = ACTIONS(2032), [anon_sym_L_SQUOTE] = ACTIONS(2032), [anon_sym_u_SQUOTE] = ACTIONS(2032), [anon_sym_U_SQUOTE] = ACTIONS(2032), [anon_sym_u8_SQUOTE] = ACTIONS(2032), [anon_sym_SQUOTE] = ACTIONS(2032), [anon_sym_L_DQUOTE] = ACTIONS(2032), [anon_sym_u_DQUOTE] = ACTIONS(2032), [anon_sym_U_DQUOTE] = ACTIONS(2032), [anon_sym_u8_DQUOTE] = ACTIONS(2032), [anon_sym_DQUOTE] = ACTIONS(2032), [sym_true] = ACTIONS(2030), [sym_false] = ACTIONS(2030), [sym_null] = ACTIONS(2030), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2030), [anon_sym_virtual] = ACTIONS(2030), [anon_sym_explicit] = ACTIONS(2030), [sym_auto] = ACTIONS(2030), [anon_sym_typename] = ACTIONS(2030), [anon_sym_template] = ACTIONS(2030), [anon_sym_operator] = ACTIONS(2030), [anon_sym_delete] = ACTIONS(2030), [anon_sym_throw] = ACTIONS(2030), [anon_sym_namespace] = ACTIONS(2030), [anon_sym_using] = ACTIONS(2030), [anon_sym_static_assert] = ACTIONS(2030), [anon_sym_co_return] = ACTIONS(2030), [anon_sym_co_yield] = ACTIONS(2030), [anon_sym_try] = ACTIONS(2030), [anon_sym_co_await] = ACTIONS(2030), [anon_sym_new] = ACTIONS(2030), [sym_this] = ACTIONS(2030), [sym_nullptr] = ACTIONS(2030), [sym_raw_string_literal] = ACTIONS(2032), }, [365] = { [sym_identifier] = ACTIONS(2034), [aux_sym_preproc_include_token1] = ACTIONS(2034), [aux_sym_preproc_def_token1] = ACTIONS(2034), [aux_sym_preproc_if_token1] = ACTIONS(2034), [aux_sym_preproc_if_token2] = ACTIONS(2034), [aux_sym_preproc_ifdef_token1] = ACTIONS(2034), [aux_sym_preproc_ifdef_token2] = ACTIONS(2034), [aux_sym_preproc_else_token1] = ACTIONS(2034), [aux_sym_preproc_elif_token1] = ACTIONS(2034), [sym_preproc_directive] = ACTIONS(2034), [anon_sym_LPAREN2] = ACTIONS(2036), [anon_sym_BANG] = ACTIONS(2036), [anon_sym_TILDE] = ACTIONS(2036), [anon_sym_DASH] = ACTIONS(2034), [anon_sym_PLUS] = ACTIONS(2034), [anon_sym_STAR] = ACTIONS(2036), [anon_sym_AMP_AMP] = ACTIONS(2036), [anon_sym_AMP] = ACTIONS(2034), [anon_sym_SEMI] = ACTIONS(2036), [anon_sym_typedef] = ACTIONS(2034), [anon_sym_extern] = ACTIONS(2034), [anon_sym___attribute__] = ACTIONS(2034), [anon_sym_COLON_COLON] = ACTIONS(2036), [anon_sym_LBRACK_LBRACK] = ACTIONS(2036), [anon_sym___declspec] = ACTIONS(2034), [anon_sym___based] = ACTIONS(2034), [anon_sym___cdecl] = ACTIONS(2034), [anon_sym___clrcall] = ACTIONS(2034), [anon_sym___stdcall] = ACTIONS(2034), [anon_sym___fastcall] = ACTIONS(2034), [anon_sym___thiscall] = ACTIONS(2034), [anon_sym___vectorcall] = ACTIONS(2034), [anon_sym_LBRACE] = ACTIONS(2036), [anon_sym_LBRACK] = ACTIONS(2034), [anon_sym_static] = ACTIONS(2034), [anon_sym_register] = ACTIONS(2034), [anon_sym_inline] = ACTIONS(2034), [anon_sym_thread_local] = ACTIONS(2034), [anon_sym_const] = ACTIONS(2034), [anon_sym_volatile] = ACTIONS(2034), [anon_sym_restrict] = ACTIONS(2034), [anon_sym__Atomic] = ACTIONS(2034), [anon_sym_mutable] = ACTIONS(2034), [anon_sym_constexpr] = ACTIONS(2034), [anon_sym_signed] = ACTIONS(2034), [anon_sym_unsigned] = ACTIONS(2034), [anon_sym_long] = ACTIONS(2034), [anon_sym_short] = ACTIONS(2034), [sym_primitive_type] = ACTIONS(2034), [anon_sym_enum] = ACTIONS(2034), [anon_sym_class] = ACTIONS(2034), [anon_sym_struct] = ACTIONS(2034), [anon_sym_union] = ACTIONS(2034), [anon_sym_if] = ACTIONS(2034), [anon_sym_switch] = ACTIONS(2034), [anon_sym_case] = ACTIONS(2034), [anon_sym_default] = ACTIONS(2034), [anon_sym_while] = ACTIONS(2034), [anon_sym_do] = ACTIONS(2034), [anon_sym_for] = ACTIONS(2034), [anon_sym_return] = ACTIONS(2034), [anon_sym_break] = ACTIONS(2034), [anon_sym_continue] = ACTIONS(2034), [anon_sym_goto] = ACTIONS(2034), [anon_sym_DASH_DASH] = ACTIONS(2036), [anon_sym_PLUS_PLUS] = ACTIONS(2036), [anon_sym_sizeof] = ACTIONS(2034), [sym_number_literal] = ACTIONS(2036), [anon_sym_L_SQUOTE] = ACTIONS(2036), [anon_sym_u_SQUOTE] = ACTIONS(2036), [anon_sym_U_SQUOTE] = ACTIONS(2036), [anon_sym_u8_SQUOTE] = ACTIONS(2036), [anon_sym_SQUOTE] = ACTIONS(2036), [anon_sym_L_DQUOTE] = ACTIONS(2036), [anon_sym_u_DQUOTE] = ACTIONS(2036), [anon_sym_U_DQUOTE] = ACTIONS(2036), [anon_sym_u8_DQUOTE] = ACTIONS(2036), [anon_sym_DQUOTE] = ACTIONS(2036), [sym_true] = ACTIONS(2034), [sym_false] = ACTIONS(2034), [sym_null] = ACTIONS(2034), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2034), [anon_sym_virtual] = ACTIONS(2034), [anon_sym_explicit] = ACTIONS(2034), [sym_auto] = ACTIONS(2034), [anon_sym_typename] = ACTIONS(2034), [anon_sym_template] = ACTIONS(2034), [anon_sym_operator] = ACTIONS(2034), [anon_sym_delete] = ACTIONS(2034), [anon_sym_throw] = ACTIONS(2034), [anon_sym_namespace] = ACTIONS(2034), [anon_sym_using] = ACTIONS(2034), [anon_sym_static_assert] = ACTIONS(2034), [anon_sym_co_return] = ACTIONS(2034), [anon_sym_co_yield] = ACTIONS(2034), [anon_sym_try] = ACTIONS(2034), [anon_sym_co_await] = ACTIONS(2034), [anon_sym_new] = ACTIONS(2034), [sym_this] = ACTIONS(2034), [sym_nullptr] = ACTIONS(2034), [sym_raw_string_literal] = ACTIONS(2036), }, [366] = { [sym_identifier] = ACTIONS(2038), [aux_sym_preproc_include_token1] = ACTIONS(2038), [aux_sym_preproc_def_token1] = ACTIONS(2038), [aux_sym_preproc_if_token1] = ACTIONS(2038), [aux_sym_preproc_if_token2] = ACTIONS(2038), [aux_sym_preproc_ifdef_token1] = ACTIONS(2038), [aux_sym_preproc_ifdef_token2] = ACTIONS(2038), [aux_sym_preproc_else_token1] = ACTIONS(2038), [aux_sym_preproc_elif_token1] = ACTIONS(2038), [sym_preproc_directive] = ACTIONS(2038), [anon_sym_LPAREN2] = ACTIONS(2040), [anon_sym_BANG] = ACTIONS(2040), [anon_sym_TILDE] = ACTIONS(2040), [anon_sym_DASH] = ACTIONS(2038), [anon_sym_PLUS] = ACTIONS(2038), [anon_sym_STAR] = ACTIONS(2040), [anon_sym_AMP_AMP] = ACTIONS(2040), [anon_sym_AMP] = ACTIONS(2038), [anon_sym_SEMI] = ACTIONS(2040), [anon_sym_typedef] = ACTIONS(2038), [anon_sym_extern] = ACTIONS(2038), [anon_sym___attribute__] = ACTIONS(2038), [anon_sym_COLON_COLON] = ACTIONS(2040), [anon_sym_LBRACK_LBRACK] = ACTIONS(2040), [anon_sym___declspec] = ACTIONS(2038), [anon_sym___based] = ACTIONS(2038), [anon_sym___cdecl] = ACTIONS(2038), [anon_sym___clrcall] = ACTIONS(2038), [anon_sym___stdcall] = ACTIONS(2038), [anon_sym___fastcall] = ACTIONS(2038), [anon_sym___thiscall] = ACTIONS(2038), [anon_sym___vectorcall] = ACTIONS(2038), [anon_sym_LBRACE] = ACTIONS(2040), [anon_sym_LBRACK] = ACTIONS(2038), [anon_sym_static] = ACTIONS(2038), [anon_sym_register] = ACTIONS(2038), [anon_sym_inline] = ACTIONS(2038), [anon_sym_thread_local] = ACTIONS(2038), [anon_sym_const] = ACTIONS(2038), [anon_sym_volatile] = ACTIONS(2038), [anon_sym_restrict] = ACTIONS(2038), [anon_sym__Atomic] = ACTIONS(2038), [anon_sym_mutable] = ACTIONS(2038), [anon_sym_constexpr] = ACTIONS(2038), [anon_sym_signed] = ACTIONS(2038), [anon_sym_unsigned] = ACTIONS(2038), [anon_sym_long] = ACTIONS(2038), [anon_sym_short] = ACTIONS(2038), [sym_primitive_type] = ACTIONS(2038), [anon_sym_enum] = ACTIONS(2038), [anon_sym_class] = ACTIONS(2038), [anon_sym_struct] = ACTIONS(2038), [anon_sym_union] = ACTIONS(2038), [anon_sym_if] = ACTIONS(2038), [anon_sym_switch] = ACTIONS(2038), [anon_sym_case] = ACTIONS(2038), [anon_sym_default] = ACTIONS(2038), [anon_sym_while] = ACTIONS(2038), [anon_sym_do] = ACTIONS(2038), [anon_sym_for] = ACTIONS(2038), [anon_sym_return] = ACTIONS(2038), [anon_sym_break] = ACTIONS(2038), [anon_sym_continue] = ACTIONS(2038), [anon_sym_goto] = ACTIONS(2038), [anon_sym_DASH_DASH] = ACTIONS(2040), [anon_sym_PLUS_PLUS] = ACTIONS(2040), [anon_sym_sizeof] = ACTIONS(2038), [sym_number_literal] = ACTIONS(2040), [anon_sym_L_SQUOTE] = ACTIONS(2040), [anon_sym_u_SQUOTE] = ACTIONS(2040), [anon_sym_U_SQUOTE] = ACTIONS(2040), [anon_sym_u8_SQUOTE] = ACTIONS(2040), [anon_sym_SQUOTE] = ACTIONS(2040), [anon_sym_L_DQUOTE] = ACTIONS(2040), [anon_sym_u_DQUOTE] = ACTIONS(2040), [anon_sym_U_DQUOTE] = ACTIONS(2040), [anon_sym_u8_DQUOTE] = ACTIONS(2040), [anon_sym_DQUOTE] = ACTIONS(2040), [sym_true] = ACTIONS(2038), [sym_false] = ACTIONS(2038), [sym_null] = ACTIONS(2038), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2038), [anon_sym_virtual] = ACTIONS(2038), [anon_sym_explicit] = ACTIONS(2038), [sym_auto] = ACTIONS(2038), [anon_sym_typename] = ACTIONS(2038), [anon_sym_template] = ACTIONS(2038), [anon_sym_operator] = ACTIONS(2038), [anon_sym_delete] = ACTIONS(2038), [anon_sym_throw] = ACTIONS(2038), [anon_sym_namespace] = ACTIONS(2038), [anon_sym_using] = ACTIONS(2038), [anon_sym_static_assert] = ACTIONS(2038), [anon_sym_co_return] = ACTIONS(2038), [anon_sym_co_yield] = ACTIONS(2038), [anon_sym_try] = ACTIONS(2038), [anon_sym_co_await] = ACTIONS(2038), [anon_sym_new] = ACTIONS(2038), [sym_this] = ACTIONS(2038), [sym_nullptr] = ACTIONS(2038), [sym_raw_string_literal] = ACTIONS(2040), }, [367] = { [sym_identifier] = ACTIONS(2042), [aux_sym_preproc_include_token1] = ACTIONS(2042), [aux_sym_preproc_def_token1] = ACTIONS(2042), [aux_sym_preproc_if_token1] = ACTIONS(2042), [aux_sym_preproc_if_token2] = ACTIONS(2042), [aux_sym_preproc_ifdef_token1] = ACTIONS(2042), [aux_sym_preproc_ifdef_token2] = ACTIONS(2042), [aux_sym_preproc_else_token1] = ACTIONS(2042), [aux_sym_preproc_elif_token1] = ACTIONS(2042), [sym_preproc_directive] = ACTIONS(2042), [anon_sym_LPAREN2] = ACTIONS(2044), [anon_sym_BANG] = ACTIONS(2044), [anon_sym_TILDE] = ACTIONS(2044), [anon_sym_DASH] = ACTIONS(2042), [anon_sym_PLUS] = ACTIONS(2042), [anon_sym_STAR] = ACTIONS(2044), [anon_sym_AMP_AMP] = ACTIONS(2044), [anon_sym_AMP] = ACTIONS(2042), [anon_sym_SEMI] = ACTIONS(2044), [anon_sym_typedef] = ACTIONS(2042), [anon_sym_extern] = ACTIONS(2042), [anon_sym___attribute__] = ACTIONS(2042), [anon_sym_COLON_COLON] = ACTIONS(2044), [anon_sym_LBRACK_LBRACK] = ACTIONS(2044), [anon_sym___declspec] = ACTIONS(2042), [anon_sym___based] = ACTIONS(2042), [anon_sym___cdecl] = ACTIONS(2042), [anon_sym___clrcall] = ACTIONS(2042), [anon_sym___stdcall] = ACTIONS(2042), [anon_sym___fastcall] = ACTIONS(2042), [anon_sym___thiscall] = ACTIONS(2042), [anon_sym___vectorcall] = ACTIONS(2042), [anon_sym_LBRACE] = ACTIONS(2044), [anon_sym_LBRACK] = ACTIONS(2042), [anon_sym_static] = ACTIONS(2042), [anon_sym_register] = ACTIONS(2042), [anon_sym_inline] = ACTIONS(2042), [anon_sym_thread_local] = ACTIONS(2042), [anon_sym_const] = ACTIONS(2042), [anon_sym_volatile] = ACTIONS(2042), [anon_sym_restrict] = ACTIONS(2042), [anon_sym__Atomic] = ACTIONS(2042), [anon_sym_mutable] = ACTIONS(2042), [anon_sym_constexpr] = ACTIONS(2042), [anon_sym_signed] = ACTIONS(2042), [anon_sym_unsigned] = ACTIONS(2042), [anon_sym_long] = ACTIONS(2042), [anon_sym_short] = ACTIONS(2042), [sym_primitive_type] = ACTIONS(2042), [anon_sym_enum] = ACTIONS(2042), [anon_sym_class] = ACTIONS(2042), [anon_sym_struct] = ACTIONS(2042), [anon_sym_union] = ACTIONS(2042), [anon_sym_if] = ACTIONS(2042), [anon_sym_switch] = ACTIONS(2042), [anon_sym_case] = ACTIONS(2042), [anon_sym_default] = ACTIONS(2042), [anon_sym_while] = ACTIONS(2042), [anon_sym_do] = ACTIONS(2042), [anon_sym_for] = ACTIONS(2042), [anon_sym_return] = ACTIONS(2042), [anon_sym_break] = ACTIONS(2042), [anon_sym_continue] = ACTIONS(2042), [anon_sym_goto] = ACTIONS(2042), [anon_sym_DASH_DASH] = ACTIONS(2044), [anon_sym_PLUS_PLUS] = ACTIONS(2044), [anon_sym_sizeof] = ACTIONS(2042), [sym_number_literal] = ACTIONS(2044), [anon_sym_L_SQUOTE] = ACTIONS(2044), [anon_sym_u_SQUOTE] = ACTIONS(2044), [anon_sym_U_SQUOTE] = ACTIONS(2044), [anon_sym_u8_SQUOTE] = ACTIONS(2044), [anon_sym_SQUOTE] = ACTIONS(2044), [anon_sym_L_DQUOTE] = ACTIONS(2044), [anon_sym_u_DQUOTE] = ACTIONS(2044), [anon_sym_U_DQUOTE] = ACTIONS(2044), [anon_sym_u8_DQUOTE] = ACTIONS(2044), [anon_sym_DQUOTE] = ACTIONS(2044), [sym_true] = ACTIONS(2042), [sym_false] = ACTIONS(2042), [sym_null] = ACTIONS(2042), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2042), [anon_sym_virtual] = ACTIONS(2042), [anon_sym_explicit] = ACTIONS(2042), [sym_auto] = ACTIONS(2042), [anon_sym_typename] = ACTIONS(2042), [anon_sym_template] = ACTIONS(2042), [anon_sym_operator] = ACTIONS(2042), [anon_sym_delete] = ACTIONS(2042), [anon_sym_throw] = ACTIONS(2042), [anon_sym_namespace] = ACTIONS(2042), [anon_sym_using] = ACTIONS(2042), [anon_sym_static_assert] = ACTIONS(2042), [anon_sym_co_return] = ACTIONS(2042), [anon_sym_co_yield] = ACTIONS(2042), [anon_sym_try] = ACTIONS(2042), [anon_sym_co_await] = ACTIONS(2042), [anon_sym_new] = ACTIONS(2042), [sym_this] = ACTIONS(2042), [sym_nullptr] = ACTIONS(2042), [sym_raw_string_literal] = ACTIONS(2044), }, [368] = { [sym_identifier] = ACTIONS(2046), [aux_sym_preproc_include_token1] = ACTIONS(2046), [aux_sym_preproc_def_token1] = ACTIONS(2046), [aux_sym_preproc_if_token1] = ACTIONS(2046), [aux_sym_preproc_if_token2] = ACTIONS(2046), [aux_sym_preproc_ifdef_token1] = ACTIONS(2046), [aux_sym_preproc_ifdef_token2] = ACTIONS(2046), [aux_sym_preproc_else_token1] = ACTIONS(2046), [aux_sym_preproc_elif_token1] = ACTIONS(2046), [sym_preproc_directive] = ACTIONS(2046), [anon_sym_LPAREN2] = ACTIONS(2048), [anon_sym_BANG] = ACTIONS(2048), [anon_sym_TILDE] = ACTIONS(2048), [anon_sym_DASH] = ACTIONS(2046), [anon_sym_PLUS] = ACTIONS(2046), [anon_sym_STAR] = ACTIONS(2048), [anon_sym_AMP_AMP] = ACTIONS(2048), [anon_sym_AMP] = ACTIONS(2046), [anon_sym_SEMI] = ACTIONS(2048), [anon_sym_typedef] = ACTIONS(2046), [anon_sym_extern] = ACTIONS(2046), [anon_sym___attribute__] = ACTIONS(2046), [anon_sym_COLON_COLON] = ACTIONS(2048), [anon_sym_LBRACK_LBRACK] = ACTIONS(2048), [anon_sym___declspec] = ACTIONS(2046), [anon_sym___based] = ACTIONS(2046), [anon_sym___cdecl] = ACTIONS(2046), [anon_sym___clrcall] = ACTIONS(2046), [anon_sym___stdcall] = ACTIONS(2046), [anon_sym___fastcall] = ACTIONS(2046), [anon_sym___thiscall] = ACTIONS(2046), [anon_sym___vectorcall] = ACTIONS(2046), [anon_sym_LBRACE] = ACTIONS(2048), [anon_sym_LBRACK] = ACTIONS(2046), [anon_sym_static] = ACTIONS(2046), [anon_sym_register] = ACTIONS(2046), [anon_sym_inline] = ACTIONS(2046), [anon_sym_thread_local] = ACTIONS(2046), [anon_sym_const] = ACTIONS(2046), [anon_sym_volatile] = ACTIONS(2046), [anon_sym_restrict] = ACTIONS(2046), [anon_sym__Atomic] = ACTIONS(2046), [anon_sym_mutable] = ACTIONS(2046), [anon_sym_constexpr] = ACTIONS(2046), [anon_sym_signed] = ACTIONS(2046), [anon_sym_unsigned] = ACTIONS(2046), [anon_sym_long] = ACTIONS(2046), [anon_sym_short] = ACTIONS(2046), [sym_primitive_type] = ACTIONS(2046), [anon_sym_enum] = ACTIONS(2046), [anon_sym_class] = ACTIONS(2046), [anon_sym_struct] = ACTIONS(2046), [anon_sym_union] = ACTIONS(2046), [anon_sym_if] = ACTIONS(2046), [anon_sym_switch] = ACTIONS(2046), [anon_sym_case] = ACTIONS(2046), [anon_sym_default] = ACTIONS(2046), [anon_sym_while] = ACTIONS(2046), [anon_sym_do] = ACTIONS(2046), [anon_sym_for] = ACTIONS(2046), [anon_sym_return] = ACTIONS(2046), [anon_sym_break] = ACTIONS(2046), [anon_sym_continue] = ACTIONS(2046), [anon_sym_goto] = ACTIONS(2046), [anon_sym_DASH_DASH] = ACTIONS(2048), [anon_sym_PLUS_PLUS] = ACTIONS(2048), [anon_sym_sizeof] = ACTIONS(2046), [sym_number_literal] = ACTIONS(2048), [anon_sym_L_SQUOTE] = ACTIONS(2048), [anon_sym_u_SQUOTE] = ACTIONS(2048), [anon_sym_U_SQUOTE] = ACTIONS(2048), [anon_sym_u8_SQUOTE] = ACTIONS(2048), [anon_sym_SQUOTE] = ACTIONS(2048), [anon_sym_L_DQUOTE] = ACTIONS(2048), [anon_sym_u_DQUOTE] = ACTIONS(2048), [anon_sym_U_DQUOTE] = ACTIONS(2048), [anon_sym_u8_DQUOTE] = ACTIONS(2048), [anon_sym_DQUOTE] = ACTIONS(2048), [sym_true] = ACTIONS(2046), [sym_false] = ACTIONS(2046), [sym_null] = ACTIONS(2046), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2046), [anon_sym_virtual] = ACTIONS(2046), [anon_sym_explicit] = ACTIONS(2046), [sym_auto] = ACTIONS(2046), [anon_sym_typename] = ACTIONS(2046), [anon_sym_template] = ACTIONS(2046), [anon_sym_operator] = ACTIONS(2046), [anon_sym_delete] = ACTIONS(2046), [anon_sym_throw] = ACTIONS(2046), [anon_sym_namespace] = ACTIONS(2046), [anon_sym_using] = ACTIONS(2046), [anon_sym_static_assert] = ACTIONS(2046), [anon_sym_co_return] = ACTIONS(2046), [anon_sym_co_yield] = ACTIONS(2046), [anon_sym_try] = ACTIONS(2046), [anon_sym_co_await] = ACTIONS(2046), [anon_sym_new] = ACTIONS(2046), [sym_this] = ACTIONS(2046), [sym_nullptr] = ACTIONS(2046), [sym_raw_string_literal] = ACTIONS(2048), }, [369] = { [sym_identifier] = ACTIONS(2050), [aux_sym_preproc_include_token1] = ACTIONS(2050), [aux_sym_preproc_def_token1] = ACTIONS(2050), [aux_sym_preproc_if_token1] = ACTIONS(2050), [aux_sym_preproc_if_token2] = ACTIONS(2050), [aux_sym_preproc_ifdef_token1] = ACTIONS(2050), [aux_sym_preproc_ifdef_token2] = ACTIONS(2050), [aux_sym_preproc_else_token1] = ACTIONS(2050), [aux_sym_preproc_elif_token1] = ACTIONS(2050), [sym_preproc_directive] = ACTIONS(2050), [anon_sym_LPAREN2] = ACTIONS(2052), [anon_sym_BANG] = ACTIONS(2052), [anon_sym_TILDE] = ACTIONS(2052), [anon_sym_DASH] = ACTIONS(2050), [anon_sym_PLUS] = ACTIONS(2050), [anon_sym_STAR] = ACTIONS(2052), [anon_sym_AMP_AMP] = ACTIONS(2052), [anon_sym_AMP] = ACTIONS(2050), [anon_sym_SEMI] = ACTIONS(2052), [anon_sym_typedef] = ACTIONS(2050), [anon_sym_extern] = ACTIONS(2050), [anon_sym___attribute__] = ACTIONS(2050), [anon_sym_COLON_COLON] = ACTIONS(2052), [anon_sym_LBRACK_LBRACK] = ACTIONS(2052), [anon_sym___declspec] = ACTIONS(2050), [anon_sym___based] = ACTIONS(2050), [anon_sym___cdecl] = ACTIONS(2050), [anon_sym___clrcall] = ACTIONS(2050), [anon_sym___stdcall] = ACTIONS(2050), [anon_sym___fastcall] = ACTIONS(2050), [anon_sym___thiscall] = ACTIONS(2050), [anon_sym___vectorcall] = ACTIONS(2050), [anon_sym_LBRACE] = ACTIONS(2052), [anon_sym_LBRACK] = ACTIONS(2050), [anon_sym_static] = ACTIONS(2050), [anon_sym_register] = ACTIONS(2050), [anon_sym_inline] = ACTIONS(2050), [anon_sym_thread_local] = ACTIONS(2050), [anon_sym_const] = ACTIONS(2050), [anon_sym_volatile] = ACTIONS(2050), [anon_sym_restrict] = ACTIONS(2050), [anon_sym__Atomic] = ACTIONS(2050), [anon_sym_mutable] = ACTIONS(2050), [anon_sym_constexpr] = ACTIONS(2050), [anon_sym_signed] = ACTIONS(2050), [anon_sym_unsigned] = ACTIONS(2050), [anon_sym_long] = ACTIONS(2050), [anon_sym_short] = ACTIONS(2050), [sym_primitive_type] = ACTIONS(2050), [anon_sym_enum] = ACTIONS(2050), [anon_sym_class] = ACTIONS(2050), [anon_sym_struct] = ACTIONS(2050), [anon_sym_union] = ACTIONS(2050), [anon_sym_if] = ACTIONS(2050), [anon_sym_switch] = ACTIONS(2050), [anon_sym_case] = ACTIONS(2050), [anon_sym_default] = ACTIONS(2050), [anon_sym_while] = ACTIONS(2050), [anon_sym_do] = ACTIONS(2050), [anon_sym_for] = ACTIONS(2050), [anon_sym_return] = ACTIONS(2050), [anon_sym_break] = ACTIONS(2050), [anon_sym_continue] = ACTIONS(2050), [anon_sym_goto] = ACTIONS(2050), [anon_sym_DASH_DASH] = ACTIONS(2052), [anon_sym_PLUS_PLUS] = ACTIONS(2052), [anon_sym_sizeof] = ACTIONS(2050), [sym_number_literal] = ACTIONS(2052), [anon_sym_L_SQUOTE] = ACTIONS(2052), [anon_sym_u_SQUOTE] = ACTIONS(2052), [anon_sym_U_SQUOTE] = ACTIONS(2052), [anon_sym_u8_SQUOTE] = ACTIONS(2052), [anon_sym_SQUOTE] = ACTIONS(2052), [anon_sym_L_DQUOTE] = ACTIONS(2052), [anon_sym_u_DQUOTE] = ACTIONS(2052), [anon_sym_U_DQUOTE] = ACTIONS(2052), [anon_sym_u8_DQUOTE] = ACTIONS(2052), [anon_sym_DQUOTE] = ACTIONS(2052), [sym_true] = ACTIONS(2050), [sym_false] = ACTIONS(2050), [sym_null] = ACTIONS(2050), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2050), [anon_sym_virtual] = ACTIONS(2050), [anon_sym_explicit] = ACTIONS(2050), [sym_auto] = ACTIONS(2050), [anon_sym_typename] = ACTIONS(2050), [anon_sym_template] = ACTIONS(2050), [anon_sym_operator] = ACTIONS(2050), [anon_sym_delete] = ACTIONS(2050), [anon_sym_throw] = ACTIONS(2050), [anon_sym_namespace] = ACTIONS(2050), [anon_sym_using] = ACTIONS(2050), [anon_sym_static_assert] = ACTIONS(2050), [anon_sym_co_return] = ACTIONS(2050), [anon_sym_co_yield] = ACTIONS(2050), [anon_sym_try] = ACTIONS(2050), [anon_sym_co_await] = ACTIONS(2050), [anon_sym_new] = ACTIONS(2050), [sym_this] = ACTIONS(2050), [sym_nullptr] = ACTIONS(2050), [sym_raw_string_literal] = ACTIONS(2052), }, [370] = { [sym_identifier] = ACTIONS(2054), [aux_sym_preproc_include_token1] = ACTIONS(2054), [aux_sym_preproc_def_token1] = ACTIONS(2054), [aux_sym_preproc_if_token1] = ACTIONS(2054), [aux_sym_preproc_if_token2] = ACTIONS(2054), [aux_sym_preproc_ifdef_token1] = ACTIONS(2054), [aux_sym_preproc_ifdef_token2] = ACTIONS(2054), [aux_sym_preproc_else_token1] = ACTIONS(2054), [aux_sym_preproc_elif_token1] = ACTIONS(2054), [sym_preproc_directive] = ACTIONS(2054), [anon_sym_LPAREN2] = ACTIONS(2056), [anon_sym_BANG] = ACTIONS(2056), [anon_sym_TILDE] = ACTIONS(2056), [anon_sym_DASH] = ACTIONS(2054), [anon_sym_PLUS] = ACTIONS(2054), [anon_sym_STAR] = ACTIONS(2056), [anon_sym_AMP_AMP] = ACTIONS(2056), [anon_sym_AMP] = ACTIONS(2054), [anon_sym_SEMI] = ACTIONS(2056), [anon_sym_typedef] = ACTIONS(2054), [anon_sym_extern] = ACTIONS(2054), [anon_sym___attribute__] = ACTIONS(2054), [anon_sym_COLON_COLON] = ACTIONS(2056), [anon_sym_LBRACK_LBRACK] = ACTIONS(2056), [anon_sym___declspec] = ACTIONS(2054), [anon_sym___based] = ACTIONS(2054), [anon_sym___cdecl] = ACTIONS(2054), [anon_sym___clrcall] = ACTIONS(2054), [anon_sym___stdcall] = ACTIONS(2054), [anon_sym___fastcall] = ACTIONS(2054), [anon_sym___thiscall] = ACTIONS(2054), [anon_sym___vectorcall] = ACTIONS(2054), [anon_sym_LBRACE] = ACTIONS(2056), [anon_sym_LBRACK] = ACTIONS(2054), [anon_sym_static] = ACTIONS(2054), [anon_sym_register] = ACTIONS(2054), [anon_sym_inline] = ACTIONS(2054), [anon_sym_thread_local] = ACTIONS(2054), [anon_sym_const] = ACTIONS(2054), [anon_sym_volatile] = ACTIONS(2054), [anon_sym_restrict] = ACTIONS(2054), [anon_sym__Atomic] = ACTIONS(2054), [anon_sym_mutable] = ACTIONS(2054), [anon_sym_constexpr] = ACTIONS(2054), [anon_sym_signed] = ACTIONS(2054), [anon_sym_unsigned] = ACTIONS(2054), [anon_sym_long] = ACTIONS(2054), [anon_sym_short] = ACTIONS(2054), [sym_primitive_type] = ACTIONS(2054), [anon_sym_enum] = ACTIONS(2054), [anon_sym_class] = ACTIONS(2054), [anon_sym_struct] = ACTIONS(2054), [anon_sym_union] = ACTIONS(2054), [anon_sym_if] = ACTIONS(2054), [anon_sym_switch] = ACTIONS(2054), [anon_sym_case] = ACTIONS(2054), [anon_sym_default] = ACTIONS(2054), [anon_sym_while] = ACTIONS(2054), [anon_sym_do] = ACTIONS(2054), [anon_sym_for] = ACTIONS(2054), [anon_sym_return] = ACTIONS(2054), [anon_sym_break] = ACTIONS(2054), [anon_sym_continue] = ACTIONS(2054), [anon_sym_goto] = ACTIONS(2054), [anon_sym_DASH_DASH] = ACTIONS(2056), [anon_sym_PLUS_PLUS] = ACTIONS(2056), [anon_sym_sizeof] = ACTIONS(2054), [sym_number_literal] = ACTIONS(2056), [anon_sym_L_SQUOTE] = ACTIONS(2056), [anon_sym_u_SQUOTE] = ACTIONS(2056), [anon_sym_U_SQUOTE] = ACTIONS(2056), [anon_sym_u8_SQUOTE] = ACTIONS(2056), [anon_sym_SQUOTE] = ACTIONS(2056), [anon_sym_L_DQUOTE] = ACTIONS(2056), [anon_sym_u_DQUOTE] = ACTIONS(2056), [anon_sym_U_DQUOTE] = ACTIONS(2056), [anon_sym_u8_DQUOTE] = ACTIONS(2056), [anon_sym_DQUOTE] = ACTIONS(2056), [sym_true] = ACTIONS(2054), [sym_false] = ACTIONS(2054), [sym_null] = ACTIONS(2054), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2054), [anon_sym_virtual] = ACTIONS(2054), [anon_sym_explicit] = ACTIONS(2054), [sym_auto] = ACTIONS(2054), [anon_sym_typename] = ACTIONS(2054), [anon_sym_template] = ACTIONS(2054), [anon_sym_operator] = ACTIONS(2054), [anon_sym_delete] = ACTIONS(2054), [anon_sym_throw] = ACTIONS(2054), [anon_sym_namespace] = ACTIONS(2054), [anon_sym_using] = ACTIONS(2054), [anon_sym_static_assert] = ACTIONS(2054), [anon_sym_co_return] = ACTIONS(2054), [anon_sym_co_yield] = ACTIONS(2054), [anon_sym_try] = ACTIONS(2054), [anon_sym_co_await] = ACTIONS(2054), [anon_sym_new] = ACTIONS(2054), [sym_this] = ACTIONS(2054), [sym_nullptr] = ACTIONS(2054), [sym_raw_string_literal] = ACTIONS(2056), }, [371] = { [sym_identifier] = ACTIONS(2058), [aux_sym_preproc_include_token1] = ACTIONS(2058), [aux_sym_preproc_def_token1] = ACTIONS(2058), [aux_sym_preproc_if_token1] = ACTIONS(2058), [aux_sym_preproc_if_token2] = ACTIONS(2058), [aux_sym_preproc_ifdef_token1] = ACTIONS(2058), [aux_sym_preproc_ifdef_token2] = ACTIONS(2058), [aux_sym_preproc_else_token1] = ACTIONS(2058), [aux_sym_preproc_elif_token1] = ACTIONS(2058), [sym_preproc_directive] = ACTIONS(2058), [anon_sym_LPAREN2] = ACTIONS(2060), [anon_sym_BANG] = ACTIONS(2060), [anon_sym_TILDE] = ACTIONS(2060), [anon_sym_DASH] = ACTIONS(2058), [anon_sym_PLUS] = ACTIONS(2058), [anon_sym_STAR] = ACTIONS(2060), [anon_sym_AMP_AMP] = ACTIONS(2060), [anon_sym_AMP] = ACTIONS(2058), [anon_sym_SEMI] = ACTIONS(2060), [anon_sym_typedef] = ACTIONS(2058), [anon_sym_extern] = ACTIONS(2058), [anon_sym___attribute__] = ACTIONS(2058), [anon_sym_COLON_COLON] = ACTIONS(2060), [anon_sym_LBRACK_LBRACK] = ACTIONS(2060), [anon_sym___declspec] = ACTIONS(2058), [anon_sym___based] = ACTIONS(2058), [anon_sym___cdecl] = ACTIONS(2058), [anon_sym___clrcall] = ACTIONS(2058), [anon_sym___stdcall] = ACTIONS(2058), [anon_sym___fastcall] = ACTIONS(2058), [anon_sym___thiscall] = ACTIONS(2058), [anon_sym___vectorcall] = ACTIONS(2058), [anon_sym_LBRACE] = ACTIONS(2060), [anon_sym_LBRACK] = ACTIONS(2058), [anon_sym_static] = ACTIONS(2058), [anon_sym_register] = ACTIONS(2058), [anon_sym_inline] = ACTIONS(2058), [anon_sym_thread_local] = ACTIONS(2058), [anon_sym_const] = ACTIONS(2058), [anon_sym_volatile] = ACTIONS(2058), [anon_sym_restrict] = ACTIONS(2058), [anon_sym__Atomic] = ACTIONS(2058), [anon_sym_mutable] = ACTIONS(2058), [anon_sym_constexpr] = ACTIONS(2058), [anon_sym_signed] = ACTIONS(2058), [anon_sym_unsigned] = ACTIONS(2058), [anon_sym_long] = ACTIONS(2058), [anon_sym_short] = ACTIONS(2058), [sym_primitive_type] = ACTIONS(2058), [anon_sym_enum] = ACTIONS(2058), [anon_sym_class] = ACTIONS(2058), [anon_sym_struct] = ACTIONS(2058), [anon_sym_union] = ACTIONS(2058), [anon_sym_if] = ACTIONS(2058), [anon_sym_switch] = ACTIONS(2058), [anon_sym_case] = ACTIONS(2058), [anon_sym_default] = ACTIONS(2058), [anon_sym_while] = ACTIONS(2058), [anon_sym_do] = ACTIONS(2058), [anon_sym_for] = ACTIONS(2058), [anon_sym_return] = ACTIONS(2058), [anon_sym_break] = ACTIONS(2058), [anon_sym_continue] = ACTIONS(2058), [anon_sym_goto] = ACTIONS(2058), [anon_sym_DASH_DASH] = ACTIONS(2060), [anon_sym_PLUS_PLUS] = ACTIONS(2060), [anon_sym_sizeof] = ACTIONS(2058), [sym_number_literal] = ACTIONS(2060), [anon_sym_L_SQUOTE] = ACTIONS(2060), [anon_sym_u_SQUOTE] = ACTIONS(2060), [anon_sym_U_SQUOTE] = ACTIONS(2060), [anon_sym_u8_SQUOTE] = ACTIONS(2060), [anon_sym_SQUOTE] = ACTIONS(2060), [anon_sym_L_DQUOTE] = ACTIONS(2060), [anon_sym_u_DQUOTE] = ACTIONS(2060), [anon_sym_U_DQUOTE] = ACTIONS(2060), [anon_sym_u8_DQUOTE] = ACTIONS(2060), [anon_sym_DQUOTE] = ACTIONS(2060), [sym_true] = ACTIONS(2058), [sym_false] = ACTIONS(2058), [sym_null] = ACTIONS(2058), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2058), [anon_sym_virtual] = ACTIONS(2058), [anon_sym_explicit] = ACTIONS(2058), [sym_auto] = ACTIONS(2058), [anon_sym_typename] = ACTIONS(2058), [anon_sym_template] = ACTIONS(2058), [anon_sym_operator] = ACTIONS(2058), [anon_sym_delete] = ACTIONS(2058), [anon_sym_throw] = ACTIONS(2058), [anon_sym_namespace] = ACTIONS(2058), [anon_sym_using] = ACTIONS(2058), [anon_sym_static_assert] = ACTIONS(2058), [anon_sym_co_return] = ACTIONS(2058), [anon_sym_co_yield] = ACTIONS(2058), [anon_sym_try] = ACTIONS(2058), [anon_sym_co_await] = ACTIONS(2058), [anon_sym_new] = ACTIONS(2058), [sym_this] = ACTIONS(2058), [sym_nullptr] = ACTIONS(2058), [sym_raw_string_literal] = ACTIONS(2060), }, [372] = { [sym_identifier] = ACTIONS(2062), [aux_sym_preproc_include_token1] = ACTIONS(2062), [aux_sym_preproc_def_token1] = ACTIONS(2062), [aux_sym_preproc_if_token1] = ACTIONS(2062), [aux_sym_preproc_if_token2] = ACTIONS(2062), [aux_sym_preproc_ifdef_token1] = ACTIONS(2062), [aux_sym_preproc_ifdef_token2] = ACTIONS(2062), [aux_sym_preproc_else_token1] = ACTIONS(2062), [aux_sym_preproc_elif_token1] = ACTIONS(2062), [sym_preproc_directive] = ACTIONS(2062), [anon_sym_LPAREN2] = ACTIONS(2064), [anon_sym_BANG] = ACTIONS(2064), [anon_sym_TILDE] = ACTIONS(2064), [anon_sym_DASH] = ACTIONS(2062), [anon_sym_PLUS] = ACTIONS(2062), [anon_sym_STAR] = ACTIONS(2064), [anon_sym_AMP_AMP] = ACTIONS(2064), [anon_sym_AMP] = ACTIONS(2062), [anon_sym_SEMI] = ACTIONS(2064), [anon_sym_typedef] = ACTIONS(2062), [anon_sym_extern] = ACTIONS(2062), [anon_sym___attribute__] = ACTIONS(2062), [anon_sym_COLON_COLON] = ACTIONS(2064), [anon_sym_LBRACK_LBRACK] = ACTIONS(2064), [anon_sym___declspec] = ACTIONS(2062), [anon_sym___based] = ACTIONS(2062), [anon_sym___cdecl] = ACTIONS(2062), [anon_sym___clrcall] = ACTIONS(2062), [anon_sym___stdcall] = ACTIONS(2062), [anon_sym___fastcall] = ACTIONS(2062), [anon_sym___thiscall] = ACTIONS(2062), [anon_sym___vectorcall] = ACTIONS(2062), [anon_sym_LBRACE] = ACTIONS(2064), [anon_sym_LBRACK] = ACTIONS(2062), [anon_sym_static] = ACTIONS(2062), [anon_sym_register] = ACTIONS(2062), [anon_sym_inline] = ACTIONS(2062), [anon_sym_thread_local] = ACTIONS(2062), [anon_sym_const] = ACTIONS(2062), [anon_sym_volatile] = ACTIONS(2062), [anon_sym_restrict] = ACTIONS(2062), [anon_sym__Atomic] = ACTIONS(2062), [anon_sym_mutable] = ACTIONS(2062), [anon_sym_constexpr] = ACTIONS(2062), [anon_sym_signed] = ACTIONS(2062), [anon_sym_unsigned] = ACTIONS(2062), [anon_sym_long] = ACTIONS(2062), [anon_sym_short] = ACTIONS(2062), [sym_primitive_type] = ACTIONS(2062), [anon_sym_enum] = ACTIONS(2062), [anon_sym_class] = ACTIONS(2062), [anon_sym_struct] = ACTIONS(2062), [anon_sym_union] = ACTIONS(2062), [anon_sym_if] = ACTIONS(2062), [anon_sym_switch] = ACTIONS(2062), [anon_sym_case] = ACTIONS(2062), [anon_sym_default] = ACTIONS(2062), [anon_sym_while] = ACTIONS(2062), [anon_sym_do] = ACTIONS(2062), [anon_sym_for] = ACTIONS(2062), [anon_sym_return] = ACTIONS(2062), [anon_sym_break] = ACTIONS(2062), [anon_sym_continue] = ACTIONS(2062), [anon_sym_goto] = ACTIONS(2062), [anon_sym_DASH_DASH] = ACTIONS(2064), [anon_sym_PLUS_PLUS] = ACTIONS(2064), [anon_sym_sizeof] = ACTIONS(2062), [sym_number_literal] = ACTIONS(2064), [anon_sym_L_SQUOTE] = ACTIONS(2064), [anon_sym_u_SQUOTE] = ACTIONS(2064), [anon_sym_U_SQUOTE] = ACTIONS(2064), [anon_sym_u8_SQUOTE] = ACTIONS(2064), [anon_sym_SQUOTE] = ACTIONS(2064), [anon_sym_L_DQUOTE] = ACTIONS(2064), [anon_sym_u_DQUOTE] = ACTIONS(2064), [anon_sym_U_DQUOTE] = ACTIONS(2064), [anon_sym_u8_DQUOTE] = ACTIONS(2064), [anon_sym_DQUOTE] = ACTIONS(2064), [sym_true] = ACTIONS(2062), [sym_false] = ACTIONS(2062), [sym_null] = ACTIONS(2062), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2062), [anon_sym_virtual] = ACTIONS(2062), [anon_sym_explicit] = ACTIONS(2062), [sym_auto] = ACTIONS(2062), [anon_sym_typename] = ACTIONS(2062), [anon_sym_template] = ACTIONS(2062), [anon_sym_operator] = ACTIONS(2062), [anon_sym_delete] = ACTIONS(2062), [anon_sym_throw] = ACTIONS(2062), [anon_sym_namespace] = ACTIONS(2062), [anon_sym_using] = ACTIONS(2062), [anon_sym_static_assert] = ACTIONS(2062), [anon_sym_co_return] = ACTIONS(2062), [anon_sym_co_yield] = ACTIONS(2062), [anon_sym_try] = ACTIONS(2062), [anon_sym_co_await] = ACTIONS(2062), [anon_sym_new] = ACTIONS(2062), [sym_this] = ACTIONS(2062), [sym_nullptr] = ACTIONS(2062), [sym_raw_string_literal] = ACTIONS(2064), }, [373] = { [sym_identifier] = ACTIONS(1763), [aux_sym_preproc_include_token1] = ACTIONS(1763), [aux_sym_preproc_def_token1] = ACTIONS(1763), [aux_sym_preproc_if_token1] = ACTIONS(1763), [aux_sym_preproc_if_token2] = ACTIONS(1763), [aux_sym_preproc_ifdef_token1] = ACTIONS(1763), [aux_sym_preproc_ifdef_token2] = ACTIONS(1763), [sym_preproc_directive] = ACTIONS(1763), [anon_sym_LPAREN2] = ACTIONS(1765), [anon_sym_BANG] = ACTIONS(1765), [anon_sym_TILDE] = ACTIONS(1765), [anon_sym_DASH] = ACTIONS(1763), [anon_sym_PLUS] = ACTIONS(1763), [anon_sym_STAR] = ACTIONS(1765), [anon_sym_AMP_AMP] = ACTIONS(1765), [anon_sym_AMP] = ACTIONS(1763), [anon_sym_SEMI] = ACTIONS(1765), [anon_sym_typedef] = ACTIONS(1763), [anon_sym_extern] = ACTIONS(1763), [anon_sym___attribute__] = ACTIONS(1763), [anon_sym_COLON_COLON] = ACTIONS(1765), [anon_sym_LBRACK_LBRACK] = ACTIONS(1765), [anon_sym___declspec] = ACTIONS(1763), [anon_sym___based] = ACTIONS(1763), [anon_sym___cdecl] = ACTIONS(1763), [anon_sym___clrcall] = ACTIONS(1763), [anon_sym___stdcall] = ACTIONS(1763), [anon_sym___fastcall] = ACTIONS(1763), [anon_sym___thiscall] = ACTIONS(1763), [anon_sym___vectorcall] = ACTIONS(1763), [anon_sym_LBRACE] = ACTIONS(1765), [anon_sym_LBRACK] = ACTIONS(1763), [anon_sym_static] = ACTIONS(1763), [anon_sym_register] = ACTIONS(1763), [anon_sym_inline] = ACTIONS(1763), [anon_sym_thread_local] = ACTIONS(1763), [anon_sym_const] = ACTIONS(1763), [anon_sym_volatile] = ACTIONS(1763), [anon_sym_restrict] = ACTIONS(1763), [anon_sym__Atomic] = ACTIONS(1763), [anon_sym_mutable] = ACTIONS(1763), [anon_sym_constexpr] = ACTIONS(1763), [anon_sym_signed] = ACTIONS(1763), [anon_sym_unsigned] = ACTIONS(1763), [anon_sym_long] = ACTIONS(1763), [anon_sym_short] = ACTIONS(1763), [sym_primitive_type] = ACTIONS(1763), [anon_sym_enum] = ACTIONS(1763), [anon_sym_class] = ACTIONS(1763), [anon_sym_struct] = ACTIONS(1763), [anon_sym_union] = ACTIONS(1763), [anon_sym_if] = ACTIONS(1763), [anon_sym_else] = ACTIONS(1763), [anon_sym_switch] = ACTIONS(1763), [anon_sym_case] = ACTIONS(1763), [anon_sym_default] = ACTIONS(1763), [anon_sym_while] = ACTIONS(1763), [anon_sym_do] = ACTIONS(1763), [anon_sym_for] = ACTIONS(1763), [anon_sym_return] = ACTIONS(1763), [anon_sym_break] = ACTIONS(1763), [anon_sym_continue] = ACTIONS(1763), [anon_sym_goto] = ACTIONS(1763), [anon_sym_DASH_DASH] = ACTIONS(1765), [anon_sym_PLUS_PLUS] = ACTIONS(1765), [anon_sym_sizeof] = ACTIONS(1763), [sym_number_literal] = ACTIONS(1765), [anon_sym_L_SQUOTE] = ACTIONS(1765), [anon_sym_u_SQUOTE] = ACTIONS(1765), [anon_sym_U_SQUOTE] = ACTIONS(1765), [anon_sym_u8_SQUOTE] = ACTIONS(1765), [anon_sym_SQUOTE] = ACTIONS(1765), [anon_sym_L_DQUOTE] = ACTIONS(1765), [anon_sym_u_DQUOTE] = ACTIONS(1765), [anon_sym_U_DQUOTE] = ACTIONS(1765), [anon_sym_u8_DQUOTE] = ACTIONS(1765), [anon_sym_DQUOTE] = ACTIONS(1765), [sym_true] = ACTIONS(1763), [sym_false] = ACTIONS(1763), [sym_null] = ACTIONS(1763), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1763), [anon_sym_virtual] = ACTIONS(1763), [anon_sym_explicit] = ACTIONS(1763), [sym_auto] = ACTIONS(1763), [anon_sym_typename] = ACTIONS(1763), [anon_sym_template] = ACTIONS(1763), [anon_sym_operator] = ACTIONS(1763), [anon_sym_delete] = ACTIONS(1763), [anon_sym_throw] = ACTIONS(1763), [anon_sym_namespace] = ACTIONS(1763), [anon_sym_using] = ACTIONS(1763), [anon_sym_static_assert] = ACTIONS(1763), [anon_sym_co_return] = ACTIONS(1763), [anon_sym_co_yield] = ACTIONS(1763), [anon_sym_try] = ACTIONS(1763), [anon_sym_catch] = ACTIONS(1763), [anon_sym_co_await] = ACTIONS(1763), [anon_sym_new] = ACTIONS(1763), [sym_this] = ACTIONS(1763), [sym_nullptr] = ACTIONS(1763), [sym_raw_string_literal] = ACTIONS(1765), }, [374] = { [sym_identifier] = ACTIONS(2066), [aux_sym_preproc_include_token1] = ACTIONS(2066), [aux_sym_preproc_def_token1] = ACTIONS(2066), [aux_sym_preproc_if_token1] = ACTIONS(2066), [aux_sym_preproc_if_token2] = ACTIONS(2066), [aux_sym_preproc_ifdef_token1] = ACTIONS(2066), [aux_sym_preproc_ifdef_token2] = ACTIONS(2066), [aux_sym_preproc_else_token1] = ACTIONS(2066), [aux_sym_preproc_elif_token1] = ACTIONS(2066), [sym_preproc_directive] = ACTIONS(2066), [anon_sym_LPAREN2] = ACTIONS(2068), [anon_sym_BANG] = ACTIONS(2068), [anon_sym_TILDE] = ACTIONS(2068), [anon_sym_DASH] = ACTIONS(2066), [anon_sym_PLUS] = ACTIONS(2066), [anon_sym_STAR] = ACTIONS(2068), [anon_sym_AMP_AMP] = ACTIONS(2068), [anon_sym_AMP] = ACTIONS(2066), [anon_sym_SEMI] = ACTIONS(2068), [anon_sym_typedef] = ACTIONS(2066), [anon_sym_extern] = ACTIONS(2066), [anon_sym___attribute__] = ACTIONS(2066), [anon_sym_COLON_COLON] = ACTIONS(2068), [anon_sym_LBRACK_LBRACK] = ACTIONS(2068), [anon_sym___declspec] = ACTIONS(2066), [anon_sym___based] = ACTIONS(2066), [anon_sym___cdecl] = ACTIONS(2066), [anon_sym___clrcall] = ACTIONS(2066), [anon_sym___stdcall] = ACTIONS(2066), [anon_sym___fastcall] = ACTIONS(2066), [anon_sym___thiscall] = ACTIONS(2066), [anon_sym___vectorcall] = ACTIONS(2066), [anon_sym_LBRACE] = ACTIONS(2068), [anon_sym_LBRACK] = ACTIONS(2066), [anon_sym_static] = ACTIONS(2066), [anon_sym_register] = ACTIONS(2066), [anon_sym_inline] = ACTIONS(2066), [anon_sym_thread_local] = ACTIONS(2066), [anon_sym_const] = ACTIONS(2066), [anon_sym_volatile] = ACTIONS(2066), [anon_sym_restrict] = ACTIONS(2066), [anon_sym__Atomic] = ACTIONS(2066), [anon_sym_mutable] = ACTIONS(2066), [anon_sym_constexpr] = ACTIONS(2066), [anon_sym_signed] = ACTIONS(2066), [anon_sym_unsigned] = ACTIONS(2066), [anon_sym_long] = ACTIONS(2066), [anon_sym_short] = ACTIONS(2066), [sym_primitive_type] = ACTIONS(2066), [anon_sym_enum] = ACTIONS(2066), [anon_sym_class] = ACTIONS(2066), [anon_sym_struct] = ACTIONS(2066), [anon_sym_union] = ACTIONS(2066), [anon_sym_if] = ACTIONS(2066), [anon_sym_switch] = ACTIONS(2066), [anon_sym_case] = ACTIONS(2066), [anon_sym_default] = ACTIONS(2066), [anon_sym_while] = ACTIONS(2066), [anon_sym_do] = ACTIONS(2066), [anon_sym_for] = ACTIONS(2066), [anon_sym_return] = ACTIONS(2066), [anon_sym_break] = ACTIONS(2066), [anon_sym_continue] = ACTIONS(2066), [anon_sym_goto] = ACTIONS(2066), [anon_sym_DASH_DASH] = ACTIONS(2068), [anon_sym_PLUS_PLUS] = ACTIONS(2068), [anon_sym_sizeof] = ACTIONS(2066), [sym_number_literal] = ACTIONS(2068), [anon_sym_L_SQUOTE] = ACTIONS(2068), [anon_sym_u_SQUOTE] = ACTIONS(2068), [anon_sym_U_SQUOTE] = ACTIONS(2068), [anon_sym_u8_SQUOTE] = ACTIONS(2068), [anon_sym_SQUOTE] = ACTIONS(2068), [anon_sym_L_DQUOTE] = ACTIONS(2068), [anon_sym_u_DQUOTE] = ACTIONS(2068), [anon_sym_U_DQUOTE] = ACTIONS(2068), [anon_sym_u8_DQUOTE] = ACTIONS(2068), [anon_sym_DQUOTE] = ACTIONS(2068), [sym_true] = ACTIONS(2066), [sym_false] = ACTIONS(2066), [sym_null] = ACTIONS(2066), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2066), [anon_sym_virtual] = ACTIONS(2066), [anon_sym_explicit] = ACTIONS(2066), [sym_auto] = ACTIONS(2066), [anon_sym_typename] = ACTIONS(2066), [anon_sym_template] = ACTIONS(2066), [anon_sym_operator] = ACTIONS(2066), [anon_sym_delete] = ACTIONS(2066), [anon_sym_throw] = ACTIONS(2066), [anon_sym_namespace] = ACTIONS(2066), [anon_sym_using] = ACTIONS(2066), [anon_sym_static_assert] = ACTIONS(2066), [anon_sym_co_return] = ACTIONS(2066), [anon_sym_co_yield] = ACTIONS(2066), [anon_sym_try] = ACTIONS(2066), [anon_sym_co_await] = ACTIONS(2066), [anon_sym_new] = ACTIONS(2066), [sym_this] = ACTIONS(2066), [sym_nullptr] = ACTIONS(2066), [sym_raw_string_literal] = ACTIONS(2068), }, [375] = { [sym_identifier] = ACTIONS(2070), [aux_sym_preproc_include_token1] = ACTIONS(2070), [aux_sym_preproc_def_token1] = ACTIONS(2070), [aux_sym_preproc_if_token1] = ACTIONS(2070), [aux_sym_preproc_if_token2] = ACTIONS(2070), [aux_sym_preproc_ifdef_token1] = ACTIONS(2070), [aux_sym_preproc_ifdef_token2] = ACTIONS(2070), [aux_sym_preproc_else_token1] = ACTIONS(2070), [aux_sym_preproc_elif_token1] = ACTIONS(2070), [sym_preproc_directive] = ACTIONS(2070), [anon_sym_LPAREN2] = ACTIONS(2072), [anon_sym_BANG] = ACTIONS(2072), [anon_sym_TILDE] = ACTIONS(2072), [anon_sym_DASH] = ACTIONS(2070), [anon_sym_PLUS] = ACTIONS(2070), [anon_sym_STAR] = ACTIONS(2072), [anon_sym_AMP_AMP] = ACTIONS(2072), [anon_sym_AMP] = ACTIONS(2070), [anon_sym_SEMI] = ACTIONS(2072), [anon_sym_typedef] = ACTIONS(2070), [anon_sym_extern] = ACTIONS(2070), [anon_sym___attribute__] = ACTIONS(2070), [anon_sym_COLON_COLON] = ACTIONS(2072), [anon_sym_LBRACK_LBRACK] = ACTIONS(2072), [anon_sym___declspec] = ACTIONS(2070), [anon_sym___based] = ACTIONS(2070), [anon_sym___cdecl] = ACTIONS(2070), [anon_sym___clrcall] = ACTIONS(2070), [anon_sym___stdcall] = ACTIONS(2070), [anon_sym___fastcall] = ACTIONS(2070), [anon_sym___thiscall] = ACTIONS(2070), [anon_sym___vectorcall] = ACTIONS(2070), [anon_sym_LBRACE] = ACTIONS(2072), [anon_sym_LBRACK] = ACTIONS(2070), [anon_sym_static] = ACTIONS(2070), [anon_sym_register] = ACTIONS(2070), [anon_sym_inline] = ACTIONS(2070), [anon_sym_thread_local] = ACTIONS(2070), [anon_sym_const] = ACTIONS(2070), [anon_sym_volatile] = ACTIONS(2070), [anon_sym_restrict] = ACTIONS(2070), [anon_sym__Atomic] = ACTIONS(2070), [anon_sym_mutable] = ACTIONS(2070), [anon_sym_constexpr] = ACTIONS(2070), [anon_sym_signed] = ACTIONS(2070), [anon_sym_unsigned] = ACTIONS(2070), [anon_sym_long] = ACTIONS(2070), [anon_sym_short] = ACTIONS(2070), [sym_primitive_type] = ACTIONS(2070), [anon_sym_enum] = ACTIONS(2070), [anon_sym_class] = ACTIONS(2070), [anon_sym_struct] = ACTIONS(2070), [anon_sym_union] = ACTIONS(2070), [anon_sym_if] = ACTIONS(2070), [anon_sym_switch] = ACTIONS(2070), [anon_sym_case] = ACTIONS(2070), [anon_sym_default] = ACTIONS(2070), [anon_sym_while] = ACTIONS(2070), [anon_sym_do] = ACTIONS(2070), [anon_sym_for] = ACTIONS(2070), [anon_sym_return] = ACTIONS(2070), [anon_sym_break] = ACTIONS(2070), [anon_sym_continue] = ACTIONS(2070), [anon_sym_goto] = ACTIONS(2070), [anon_sym_DASH_DASH] = ACTIONS(2072), [anon_sym_PLUS_PLUS] = ACTIONS(2072), [anon_sym_sizeof] = ACTIONS(2070), [sym_number_literal] = ACTIONS(2072), [anon_sym_L_SQUOTE] = ACTIONS(2072), [anon_sym_u_SQUOTE] = ACTIONS(2072), [anon_sym_U_SQUOTE] = ACTIONS(2072), [anon_sym_u8_SQUOTE] = ACTIONS(2072), [anon_sym_SQUOTE] = ACTIONS(2072), [anon_sym_L_DQUOTE] = ACTIONS(2072), [anon_sym_u_DQUOTE] = ACTIONS(2072), [anon_sym_U_DQUOTE] = ACTIONS(2072), [anon_sym_u8_DQUOTE] = ACTIONS(2072), [anon_sym_DQUOTE] = ACTIONS(2072), [sym_true] = ACTIONS(2070), [sym_false] = ACTIONS(2070), [sym_null] = ACTIONS(2070), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2070), [anon_sym_virtual] = ACTIONS(2070), [anon_sym_explicit] = ACTIONS(2070), [sym_auto] = ACTIONS(2070), [anon_sym_typename] = ACTIONS(2070), [anon_sym_template] = ACTIONS(2070), [anon_sym_operator] = ACTIONS(2070), [anon_sym_delete] = ACTIONS(2070), [anon_sym_throw] = ACTIONS(2070), [anon_sym_namespace] = ACTIONS(2070), [anon_sym_using] = ACTIONS(2070), [anon_sym_static_assert] = ACTIONS(2070), [anon_sym_co_return] = ACTIONS(2070), [anon_sym_co_yield] = ACTIONS(2070), [anon_sym_try] = ACTIONS(2070), [anon_sym_co_await] = ACTIONS(2070), [anon_sym_new] = ACTIONS(2070), [sym_this] = ACTIONS(2070), [sym_nullptr] = ACTIONS(2070), [sym_raw_string_literal] = ACTIONS(2072), }, [376] = { [sym_identifier] = ACTIONS(2074), [aux_sym_preproc_include_token1] = ACTIONS(2074), [aux_sym_preproc_def_token1] = ACTIONS(2074), [aux_sym_preproc_if_token1] = ACTIONS(2074), [aux_sym_preproc_if_token2] = ACTIONS(2074), [aux_sym_preproc_ifdef_token1] = ACTIONS(2074), [aux_sym_preproc_ifdef_token2] = ACTIONS(2074), [aux_sym_preproc_else_token1] = ACTIONS(2074), [aux_sym_preproc_elif_token1] = ACTIONS(2074), [sym_preproc_directive] = ACTIONS(2074), [anon_sym_LPAREN2] = ACTIONS(2076), [anon_sym_BANG] = ACTIONS(2076), [anon_sym_TILDE] = ACTIONS(2076), [anon_sym_DASH] = ACTIONS(2074), [anon_sym_PLUS] = ACTIONS(2074), [anon_sym_STAR] = ACTIONS(2076), [anon_sym_AMP_AMP] = ACTIONS(2076), [anon_sym_AMP] = ACTIONS(2074), [anon_sym_SEMI] = ACTIONS(2076), [anon_sym_typedef] = ACTIONS(2074), [anon_sym_extern] = ACTIONS(2074), [anon_sym___attribute__] = ACTIONS(2074), [anon_sym_COLON_COLON] = ACTIONS(2076), [anon_sym_LBRACK_LBRACK] = ACTIONS(2076), [anon_sym___declspec] = ACTIONS(2074), [anon_sym___based] = ACTIONS(2074), [anon_sym___cdecl] = ACTIONS(2074), [anon_sym___clrcall] = ACTIONS(2074), [anon_sym___stdcall] = ACTIONS(2074), [anon_sym___fastcall] = ACTIONS(2074), [anon_sym___thiscall] = ACTIONS(2074), [anon_sym___vectorcall] = ACTIONS(2074), [anon_sym_LBRACE] = ACTIONS(2076), [anon_sym_LBRACK] = ACTIONS(2074), [anon_sym_static] = ACTIONS(2074), [anon_sym_register] = ACTIONS(2074), [anon_sym_inline] = ACTIONS(2074), [anon_sym_thread_local] = ACTIONS(2074), [anon_sym_const] = ACTIONS(2074), [anon_sym_volatile] = ACTIONS(2074), [anon_sym_restrict] = ACTIONS(2074), [anon_sym__Atomic] = ACTIONS(2074), [anon_sym_mutable] = ACTIONS(2074), [anon_sym_constexpr] = ACTIONS(2074), [anon_sym_signed] = ACTIONS(2074), [anon_sym_unsigned] = ACTIONS(2074), [anon_sym_long] = ACTIONS(2074), [anon_sym_short] = ACTIONS(2074), [sym_primitive_type] = ACTIONS(2074), [anon_sym_enum] = ACTIONS(2074), [anon_sym_class] = ACTIONS(2074), [anon_sym_struct] = ACTIONS(2074), [anon_sym_union] = ACTIONS(2074), [anon_sym_if] = ACTIONS(2074), [anon_sym_switch] = ACTIONS(2074), [anon_sym_case] = ACTIONS(2074), [anon_sym_default] = ACTIONS(2074), [anon_sym_while] = ACTIONS(2074), [anon_sym_do] = ACTIONS(2074), [anon_sym_for] = ACTIONS(2074), [anon_sym_return] = ACTIONS(2074), [anon_sym_break] = ACTIONS(2074), [anon_sym_continue] = ACTIONS(2074), [anon_sym_goto] = ACTIONS(2074), [anon_sym_DASH_DASH] = ACTIONS(2076), [anon_sym_PLUS_PLUS] = ACTIONS(2076), [anon_sym_sizeof] = ACTIONS(2074), [sym_number_literal] = ACTIONS(2076), [anon_sym_L_SQUOTE] = ACTIONS(2076), [anon_sym_u_SQUOTE] = ACTIONS(2076), [anon_sym_U_SQUOTE] = ACTIONS(2076), [anon_sym_u8_SQUOTE] = ACTIONS(2076), [anon_sym_SQUOTE] = ACTIONS(2076), [anon_sym_L_DQUOTE] = ACTIONS(2076), [anon_sym_u_DQUOTE] = ACTIONS(2076), [anon_sym_U_DQUOTE] = ACTIONS(2076), [anon_sym_u8_DQUOTE] = ACTIONS(2076), [anon_sym_DQUOTE] = ACTIONS(2076), [sym_true] = ACTIONS(2074), [sym_false] = ACTIONS(2074), [sym_null] = ACTIONS(2074), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2074), [anon_sym_virtual] = ACTIONS(2074), [anon_sym_explicit] = ACTIONS(2074), [sym_auto] = ACTIONS(2074), [anon_sym_typename] = ACTIONS(2074), [anon_sym_template] = ACTIONS(2074), [anon_sym_operator] = ACTIONS(2074), [anon_sym_delete] = ACTIONS(2074), [anon_sym_throw] = ACTIONS(2074), [anon_sym_namespace] = ACTIONS(2074), [anon_sym_using] = ACTIONS(2074), [anon_sym_static_assert] = ACTIONS(2074), [anon_sym_co_return] = ACTIONS(2074), [anon_sym_co_yield] = ACTIONS(2074), [anon_sym_try] = ACTIONS(2074), [anon_sym_co_await] = ACTIONS(2074), [anon_sym_new] = ACTIONS(2074), [sym_this] = ACTIONS(2074), [sym_nullptr] = ACTIONS(2074), [sym_raw_string_literal] = ACTIONS(2076), }, [377] = { [ts_builtin_sym_end] = ACTIONS(1751), [sym_identifier] = ACTIONS(1749), [aux_sym_preproc_include_token1] = ACTIONS(1749), [aux_sym_preproc_def_token1] = ACTIONS(1749), [aux_sym_preproc_if_token1] = ACTIONS(1749), [aux_sym_preproc_ifdef_token1] = ACTIONS(1749), [aux_sym_preproc_ifdef_token2] = ACTIONS(1749), [sym_preproc_directive] = ACTIONS(1749), [anon_sym_LPAREN2] = ACTIONS(1751), [anon_sym_BANG] = ACTIONS(1751), [anon_sym_TILDE] = ACTIONS(1751), [anon_sym_DASH] = ACTIONS(1749), [anon_sym_PLUS] = ACTIONS(1749), [anon_sym_STAR] = ACTIONS(1751), [anon_sym_AMP_AMP] = ACTIONS(1751), [anon_sym_AMP] = ACTIONS(1749), [anon_sym_SEMI] = ACTIONS(1751), [anon_sym_typedef] = ACTIONS(1749), [anon_sym_extern] = ACTIONS(1749), [anon_sym___attribute__] = ACTIONS(1749), [anon_sym_COLON_COLON] = ACTIONS(1751), [anon_sym_LBRACK_LBRACK] = ACTIONS(1751), [anon_sym___declspec] = ACTIONS(1749), [anon_sym___based] = ACTIONS(1749), [anon_sym___cdecl] = ACTIONS(1749), [anon_sym___clrcall] = ACTIONS(1749), [anon_sym___stdcall] = ACTIONS(1749), [anon_sym___fastcall] = ACTIONS(1749), [anon_sym___thiscall] = ACTIONS(1749), [anon_sym___vectorcall] = ACTIONS(1749), [anon_sym_LBRACE] = ACTIONS(1751), [anon_sym_LBRACK] = ACTIONS(1749), [anon_sym_static] = ACTIONS(1749), [anon_sym_register] = ACTIONS(1749), [anon_sym_inline] = ACTIONS(1749), [anon_sym_thread_local] = ACTIONS(1749), [anon_sym_const] = ACTIONS(1749), [anon_sym_volatile] = ACTIONS(1749), [anon_sym_restrict] = ACTIONS(1749), [anon_sym__Atomic] = ACTIONS(1749), [anon_sym_mutable] = ACTIONS(1749), [anon_sym_constexpr] = ACTIONS(1749), [anon_sym_signed] = ACTIONS(1749), [anon_sym_unsigned] = ACTIONS(1749), [anon_sym_long] = ACTIONS(1749), [anon_sym_short] = ACTIONS(1749), [sym_primitive_type] = ACTIONS(1749), [anon_sym_enum] = ACTIONS(1749), [anon_sym_class] = ACTIONS(1749), [anon_sym_struct] = ACTIONS(1749), [anon_sym_union] = ACTIONS(1749), [anon_sym_if] = ACTIONS(1749), [anon_sym_else] = ACTIONS(1749), [anon_sym_switch] = ACTIONS(1749), [anon_sym_case] = ACTIONS(1749), [anon_sym_default] = ACTIONS(1749), [anon_sym_while] = ACTIONS(1749), [anon_sym_do] = ACTIONS(1749), [anon_sym_for] = ACTIONS(1749), [anon_sym_return] = ACTIONS(1749), [anon_sym_break] = ACTIONS(1749), [anon_sym_continue] = ACTIONS(1749), [anon_sym_goto] = ACTIONS(1749), [anon_sym_DASH_DASH] = ACTIONS(1751), [anon_sym_PLUS_PLUS] = ACTIONS(1751), [anon_sym_sizeof] = ACTIONS(1749), [sym_number_literal] = ACTIONS(1751), [anon_sym_L_SQUOTE] = ACTIONS(1751), [anon_sym_u_SQUOTE] = ACTIONS(1751), [anon_sym_U_SQUOTE] = ACTIONS(1751), [anon_sym_u8_SQUOTE] = ACTIONS(1751), [anon_sym_SQUOTE] = ACTIONS(1751), [anon_sym_L_DQUOTE] = ACTIONS(1751), [anon_sym_u_DQUOTE] = ACTIONS(1751), [anon_sym_U_DQUOTE] = ACTIONS(1751), [anon_sym_u8_DQUOTE] = ACTIONS(1751), [anon_sym_DQUOTE] = ACTIONS(1751), [sym_true] = ACTIONS(1749), [sym_false] = ACTIONS(1749), [sym_null] = ACTIONS(1749), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1749), [anon_sym_virtual] = ACTIONS(1749), [anon_sym_explicit] = ACTIONS(1749), [sym_auto] = ACTIONS(1749), [anon_sym_typename] = ACTIONS(1749), [anon_sym_template] = ACTIONS(1749), [anon_sym_operator] = ACTIONS(1749), [anon_sym_delete] = ACTIONS(1749), [anon_sym_throw] = ACTIONS(1749), [anon_sym_namespace] = ACTIONS(1749), [anon_sym_using] = ACTIONS(1749), [anon_sym_static_assert] = ACTIONS(1749), [anon_sym_co_return] = ACTIONS(1749), [anon_sym_co_yield] = ACTIONS(1749), [anon_sym_try] = ACTIONS(1749), [anon_sym_catch] = ACTIONS(1749), [anon_sym_co_await] = ACTIONS(1749), [anon_sym_new] = ACTIONS(1749), [sym_this] = ACTIONS(1749), [sym_nullptr] = ACTIONS(1749), [sym_raw_string_literal] = ACTIONS(1751), }, [378] = { [sym_identifier] = ACTIONS(2078), [aux_sym_preproc_include_token1] = ACTIONS(2078), [aux_sym_preproc_def_token1] = ACTIONS(2078), [aux_sym_preproc_if_token1] = ACTIONS(2078), [aux_sym_preproc_if_token2] = ACTIONS(2078), [aux_sym_preproc_ifdef_token1] = ACTIONS(2078), [aux_sym_preproc_ifdef_token2] = ACTIONS(2078), [aux_sym_preproc_else_token1] = ACTIONS(2078), [aux_sym_preproc_elif_token1] = ACTIONS(2078), [sym_preproc_directive] = ACTIONS(2078), [anon_sym_LPAREN2] = ACTIONS(2080), [anon_sym_BANG] = ACTIONS(2080), [anon_sym_TILDE] = ACTIONS(2080), [anon_sym_DASH] = ACTIONS(2078), [anon_sym_PLUS] = ACTIONS(2078), [anon_sym_STAR] = ACTIONS(2080), [anon_sym_AMP_AMP] = ACTIONS(2080), [anon_sym_AMP] = ACTIONS(2078), [anon_sym_SEMI] = ACTIONS(2080), [anon_sym_typedef] = ACTIONS(2078), [anon_sym_extern] = ACTIONS(2078), [anon_sym___attribute__] = ACTIONS(2078), [anon_sym_COLON_COLON] = ACTIONS(2080), [anon_sym_LBRACK_LBRACK] = ACTIONS(2080), [anon_sym___declspec] = ACTIONS(2078), [anon_sym___based] = ACTIONS(2078), [anon_sym___cdecl] = ACTIONS(2078), [anon_sym___clrcall] = ACTIONS(2078), [anon_sym___stdcall] = ACTIONS(2078), [anon_sym___fastcall] = ACTIONS(2078), [anon_sym___thiscall] = ACTIONS(2078), [anon_sym___vectorcall] = ACTIONS(2078), [anon_sym_LBRACE] = ACTIONS(2080), [anon_sym_LBRACK] = ACTIONS(2078), [anon_sym_static] = ACTIONS(2078), [anon_sym_register] = ACTIONS(2078), [anon_sym_inline] = ACTIONS(2078), [anon_sym_thread_local] = ACTIONS(2078), [anon_sym_const] = ACTIONS(2078), [anon_sym_volatile] = ACTIONS(2078), [anon_sym_restrict] = ACTIONS(2078), [anon_sym__Atomic] = ACTIONS(2078), [anon_sym_mutable] = ACTIONS(2078), [anon_sym_constexpr] = ACTIONS(2078), [anon_sym_signed] = ACTIONS(2078), [anon_sym_unsigned] = ACTIONS(2078), [anon_sym_long] = ACTIONS(2078), [anon_sym_short] = ACTIONS(2078), [sym_primitive_type] = ACTIONS(2078), [anon_sym_enum] = ACTIONS(2078), [anon_sym_class] = ACTIONS(2078), [anon_sym_struct] = ACTIONS(2078), [anon_sym_union] = ACTIONS(2078), [anon_sym_if] = ACTIONS(2078), [anon_sym_switch] = ACTIONS(2078), [anon_sym_case] = ACTIONS(2078), [anon_sym_default] = ACTIONS(2078), [anon_sym_while] = ACTIONS(2078), [anon_sym_do] = ACTIONS(2078), [anon_sym_for] = ACTIONS(2078), [anon_sym_return] = ACTIONS(2078), [anon_sym_break] = ACTIONS(2078), [anon_sym_continue] = ACTIONS(2078), [anon_sym_goto] = ACTIONS(2078), [anon_sym_DASH_DASH] = ACTIONS(2080), [anon_sym_PLUS_PLUS] = ACTIONS(2080), [anon_sym_sizeof] = ACTIONS(2078), [sym_number_literal] = ACTIONS(2080), [anon_sym_L_SQUOTE] = ACTIONS(2080), [anon_sym_u_SQUOTE] = ACTIONS(2080), [anon_sym_U_SQUOTE] = ACTIONS(2080), [anon_sym_u8_SQUOTE] = ACTIONS(2080), [anon_sym_SQUOTE] = ACTIONS(2080), [anon_sym_L_DQUOTE] = ACTIONS(2080), [anon_sym_u_DQUOTE] = ACTIONS(2080), [anon_sym_U_DQUOTE] = ACTIONS(2080), [anon_sym_u8_DQUOTE] = ACTIONS(2080), [anon_sym_DQUOTE] = ACTIONS(2080), [sym_true] = ACTIONS(2078), [sym_false] = ACTIONS(2078), [sym_null] = ACTIONS(2078), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2078), [anon_sym_virtual] = ACTIONS(2078), [anon_sym_explicit] = ACTIONS(2078), [sym_auto] = ACTIONS(2078), [anon_sym_typename] = ACTIONS(2078), [anon_sym_template] = ACTIONS(2078), [anon_sym_operator] = ACTIONS(2078), [anon_sym_delete] = ACTIONS(2078), [anon_sym_throw] = ACTIONS(2078), [anon_sym_namespace] = ACTIONS(2078), [anon_sym_using] = ACTIONS(2078), [anon_sym_static_assert] = ACTIONS(2078), [anon_sym_co_return] = ACTIONS(2078), [anon_sym_co_yield] = ACTIONS(2078), [anon_sym_try] = ACTIONS(2078), [anon_sym_co_await] = ACTIONS(2078), [anon_sym_new] = ACTIONS(2078), [sym_this] = ACTIONS(2078), [sym_nullptr] = ACTIONS(2078), [sym_raw_string_literal] = ACTIONS(2080), }, [379] = { [sym_identifier] = ACTIONS(2082), [aux_sym_preproc_include_token1] = ACTIONS(2082), [aux_sym_preproc_def_token1] = ACTIONS(2082), [aux_sym_preproc_if_token1] = ACTIONS(2082), [aux_sym_preproc_if_token2] = ACTIONS(2082), [aux_sym_preproc_ifdef_token1] = ACTIONS(2082), [aux_sym_preproc_ifdef_token2] = ACTIONS(2082), [aux_sym_preproc_else_token1] = ACTIONS(2082), [aux_sym_preproc_elif_token1] = ACTIONS(2082), [sym_preproc_directive] = ACTIONS(2082), [anon_sym_LPAREN2] = ACTIONS(2084), [anon_sym_BANG] = ACTIONS(2084), [anon_sym_TILDE] = ACTIONS(2084), [anon_sym_DASH] = ACTIONS(2082), [anon_sym_PLUS] = ACTIONS(2082), [anon_sym_STAR] = ACTIONS(2084), [anon_sym_AMP_AMP] = ACTIONS(2084), [anon_sym_AMP] = ACTIONS(2082), [anon_sym_SEMI] = ACTIONS(2084), [anon_sym_typedef] = ACTIONS(2082), [anon_sym_extern] = ACTIONS(2082), [anon_sym___attribute__] = ACTIONS(2082), [anon_sym_COLON_COLON] = ACTIONS(2084), [anon_sym_LBRACK_LBRACK] = ACTIONS(2084), [anon_sym___declspec] = ACTIONS(2082), [anon_sym___based] = ACTIONS(2082), [anon_sym___cdecl] = ACTIONS(2082), [anon_sym___clrcall] = ACTIONS(2082), [anon_sym___stdcall] = ACTIONS(2082), [anon_sym___fastcall] = ACTIONS(2082), [anon_sym___thiscall] = ACTIONS(2082), [anon_sym___vectorcall] = ACTIONS(2082), [anon_sym_LBRACE] = ACTIONS(2084), [anon_sym_LBRACK] = ACTIONS(2082), [anon_sym_static] = ACTIONS(2082), [anon_sym_register] = ACTIONS(2082), [anon_sym_inline] = ACTIONS(2082), [anon_sym_thread_local] = ACTIONS(2082), [anon_sym_const] = ACTIONS(2082), [anon_sym_volatile] = ACTIONS(2082), [anon_sym_restrict] = ACTIONS(2082), [anon_sym__Atomic] = ACTIONS(2082), [anon_sym_mutable] = ACTIONS(2082), [anon_sym_constexpr] = ACTIONS(2082), [anon_sym_signed] = ACTIONS(2082), [anon_sym_unsigned] = ACTIONS(2082), [anon_sym_long] = ACTIONS(2082), [anon_sym_short] = ACTIONS(2082), [sym_primitive_type] = ACTIONS(2082), [anon_sym_enum] = ACTIONS(2082), [anon_sym_class] = ACTIONS(2082), [anon_sym_struct] = ACTIONS(2082), [anon_sym_union] = ACTIONS(2082), [anon_sym_if] = ACTIONS(2082), [anon_sym_switch] = ACTIONS(2082), [anon_sym_case] = ACTIONS(2082), [anon_sym_default] = ACTIONS(2082), [anon_sym_while] = ACTIONS(2082), [anon_sym_do] = ACTIONS(2082), [anon_sym_for] = ACTIONS(2082), [anon_sym_return] = ACTIONS(2082), [anon_sym_break] = ACTIONS(2082), [anon_sym_continue] = ACTIONS(2082), [anon_sym_goto] = ACTIONS(2082), [anon_sym_DASH_DASH] = ACTIONS(2084), [anon_sym_PLUS_PLUS] = ACTIONS(2084), [anon_sym_sizeof] = ACTIONS(2082), [sym_number_literal] = ACTIONS(2084), [anon_sym_L_SQUOTE] = ACTIONS(2084), [anon_sym_u_SQUOTE] = ACTIONS(2084), [anon_sym_U_SQUOTE] = ACTIONS(2084), [anon_sym_u8_SQUOTE] = ACTIONS(2084), [anon_sym_SQUOTE] = ACTIONS(2084), [anon_sym_L_DQUOTE] = ACTIONS(2084), [anon_sym_u_DQUOTE] = ACTIONS(2084), [anon_sym_U_DQUOTE] = ACTIONS(2084), [anon_sym_u8_DQUOTE] = ACTIONS(2084), [anon_sym_DQUOTE] = ACTIONS(2084), [sym_true] = ACTIONS(2082), [sym_false] = ACTIONS(2082), [sym_null] = ACTIONS(2082), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2082), [anon_sym_virtual] = ACTIONS(2082), [anon_sym_explicit] = ACTIONS(2082), [sym_auto] = ACTIONS(2082), [anon_sym_typename] = ACTIONS(2082), [anon_sym_template] = ACTIONS(2082), [anon_sym_operator] = ACTIONS(2082), [anon_sym_delete] = ACTIONS(2082), [anon_sym_throw] = ACTIONS(2082), [anon_sym_namespace] = ACTIONS(2082), [anon_sym_using] = ACTIONS(2082), [anon_sym_static_assert] = ACTIONS(2082), [anon_sym_co_return] = ACTIONS(2082), [anon_sym_co_yield] = ACTIONS(2082), [anon_sym_try] = ACTIONS(2082), [anon_sym_co_await] = ACTIONS(2082), [anon_sym_new] = ACTIONS(2082), [sym_this] = ACTIONS(2082), [sym_nullptr] = ACTIONS(2082), [sym_raw_string_literal] = ACTIONS(2084), }, [380] = { [sym_identifier] = ACTIONS(2086), [aux_sym_preproc_include_token1] = ACTIONS(2086), [aux_sym_preproc_def_token1] = ACTIONS(2086), [aux_sym_preproc_if_token1] = ACTIONS(2086), [aux_sym_preproc_if_token2] = ACTIONS(2086), [aux_sym_preproc_ifdef_token1] = ACTIONS(2086), [aux_sym_preproc_ifdef_token2] = ACTIONS(2086), [aux_sym_preproc_else_token1] = ACTIONS(2086), [aux_sym_preproc_elif_token1] = ACTIONS(2086), [sym_preproc_directive] = ACTIONS(2086), [anon_sym_LPAREN2] = ACTIONS(2088), [anon_sym_BANG] = ACTIONS(2088), [anon_sym_TILDE] = ACTIONS(2088), [anon_sym_DASH] = ACTIONS(2086), [anon_sym_PLUS] = ACTIONS(2086), [anon_sym_STAR] = ACTIONS(2088), [anon_sym_AMP_AMP] = ACTIONS(2088), [anon_sym_AMP] = ACTIONS(2086), [anon_sym_SEMI] = ACTIONS(2088), [anon_sym_typedef] = ACTIONS(2086), [anon_sym_extern] = ACTIONS(2086), [anon_sym___attribute__] = ACTIONS(2086), [anon_sym_COLON_COLON] = ACTIONS(2088), [anon_sym_LBRACK_LBRACK] = ACTIONS(2088), [anon_sym___declspec] = ACTIONS(2086), [anon_sym___based] = ACTIONS(2086), [anon_sym___cdecl] = ACTIONS(2086), [anon_sym___clrcall] = ACTIONS(2086), [anon_sym___stdcall] = ACTIONS(2086), [anon_sym___fastcall] = ACTIONS(2086), [anon_sym___thiscall] = ACTIONS(2086), [anon_sym___vectorcall] = ACTIONS(2086), [anon_sym_LBRACE] = ACTIONS(2088), [anon_sym_LBRACK] = ACTIONS(2086), [anon_sym_static] = ACTIONS(2086), [anon_sym_register] = ACTIONS(2086), [anon_sym_inline] = ACTIONS(2086), [anon_sym_thread_local] = ACTIONS(2086), [anon_sym_const] = ACTIONS(2086), [anon_sym_volatile] = ACTIONS(2086), [anon_sym_restrict] = ACTIONS(2086), [anon_sym__Atomic] = ACTIONS(2086), [anon_sym_mutable] = ACTIONS(2086), [anon_sym_constexpr] = ACTIONS(2086), [anon_sym_signed] = ACTIONS(2086), [anon_sym_unsigned] = ACTIONS(2086), [anon_sym_long] = ACTIONS(2086), [anon_sym_short] = ACTIONS(2086), [sym_primitive_type] = ACTIONS(2086), [anon_sym_enum] = ACTIONS(2086), [anon_sym_class] = ACTIONS(2086), [anon_sym_struct] = ACTIONS(2086), [anon_sym_union] = ACTIONS(2086), [anon_sym_if] = ACTIONS(2086), [anon_sym_switch] = ACTIONS(2086), [anon_sym_case] = ACTIONS(2086), [anon_sym_default] = ACTIONS(2086), [anon_sym_while] = ACTIONS(2086), [anon_sym_do] = ACTIONS(2086), [anon_sym_for] = ACTIONS(2086), [anon_sym_return] = ACTIONS(2086), [anon_sym_break] = ACTIONS(2086), [anon_sym_continue] = ACTIONS(2086), [anon_sym_goto] = ACTIONS(2086), [anon_sym_DASH_DASH] = ACTIONS(2088), [anon_sym_PLUS_PLUS] = ACTIONS(2088), [anon_sym_sizeof] = ACTIONS(2086), [sym_number_literal] = ACTIONS(2088), [anon_sym_L_SQUOTE] = ACTIONS(2088), [anon_sym_u_SQUOTE] = ACTIONS(2088), [anon_sym_U_SQUOTE] = ACTIONS(2088), [anon_sym_u8_SQUOTE] = ACTIONS(2088), [anon_sym_SQUOTE] = ACTIONS(2088), [anon_sym_L_DQUOTE] = ACTIONS(2088), [anon_sym_u_DQUOTE] = ACTIONS(2088), [anon_sym_U_DQUOTE] = ACTIONS(2088), [anon_sym_u8_DQUOTE] = ACTIONS(2088), [anon_sym_DQUOTE] = ACTIONS(2088), [sym_true] = ACTIONS(2086), [sym_false] = ACTIONS(2086), [sym_null] = ACTIONS(2086), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2086), [anon_sym_virtual] = ACTIONS(2086), [anon_sym_explicit] = ACTIONS(2086), [sym_auto] = ACTIONS(2086), [anon_sym_typename] = ACTIONS(2086), [anon_sym_template] = ACTIONS(2086), [anon_sym_operator] = ACTIONS(2086), [anon_sym_delete] = ACTIONS(2086), [anon_sym_throw] = ACTIONS(2086), [anon_sym_namespace] = ACTIONS(2086), [anon_sym_using] = ACTIONS(2086), [anon_sym_static_assert] = ACTIONS(2086), [anon_sym_co_return] = ACTIONS(2086), [anon_sym_co_yield] = ACTIONS(2086), [anon_sym_try] = ACTIONS(2086), [anon_sym_co_await] = ACTIONS(2086), [anon_sym_new] = ACTIONS(2086), [sym_this] = ACTIONS(2086), [sym_nullptr] = ACTIONS(2086), [sym_raw_string_literal] = ACTIONS(2088), }, [381] = { [sym_identifier] = ACTIONS(2090), [aux_sym_preproc_include_token1] = ACTIONS(2090), [aux_sym_preproc_def_token1] = ACTIONS(2090), [aux_sym_preproc_if_token1] = ACTIONS(2090), [aux_sym_preproc_if_token2] = ACTIONS(2090), [aux_sym_preproc_ifdef_token1] = ACTIONS(2090), [aux_sym_preproc_ifdef_token2] = ACTIONS(2090), [aux_sym_preproc_else_token1] = ACTIONS(2090), [aux_sym_preproc_elif_token1] = ACTIONS(2090), [sym_preproc_directive] = ACTIONS(2090), [anon_sym_LPAREN2] = ACTIONS(2092), [anon_sym_BANG] = ACTIONS(2092), [anon_sym_TILDE] = ACTIONS(2092), [anon_sym_DASH] = ACTIONS(2090), [anon_sym_PLUS] = ACTIONS(2090), [anon_sym_STAR] = ACTIONS(2092), [anon_sym_AMP_AMP] = ACTIONS(2092), [anon_sym_AMP] = ACTIONS(2090), [anon_sym_SEMI] = ACTIONS(2092), [anon_sym_typedef] = ACTIONS(2090), [anon_sym_extern] = ACTIONS(2090), [anon_sym___attribute__] = ACTIONS(2090), [anon_sym_COLON_COLON] = ACTIONS(2092), [anon_sym_LBRACK_LBRACK] = ACTIONS(2092), [anon_sym___declspec] = ACTIONS(2090), [anon_sym___based] = ACTIONS(2090), [anon_sym___cdecl] = ACTIONS(2090), [anon_sym___clrcall] = ACTIONS(2090), [anon_sym___stdcall] = ACTIONS(2090), [anon_sym___fastcall] = ACTIONS(2090), [anon_sym___thiscall] = ACTIONS(2090), [anon_sym___vectorcall] = ACTIONS(2090), [anon_sym_LBRACE] = ACTIONS(2092), [anon_sym_LBRACK] = ACTIONS(2090), [anon_sym_static] = ACTIONS(2090), [anon_sym_register] = ACTIONS(2090), [anon_sym_inline] = ACTIONS(2090), [anon_sym_thread_local] = ACTIONS(2090), [anon_sym_const] = ACTIONS(2090), [anon_sym_volatile] = ACTIONS(2090), [anon_sym_restrict] = ACTIONS(2090), [anon_sym__Atomic] = ACTIONS(2090), [anon_sym_mutable] = ACTIONS(2090), [anon_sym_constexpr] = ACTIONS(2090), [anon_sym_signed] = ACTIONS(2090), [anon_sym_unsigned] = ACTIONS(2090), [anon_sym_long] = ACTIONS(2090), [anon_sym_short] = ACTIONS(2090), [sym_primitive_type] = ACTIONS(2090), [anon_sym_enum] = ACTIONS(2090), [anon_sym_class] = ACTIONS(2090), [anon_sym_struct] = ACTIONS(2090), [anon_sym_union] = ACTIONS(2090), [anon_sym_if] = ACTIONS(2090), [anon_sym_switch] = ACTIONS(2090), [anon_sym_case] = ACTIONS(2090), [anon_sym_default] = ACTIONS(2090), [anon_sym_while] = ACTIONS(2090), [anon_sym_do] = ACTIONS(2090), [anon_sym_for] = ACTIONS(2090), [anon_sym_return] = ACTIONS(2090), [anon_sym_break] = ACTIONS(2090), [anon_sym_continue] = ACTIONS(2090), [anon_sym_goto] = ACTIONS(2090), [anon_sym_DASH_DASH] = ACTIONS(2092), [anon_sym_PLUS_PLUS] = ACTIONS(2092), [anon_sym_sizeof] = ACTIONS(2090), [sym_number_literal] = ACTIONS(2092), [anon_sym_L_SQUOTE] = ACTIONS(2092), [anon_sym_u_SQUOTE] = ACTIONS(2092), [anon_sym_U_SQUOTE] = ACTIONS(2092), [anon_sym_u8_SQUOTE] = ACTIONS(2092), [anon_sym_SQUOTE] = ACTIONS(2092), [anon_sym_L_DQUOTE] = ACTIONS(2092), [anon_sym_u_DQUOTE] = ACTIONS(2092), [anon_sym_U_DQUOTE] = ACTIONS(2092), [anon_sym_u8_DQUOTE] = ACTIONS(2092), [anon_sym_DQUOTE] = ACTIONS(2092), [sym_true] = ACTIONS(2090), [sym_false] = ACTIONS(2090), [sym_null] = ACTIONS(2090), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2090), [anon_sym_virtual] = ACTIONS(2090), [anon_sym_explicit] = ACTIONS(2090), [sym_auto] = ACTIONS(2090), [anon_sym_typename] = ACTIONS(2090), [anon_sym_template] = ACTIONS(2090), [anon_sym_operator] = ACTIONS(2090), [anon_sym_delete] = ACTIONS(2090), [anon_sym_throw] = ACTIONS(2090), [anon_sym_namespace] = ACTIONS(2090), [anon_sym_using] = ACTIONS(2090), [anon_sym_static_assert] = ACTIONS(2090), [anon_sym_co_return] = ACTIONS(2090), [anon_sym_co_yield] = ACTIONS(2090), [anon_sym_try] = ACTIONS(2090), [anon_sym_co_await] = ACTIONS(2090), [anon_sym_new] = ACTIONS(2090), [sym_this] = ACTIONS(2090), [sym_nullptr] = ACTIONS(2090), [sym_raw_string_literal] = ACTIONS(2092), }, [382] = { [sym_identifier] = ACTIONS(2094), [aux_sym_preproc_include_token1] = ACTIONS(2094), [aux_sym_preproc_def_token1] = ACTIONS(2094), [aux_sym_preproc_if_token1] = ACTIONS(2094), [aux_sym_preproc_if_token2] = ACTIONS(2094), [aux_sym_preproc_ifdef_token1] = ACTIONS(2094), [aux_sym_preproc_ifdef_token2] = ACTIONS(2094), [aux_sym_preproc_else_token1] = ACTIONS(2094), [aux_sym_preproc_elif_token1] = ACTIONS(2094), [sym_preproc_directive] = ACTIONS(2094), [anon_sym_LPAREN2] = ACTIONS(2096), [anon_sym_BANG] = ACTIONS(2096), [anon_sym_TILDE] = ACTIONS(2096), [anon_sym_DASH] = ACTIONS(2094), [anon_sym_PLUS] = ACTIONS(2094), [anon_sym_STAR] = ACTIONS(2096), [anon_sym_AMP_AMP] = ACTIONS(2096), [anon_sym_AMP] = ACTIONS(2094), [anon_sym_SEMI] = ACTIONS(2096), [anon_sym_typedef] = ACTIONS(2094), [anon_sym_extern] = ACTIONS(2094), [anon_sym___attribute__] = ACTIONS(2094), [anon_sym_COLON_COLON] = ACTIONS(2096), [anon_sym_LBRACK_LBRACK] = ACTIONS(2096), [anon_sym___declspec] = ACTIONS(2094), [anon_sym___based] = ACTIONS(2094), [anon_sym___cdecl] = ACTIONS(2094), [anon_sym___clrcall] = ACTIONS(2094), [anon_sym___stdcall] = ACTIONS(2094), [anon_sym___fastcall] = ACTIONS(2094), [anon_sym___thiscall] = ACTIONS(2094), [anon_sym___vectorcall] = ACTIONS(2094), [anon_sym_LBRACE] = ACTIONS(2096), [anon_sym_LBRACK] = ACTIONS(2094), [anon_sym_static] = ACTIONS(2094), [anon_sym_register] = ACTIONS(2094), [anon_sym_inline] = ACTIONS(2094), [anon_sym_thread_local] = ACTIONS(2094), [anon_sym_const] = ACTIONS(2094), [anon_sym_volatile] = ACTIONS(2094), [anon_sym_restrict] = ACTIONS(2094), [anon_sym__Atomic] = ACTIONS(2094), [anon_sym_mutable] = ACTIONS(2094), [anon_sym_constexpr] = ACTIONS(2094), [anon_sym_signed] = ACTIONS(2094), [anon_sym_unsigned] = ACTIONS(2094), [anon_sym_long] = ACTIONS(2094), [anon_sym_short] = ACTIONS(2094), [sym_primitive_type] = ACTIONS(2094), [anon_sym_enum] = ACTIONS(2094), [anon_sym_class] = ACTIONS(2094), [anon_sym_struct] = ACTIONS(2094), [anon_sym_union] = ACTIONS(2094), [anon_sym_if] = ACTIONS(2094), [anon_sym_switch] = ACTIONS(2094), [anon_sym_case] = ACTIONS(2094), [anon_sym_default] = ACTIONS(2094), [anon_sym_while] = ACTIONS(2094), [anon_sym_do] = ACTIONS(2094), [anon_sym_for] = ACTIONS(2094), [anon_sym_return] = ACTIONS(2094), [anon_sym_break] = ACTIONS(2094), [anon_sym_continue] = ACTIONS(2094), [anon_sym_goto] = ACTIONS(2094), [anon_sym_DASH_DASH] = ACTIONS(2096), [anon_sym_PLUS_PLUS] = ACTIONS(2096), [anon_sym_sizeof] = ACTIONS(2094), [sym_number_literal] = ACTIONS(2096), [anon_sym_L_SQUOTE] = ACTIONS(2096), [anon_sym_u_SQUOTE] = ACTIONS(2096), [anon_sym_U_SQUOTE] = ACTIONS(2096), [anon_sym_u8_SQUOTE] = ACTIONS(2096), [anon_sym_SQUOTE] = ACTIONS(2096), [anon_sym_L_DQUOTE] = ACTIONS(2096), [anon_sym_u_DQUOTE] = ACTIONS(2096), [anon_sym_U_DQUOTE] = ACTIONS(2096), [anon_sym_u8_DQUOTE] = ACTIONS(2096), [anon_sym_DQUOTE] = ACTIONS(2096), [sym_true] = ACTIONS(2094), [sym_false] = ACTIONS(2094), [sym_null] = ACTIONS(2094), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2094), [anon_sym_virtual] = ACTIONS(2094), [anon_sym_explicit] = ACTIONS(2094), [sym_auto] = ACTIONS(2094), [anon_sym_typename] = ACTIONS(2094), [anon_sym_template] = ACTIONS(2094), [anon_sym_operator] = ACTIONS(2094), [anon_sym_delete] = ACTIONS(2094), [anon_sym_throw] = ACTIONS(2094), [anon_sym_namespace] = ACTIONS(2094), [anon_sym_using] = ACTIONS(2094), [anon_sym_static_assert] = ACTIONS(2094), [anon_sym_co_return] = ACTIONS(2094), [anon_sym_co_yield] = ACTIONS(2094), [anon_sym_try] = ACTIONS(2094), [anon_sym_co_await] = ACTIONS(2094), [anon_sym_new] = ACTIONS(2094), [sym_this] = ACTIONS(2094), [sym_nullptr] = ACTIONS(2094), [sym_raw_string_literal] = ACTIONS(2096), }, [383] = { [sym_identifier] = ACTIONS(2098), [aux_sym_preproc_include_token1] = ACTIONS(2098), [aux_sym_preproc_def_token1] = ACTIONS(2098), [aux_sym_preproc_if_token1] = ACTIONS(2098), [aux_sym_preproc_if_token2] = ACTIONS(2098), [aux_sym_preproc_ifdef_token1] = ACTIONS(2098), [aux_sym_preproc_ifdef_token2] = ACTIONS(2098), [aux_sym_preproc_else_token1] = ACTIONS(2098), [aux_sym_preproc_elif_token1] = ACTIONS(2098), [sym_preproc_directive] = ACTIONS(2098), [anon_sym_LPAREN2] = ACTIONS(2100), [anon_sym_BANG] = ACTIONS(2100), [anon_sym_TILDE] = ACTIONS(2100), [anon_sym_DASH] = ACTIONS(2098), [anon_sym_PLUS] = ACTIONS(2098), [anon_sym_STAR] = ACTIONS(2100), [anon_sym_AMP_AMP] = ACTIONS(2100), [anon_sym_AMP] = ACTIONS(2098), [anon_sym_SEMI] = ACTIONS(2100), [anon_sym_typedef] = ACTIONS(2098), [anon_sym_extern] = ACTIONS(2098), [anon_sym___attribute__] = ACTIONS(2098), [anon_sym_COLON_COLON] = ACTIONS(2100), [anon_sym_LBRACK_LBRACK] = ACTIONS(2100), [anon_sym___declspec] = ACTIONS(2098), [anon_sym___based] = ACTIONS(2098), [anon_sym___cdecl] = ACTIONS(2098), [anon_sym___clrcall] = ACTIONS(2098), [anon_sym___stdcall] = ACTIONS(2098), [anon_sym___fastcall] = ACTIONS(2098), [anon_sym___thiscall] = ACTIONS(2098), [anon_sym___vectorcall] = ACTIONS(2098), [anon_sym_LBRACE] = ACTIONS(2100), [anon_sym_LBRACK] = ACTIONS(2098), [anon_sym_static] = ACTIONS(2098), [anon_sym_register] = ACTIONS(2098), [anon_sym_inline] = ACTIONS(2098), [anon_sym_thread_local] = ACTIONS(2098), [anon_sym_const] = ACTIONS(2098), [anon_sym_volatile] = ACTIONS(2098), [anon_sym_restrict] = ACTIONS(2098), [anon_sym__Atomic] = ACTIONS(2098), [anon_sym_mutable] = ACTIONS(2098), [anon_sym_constexpr] = ACTIONS(2098), [anon_sym_signed] = ACTIONS(2098), [anon_sym_unsigned] = ACTIONS(2098), [anon_sym_long] = ACTIONS(2098), [anon_sym_short] = ACTIONS(2098), [sym_primitive_type] = ACTIONS(2098), [anon_sym_enum] = ACTIONS(2098), [anon_sym_class] = ACTIONS(2098), [anon_sym_struct] = ACTIONS(2098), [anon_sym_union] = ACTIONS(2098), [anon_sym_if] = ACTIONS(2098), [anon_sym_switch] = ACTIONS(2098), [anon_sym_case] = ACTIONS(2098), [anon_sym_default] = ACTIONS(2098), [anon_sym_while] = ACTIONS(2098), [anon_sym_do] = ACTIONS(2098), [anon_sym_for] = ACTIONS(2098), [anon_sym_return] = ACTIONS(2098), [anon_sym_break] = ACTIONS(2098), [anon_sym_continue] = ACTIONS(2098), [anon_sym_goto] = ACTIONS(2098), [anon_sym_DASH_DASH] = ACTIONS(2100), [anon_sym_PLUS_PLUS] = ACTIONS(2100), [anon_sym_sizeof] = ACTIONS(2098), [sym_number_literal] = ACTIONS(2100), [anon_sym_L_SQUOTE] = ACTIONS(2100), [anon_sym_u_SQUOTE] = ACTIONS(2100), [anon_sym_U_SQUOTE] = ACTIONS(2100), [anon_sym_u8_SQUOTE] = ACTIONS(2100), [anon_sym_SQUOTE] = ACTIONS(2100), [anon_sym_L_DQUOTE] = ACTIONS(2100), [anon_sym_u_DQUOTE] = ACTIONS(2100), [anon_sym_U_DQUOTE] = ACTIONS(2100), [anon_sym_u8_DQUOTE] = ACTIONS(2100), [anon_sym_DQUOTE] = ACTIONS(2100), [sym_true] = ACTIONS(2098), [sym_false] = ACTIONS(2098), [sym_null] = ACTIONS(2098), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2098), [anon_sym_virtual] = ACTIONS(2098), [anon_sym_explicit] = ACTIONS(2098), [sym_auto] = ACTIONS(2098), [anon_sym_typename] = ACTIONS(2098), [anon_sym_template] = ACTIONS(2098), [anon_sym_operator] = ACTIONS(2098), [anon_sym_delete] = ACTIONS(2098), [anon_sym_throw] = ACTIONS(2098), [anon_sym_namespace] = ACTIONS(2098), [anon_sym_using] = ACTIONS(2098), [anon_sym_static_assert] = ACTIONS(2098), [anon_sym_co_return] = ACTIONS(2098), [anon_sym_co_yield] = ACTIONS(2098), [anon_sym_try] = ACTIONS(2098), [anon_sym_co_await] = ACTIONS(2098), [anon_sym_new] = ACTIONS(2098), [sym_this] = ACTIONS(2098), [sym_nullptr] = ACTIONS(2098), [sym_raw_string_literal] = ACTIONS(2100), }, [384] = { [sym_identifier] = ACTIONS(2102), [aux_sym_preproc_include_token1] = ACTIONS(2102), [aux_sym_preproc_def_token1] = ACTIONS(2102), [aux_sym_preproc_if_token1] = ACTIONS(2102), [aux_sym_preproc_if_token2] = ACTIONS(2102), [aux_sym_preproc_ifdef_token1] = ACTIONS(2102), [aux_sym_preproc_ifdef_token2] = ACTIONS(2102), [aux_sym_preproc_else_token1] = ACTIONS(2102), [aux_sym_preproc_elif_token1] = ACTIONS(2102), [sym_preproc_directive] = ACTIONS(2102), [anon_sym_LPAREN2] = ACTIONS(2104), [anon_sym_BANG] = ACTIONS(2104), [anon_sym_TILDE] = ACTIONS(2104), [anon_sym_DASH] = ACTIONS(2102), [anon_sym_PLUS] = ACTIONS(2102), [anon_sym_STAR] = ACTIONS(2104), [anon_sym_AMP_AMP] = ACTIONS(2104), [anon_sym_AMP] = ACTIONS(2102), [anon_sym_SEMI] = ACTIONS(2104), [anon_sym_typedef] = ACTIONS(2102), [anon_sym_extern] = ACTIONS(2102), [anon_sym___attribute__] = ACTIONS(2102), [anon_sym_COLON_COLON] = ACTIONS(2104), [anon_sym_LBRACK_LBRACK] = ACTIONS(2104), [anon_sym___declspec] = ACTIONS(2102), [anon_sym___based] = ACTIONS(2102), [anon_sym___cdecl] = ACTIONS(2102), [anon_sym___clrcall] = ACTIONS(2102), [anon_sym___stdcall] = ACTIONS(2102), [anon_sym___fastcall] = ACTIONS(2102), [anon_sym___thiscall] = ACTIONS(2102), [anon_sym___vectorcall] = ACTIONS(2102), [anon_sym_LBRACE] = ACTIONS(2104), [anon_sym_LBRACK] = ACTIONS(2102), [anon_sym_static] = ACTIONS(2102), [anon_sym_register] = ACTIONS(2102), [anon_sym_inline] = ACTIONS(2102), [anon_sym_thread_local] = ACTIONS(2102), [anon_sym_const] = ACTIONS(2102), [anon_sym_volatile] = ACTIONS(2102), [anon_sym_restrict] = ACTIONS(2102), [anon_sym__Atomic] = ACTIONS(2102), [anon_sym_mutable] = ACTIONS(2102), [anon_sym_constexpr] = ACTIONS(2102), [anon_sym_signed] = ACTIONS(2102), [anon_sym_unsigned] = ACTIONS(2102), [anon_sym_long] = ACTIONS(2102), [anon_sym_short] = ACTIONS(2102), [sym_primitive_type] = ACTIONS(2102), [anon_sym_enum] = ACTIONS(2102), [anon_sym_class] = ACTIONS(2102), [anon_sym_struct] = ACTIONS(2102), [anon_sym_union] = ACTIONS(2102), [anon_sym_if] = ACTIONS(2102), [anon_sym_switch] = ACTIONS(2102), [anon_sym_case] = ACTIONS(2102), [anon_sym_default] = ACTIONS(2102), [anon_sym_while] = ACTIONS(2102), [anon_sym_do] = ACTIONS(2102), [anon_sym_for] = ACTIONS(2102), [anon_sym_return] = ACTIONS(2102), [anon_sym_break] = ACTIONS(2102), [anon_sym_continue] = ACTIONS(2102), [anon_sym_goto] = ACTIONS(2102), [anon_sym_DASH_DASH] = ACTIONS(2104), [anon_sym_PLUS_PLUS] = ACTIONS(2104), [anon_sym_sizeof] = ACTIONS(2102), [sym_number_literal] = ACTIONS(2104), [anon_sym_L_SQUOTE] = ACTIONS(2104), [anon_sym_u_SQUOTE] = ACTIONS(2104), [anon_sym_U_SQUOTE] = ACTIONS(2104), [anon_sym_u8_SQUOTE] = ACTIONS(2104), [anon_sym_SQUOTE] = ACTIONS(2104), [anon_sym_L_DQUOTE] = ACTIONS(2104), [anon_sym_u_DQUOTE] = ACTIONS(2104), [anon_sym_U_DQUOTE] = ACTIONS(2104), [anon_sym_u8_DQUOTE] = ACTIONS(2104), [anon_sym_DQUOTE] = ACTIONS(2104), [sym_true] = ACTIONS(2102), [sym_false] = ACTIONS(2102), [sym_null] = ACTIONS(2102), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2102), [anon_sym_virtual] = ACTIONS(2102), [anon_sym_explicit] = ACTIONS(2102), [sym_auto] = ACTIONS(2102), [anon_sym_typename] = ACTIONS(2102), [anon_sym_template] = ACTIONS(2102), [anon_sym_operator] = ACTIONS(2102), [anon_sym_delete] = ACTIONS(2102), [anon_sym_throw] = ACTIONS(2102), [anon_sym_namespace] = ACTIONS(2102), [anon_sym_using] = ACTIONS(2102), [anon_sym_static_assert] = ACTIONS(2102), [anon_sym_co_return] = ACTIONS(2102), [anon_sym_co_yield] = ACTIONS(2102), [anon_sym_try] = ACTIONS(2102), [anon_sym_co_await] = ACTIONS(2102), [anon_sym_new] = ACTIONS(2102), [sym_this] = ACTIONS(2102), [sym_nullptr] = ACTIONS(2102), [sym_raw_string_literal] = ACTIONS(2104), }, [385] = { [sym_identifier] = ACTIONS(2106), [aux_sym_preproc_include_token1] = ACTIONS(2106), [aux_sym_preproc_def_token1] = ACTIONS(2106), [aux_sym_preproc_if_token1] = ACTIONS(2106), [aux_sym_preproc_if_token2] = ACTIONS(2106), [aux_sym_preproc_ifdef_token1] = ACTIONS(2106), [aux_sym_preproc_ifdef_token2] = ACTIONS(2106), [aux_sym_preproc_else_token1] = ACTIONS(2106), [aux_sym_preproc_elif_token1] = ACTIONS(2106), [sym_preproc_directive] = ACTIONS(2106), [anon_sym_LPAREN2] = ACTIONS(2108), [anon_sym_BANG] = ACTIONS(2108), [anon_sym_TILDE] = ACTIONS(2108), [anon_sym_DASH] = ACTIONS(2106), [anon_sym_PLUS] = ACTIONS(2106), [anon_sym_STAR] = ACTIONS(2108), [anon_sym_AMP_AMP] = ACTIONS(2108), [anon_sym_AMP] = ACTIONS(2106), [anon_sym_SEMI] = ACTIONS(2108), [anon_sym_typedef] = ACTIONS(2106), [anon_sym_extern] = ACTIONS(2106), [anon_sym___attribute__] = ACTIONS(2106), [anon_sym_COLON_COLON] = ACTIONS(2108), [anon_sym_LBRACK_LBRACK] = ACTIONS(2108), [anon_sym___declspec] = ACTIONS(2106), [anon_sym___based] = ACTIONS(2106), [anon_sym___cdecl] = ACTIONS(2106), [anon_sym___clrcall] = ACTIONS(2106), [anon_sym___stdcall] = ACTIONS(2106), [anon_sym___fastcall] = ACTIONS(2106), [anon_sym___thiscall] = ACTIONS(2106), [anon_sym___vectorcall] = ACTIONS(2106), [anon_sym_LBRACE] = ACTIONS(2108), [anon_sym_LBRACK] = ACTIONS(2106), [anon_sym_static] = ACTIONS(2106), [anon_sym_register] = ACTIONS(2106), [anon_sym_inline] = ACTIONS(2106), [anon_sym_thread_local] = ACTIONS(2106), [anon_sym_const] = ACTIONS(2106), [anon_sym_volatile] = ACTIONS(2106), [anon_sym_restrict] = ACTIONS(2106), [anon_sym__Atomic] = ACTIONS(2106), [anon_sym_mutable] = ACTIONS(2106), [anon_sym_constexpr] = ACTIONS(2106), [anon_sym_signed] = ACTIONS(2106), [anon_sym_unsigned] = ACTIONS(2106), [anon_sym_long] = ACTIONS(2106), [anon_sym_short] = ACTIONS(2106), [sym_primitive_type] = ACTIONS(2106), [anon_sym_enum] = ACTIONS(2106), [anon_sym_class] = ACTIONS(2106), [anon_sym_struct] = ACTIONS(2106), [anon_sym_union] = ACTIONS(2106), [anon_sym_if] = ACTIONS(2106), [anon_sym_switch] = ACTIONS(2106), [anon_sym_case] = ACTIONS(2106), [anon_sym_default] = ACTIONS(2106), [anon_sym_while] = ACTIONS(2106), [anon_sym_do] = ACTIONS(2106), [anon_sym_for] = ACTIONS(2106), [anon_sym_return] = ACTIONS(2106), [anon_sym_break] = ACTIONS(2106), [anon_sym_continue] = ACTIONS(2106), [anon_sym_goto] = ACTIONS(2106), [anon_sym_DASH_DASH] = ACTIONS(2108), [anon_sym_PLUS_PLUS] = ACTIONS(2108), [anon_sym_sizeof] = ACTIONS(2106), [sym_number_literal] = ACTIONS(2108), [anon_sym_L_SQUOTE] = ACTIONS(2108), [anon_sym_u_SQUOTE] = ACTIONS(2108), [anon_sym_U_SQUOTE] = ACTIONS(2108), [anon_sym_u8_SQUOTE] = ACTIONS(2108), [anon_sym_SQUOTE] = ACTIONS(2108), [anon_sym_L_DQUOTE] = ACTIONS(2108), [anon_sym_u_DQUOTE] = ACTIONS(2108), [anon_sym_U_DQUOTE] = ACTIONS(2108), [anon_sym_u8_DQUOTE] = ACTIONS(2108), [anon_sym_DQUOTE] = ACTIONS(2108), [sym_true] = ACTIONS(2106), [sym_false] = ACTIONS(2106), [sym_null] = ACTIONS(2106), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2106), [anon_sym_virtual] = ACTIONS(2106), [anon_sym_explicit] = ACTIONS(2106), [sym_auto] = ACTIONS(2106), [anon_sym_typename] = ACTIONS(2106), [anon_sym_template] = ACTIONS(2106), [anon_sym_operator] = ACTIONS(2106), [anon_sym_delete] = ACTIONS(2106), [anon_sym_throw] = ACTIONS(2106), [anon_sym_namespace] = ACTIONS(2106), [anon_sym_using] = ACTIONS(2106), [anon_sym_static_assert] = ACTIONS(2106), [anon_sym_co_return] = ACTIONS(2106), [anon_sym_co_yield] = ACTIONS(2106), [anon_sym_try] = ACTIONS(2106), [anon_sym_co_await] = ACTIONS(2106), [anon_sym_new] = ACTIONS(2106), [sym_this] = ACTIONS(2106), [sym_nullptr] = ACTIONS(2106), [sym_raw_string_literal] = ACTIONS(2108), }, [386] = { [sym_identifier] = ACTIONS(2110), [aux_sym_preproc_include_token1] = ACTIONS(2110), [aux_sym_preproc_def_token1] = ACTIONS(2110), [aux_sym_preproc_if_token1] = ACTIONS(2110), [aux_sym_preproc_if_token2] = ACTIONS(2110), [aux_sym_preproc_ifdef_token1] = ACTIONS(2110), [aux_sym_preproc_ifdef_token2] = ACTIONS(2110), [aux_sym_preproc_else_token1] = ACTIONS(2110), [aux_sym_preproc_elif_token1] = ACTIONS(2110), [sym_preproc_directive] = ACTIONS(2110), [anon_sym_LPAREN2] = ACTIONS(2112), [anon_sym_BANG] = ACTIONS(2112), [anon_sym_TILDE] = ACTIONS(2112), [anon_sym_DASH] = ACTIONS(2110), [anon_sym_PLUS] = ACTIONS(2110), [anon_sym_STAR] = ACTIONS(2112), [anon_sym_AMP_AMP] = ACTIONS(2112), [anon_sym_AMP] = ACTIONS(2110), [anon_sym_SEMI] = ACTIONS(2112), [anon_sym_typedef] = ACTIONS(2110), [anon_sym_extern] = ACTIONS(2110), [anon_sym___attribute__] = ACTIONS(2110), [anon_sym_COLON_COLON] = ACTIONS(2112), [anon_sym_LBRACK_LBRACK] = ACTIONS(2112), [anon_sym___declspec] = ACTIONS(2110), [anon_sym___based] = ACTIONS(2110), [anon_sym___cdecl] = ACTIONS(2110), [anon_sym___clrcall] = ACTIONS(2110), [anon_sym___stdcall] = ACTIONS(2110), [anon_sym___fastcall] = ACTIONS(2110), [anon_sym___thiscall] = ACTIONS(2110), [anon_sym___vectorcall] = ACTIONS(2110), [anon_sym_LBRACE] = ACTIONS(2112), [anon_sym_LBRACK] = ACTIONS(2110), [anon_sym_static] = ACTIONS(2110), [anon_sym_register] = ACTIONS(2110), [anon_sym_inline] = ACTIONS(2110), [anon_sym_thread_local] = ACTIONS(2110), [anon_sym_const] = ACTIONS(2110), [anon_sym_volatile] = ACTIONS(2110), [anon_sym_restrict] = ACTIONS(2110), [anon_sym__Atomic] = ACTIONS(2110), [anon_sym_mutable] = ACTIONS(2110), [anon_sym_constexpr] = ACTIONS(2110), [anon_sym_signed] = ACTIONS(2110), [anon_sym_unsigned] = ACTIONS(2110), [anon_sym_long] = ACTIONS(2110), [anon_sym_short] = ACTIONS(2110), [sym_primitive_type] = ACTIONS(2110), [anon_sym_enum] = ACTIONS(2110), [anon_sym_class] = ACTIONS(2110), [anon_sym_struct] = ACTIONS(2110), [anon_sym_union] = ACTIONS(2110), [anon_sym_if] = ACTIONS(2110), [anon_sym_switch] = ACTIONS(2110), [anon_sym_case] = ACTIONS(2110), [anon_sym_default] = ACTIONS(2110), [anon_sym_while] = ACTIONS(2110), [anon_sym_do] = ACTIONS(2110), [anon_sym_for] = ACTIONS(2110), [anon_sym_return] = ACTIONS(2110), [anon_sym_break] = ACTIONS(2110), [anon_sym_continue] = ACTIONS(2110), [anon_sym_goto] = ACTIONS(2110), [anon_sym_DASH_DASH] = ACTIONS(2112), [anon_sym_PLUS_PLUS] = ACTIONS(2112), [anon_sym_sizeof] = ACTIONS(2110), [sym_number_literal] = ACTIONS(2112), [anon_sym_L_SQUOTE] = ACTIONS(2112), [anon_sym_u_SQUOTE] = ACTIONS(2112), [anon_sym_U_SQUOTE] = ACTIONS(2112), [anon_sym_u8_SQUOTE] = ACTIONS(2112), [anon_sym_SQUOTE] = ACTIONS(2112), [anon_sym_L_DQUOTE] = ACTIONS(2112), [anon_sym_u_DQUOTE] = ACTIONS(2112), [anon_sym_U_DQUOTE] = ACTIONS(2112), [anon_sym_u8_DQUOTE] = ACTIONS(2112), [anon_sym_DQUOTE] = ACTIONS(2112), [sym_true] = ACTIONS(2110), [sym_false] = ACTIONS(2110), [sym_null] = ACTIONS(2110), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2110), [anon_sym_virtual] = ACTIONS(2110), [anon_sym_explicit] = ACTIONS(2110), [sym_auto] = ACTIONS(2110), [anon_sym_typename] = ACTIONS(2110), [anon_sym_template] = ACTIONS(2110), [anon_sym_operator] = ACTIONS(2110), [anon_sym_delete] = ACTIONS(2110), [anon_sym_throw] = ACTIONS(2110), [anon_sym_namespace] = ACTIONS(2110), [anon_sym_using] = ACTIONS(2110), [anon_sym_static_assert] = ACTIONS(2110), [anon_sym_co_return] = ACTIONS(2110), [anon_sym_co_yield] = ACTIONS(2110), [anon_sym_try] = ACTIONS(2110), [anon_sym_co_await] = ACTIONS(2110), [anon_sym_new] = ACTIONS(2110), [sym_this] = ACTIONS(2110), [sym_nullptr] = ACTIONS(2110), [sym_raw_string_literal] = ACTIONS(2112), }, [387] = { [sym_identifier] = ACTIONS(2114), [aux_sym_preproc_include_token1] = ACTIONS(2114), [aux_sym_preproc_def_token1] = ACTIONS(2114), [aux_sym_preproc_if_token1] = ACTIONS(2114), [aux_sym_preproc_if_token2] = ACTIONS(2114), [aux_sym_preproc_ifdef_token1] = ACTIONS(2114), [aux_sym_preproc_ifdef_token2] = ACTIONS(2114), [aux_sym_preproc_else_token1] = ACTIONS(2114), [aux_sym_preproc_elif_token1] = ACTIONS(2114), [sym_preproc_directive] = ACTIONS(2114), [anon_sym_LPAREN2] = ACTIONS(2116), [anon_sym_BANG] = ACTIONS(2116), [anon_sym_TILDE] = ACTIONS(2116), [anon_sym_DASH] = ACTIONS(2114), [anon_sym_PLUS] = ACTIONS(2114), [anon_sym_STAR] = ACTIONS(2116), [anon_sym_AMP_AMP] = ACTIONS(2116), [anon_sym_AMP] = ACTIONS(2114), [anon_sym_SEMI] = ACTIONS(2116), [anon_sym_typedef] = ACTIONS(2114), [anon_sym_extern] = ACTIONS(2114), [anon_sym___attribute__] = ACTIONS(2114), [anon_sym_COLON_COLON] = ACTIONS(2116), [anon_sym_LBRACK_LBRACK] = ACTIONS(2116), [anon_sym___declspec] = ACTIONS(2114), [anon_sym___based] = ACTIONS(2114), [anon_sym___cdecl] = ACTIONS(2114), [anon_sym___clrcall] = ACTIONS(2114), [anon_sym___stdcall] = ACTIONS(2114), [anon_sym___fastcall] = ACTIONS(2114), [anon_sym___thiscall] = ACTIONS(2114), [anon_sym___vectorcall] = ACTIONS(2114), [anon_sym_LBRACE] = ACTIONS(2116), [anon_sym_LBRACK] = ACTIONS(2114), [anon_sym_static] = ACTIONS(2114), [anon_sym_register] = ACTIONS(2114), [anon_sym_inline] = ACTIONS(2114), [anon_sym_thread_local] = ACTIONS(2114), [anon_sym_const] = ACTIONS(2114), [anon_sym_volatile] = ACTIONS(2114), [anon_sym_restrict] = ACTIONS(2114), [anon_sym__Atomic] = ACTIONS(2114), [anon_sym_mutable] = ACTIONS(2114), [anon_sym_constexpr] = ACTIONS(2114), [anon_sym_signed] = ACTIONS(2114), [anon_sym_unsigned] = ACTIONS(2114), [anon_sym_long] = ACTIONS(2114), [anon_sym_short] = ACTIONS(2114), [sym_primitive_type] = ACTIONS(2114), [anon_sym_enum] = ACTIONS(2114), [anon_sym_class] = ACTIONS(2114), [anon_sym_struct] = ACTIONS(2114), [anon_sym_union] = ACTIONS(2114), [anon_sym_if] = ACTIONS(2114), [anon_sym_switch] = ACTIONS(2114), [anon_sym_case] = ACTIONS(2114), [anon_sym_default] = ACTIONS(2114), [anon_sym_while] = ACTIONS(2114), [anon_sym_do] = ACTIONS(2114), [anon_sym_for] = ACTIONS(2114), [anon_sym_return] = ACTIONS(2114), [anon_sym_break] = ACTIONS(2114), [anon_sym_continue] = ACTIONS(2114), [anon_sym_goto] = ACTIONS(2114), [anon_sym_DASH_DASH] = ACTIONS(2116), [anon_sym_PLUS_PLUS] = ACTIONS(2116), [anon_sym_sizeof] = ACTIONS(2114), [sym_number_literal] = ACTIONS(2116), [anon_sym_L_SQUOTE] = ACTIONS(2116), [anon_sym_u_SQUOTE] = ACTIONS(2116), [anon_sym_U_SQUOTE] = ACTIONS(2116), [anon_sym_u8_SQUOTE] = ACTIONS(2116), [anon_sym_SQUOTE] = ACTIONS(2116), [anon_sym_L_DQUOTE] = ACTIONS(2116), [anon_sym_u_DQUOTE] = ACTIONS(2116), [anon_sym_U_DQUOTE] = ACTIONS(2116), [anon_sym_u8_DQUOTE] = ACTIONS(2116), [anon_sym_DQUOTE] = ACTIONS(2116), [sym_true] = ACTIONS(2114), [sym_false] = ACTIONS(2114), [sym_null] = ACTIONS(2114), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2114), [anon_sym_virtual] = ACTIONS(2114), [anon_sym_explicit] = ACTIONS(2114), [sym_auto] = ACTIONS(2114), [anon_sym_typename] = ACTIONS(2114), [anon_sym_template] = ACTIONS(2114), [anon_sym_operator] = ACTIONS(2114), [anon_sym_delete] = ACTIONS(2114), [anon_sym_throw] = ACTIONS(2114), [anon_sym_namespace] = ACTIONS(2114), [anon_sym_using] = ACTIONS(2114), [anon_sym_static_assert] = ACTIONS(2114), [anon_sym_co_return] = ACTIONS(2114), [anon_sym_co_yield] = ACTIONS(2114), [anon_sym_try] = ACTIONS(2114), [anon_sym_co_await] = ACTIONS(2114), [anon_sym_new] = ACTIONS(2114), [sym_this] = ACTIONS(2114), [sym_nullptr] = ACTIONS(2114), [sym_raw_string_literal] = ACTIONS(2116), }, [388] = { [sym_identifier] = ACTIONS(2118), [aux_sym_preproc_include_token1] = ACTIONS(2118), [aux_sym_preproc_def_token1] = ACTIONS(2118), [aux_sym_preproc_if_token1] = ACTIONS(2118), [aux_sym_preproc_if_token2] = ACTIONS(2118), [aux_sym_preproc_ifdef_token1] = ACTIONS(2118), [aux_sym_preproc_ifdef_token2] = ACTIONS(2118), [aux_sym_preproc_else_token1] = ACTIONS(2118), [aux_sym_preproc_elif_token1] = ACTIONS(2118), [sym_preproc_directive] = ACTIONS(2118), [anon_sym_LPAREN2] = ACTIONS(2120), [anon_sym_BANG] = ACTIONS(2120), [anon_sym_TILDE] = ACTIONS(2120), [anon_sym_DASH] = ACTIONS(2118), [anon_sym_PLUS] = ACTIONS(2118), [anon_sym_STAR] = ACTIONS(2120), [anon_sym_AMP_AMP] = ACTIONS(2120), [anon_sym_AMP] = ACTIONS(2118), [anon_sym_SEMI] = ACTIONS(2120), [anon_sym_typedef] = ACTIONS(2118), [anon_sym_extern] = ACTIONS(2118), [anon_sym___attribute__] = ACTIONS(2118), [anon_sym_COLON_COLON] = ACTIONS(2120), [anon_sym_LBRACK_LBRACK] = ACTIONS(2120), [anon_sym___declspec] = ACTIONS(2118), [anon_sym___based] = ACTIONS(2118), [anon_sym___cdecl] = ACTIONS(2118), [anon_sym___clrcall] = ACTIONS(2118), [anon_sym___stdcall] = ACTIONS(2118), [anon_sym___fastcall] = ACTIONS(2118), [anon_sym___thiscall] = ACTIONS(2118), [anon_sym___vectorcall] = ACTIONS(2118), [anon_sym_LBRACE] = ACTIONS(2120), [anon_sym_LBRACK] = ACTIONS(2118), [anon_sym_static] = ACTIONS(2118), [anon_sym_register] = ACTIONS(2118), [anon_sym_inline] = ACTIONS(2118), [anon_sym_thread_local] = ACTIONS(2118), [anon_sym_const] = ACTIONS(2118), [anon_sym_volatile] = ACTIONS(2118), [anon_sym_restrict] = ACTIONS(2118), [anon_sym__Atomic] = ACTIONS(2118), [anon_sym_mutable] = ACTIONS(2118), [anon_sym_constexpr] = ACTIONS(2118), [anon_sym_signed] = ACTIONS(2118), [anon_sym_unsigned] = ACTIONS(2118), [anon_sym_long] = ACTIONS(2118), [anon_sym_short] = ACTIONS(2118), [sym_primitive_type] = ACTIONS(2118), [anon_sym_enum] = ACTIONS(2118), [anon_sym_class] = ACTIONS(2118), [anon_sym_struct] = ACTIONS(2118), [anon_sym_union] = ACTIONS(2118), [anon_sym_if] = ACTIONS(2118), [anon_sym_switch] = ACTIONS(2118), [anon_sym_case] = ACTIONS(2118), [anon_sym_default] = ACTIONS(2118), [anon_sym_while] = ACTIONS(2118), [anon_sym_do] = ACTIONS(2118), [anon_sym_for] = ACTIONS(2118), [anon_sym_return] = ACTIONS(2118), [anon_sym_break] = ACTIONS(2118), [anon_sym_continue] = ACTIONS(2118), [anon_sym_goto] = ACTIONS(2118), [anon_sym_DASH_DASH] = ACTIONS(2120), [anon_sym_PLUS_PLUS] = ACTIONS(2120), [anon_sym_sizeof] = ACTIONS(2118), [sym_number_literal] = ACTIONS(2120), [anon_sym_L_SQUOTE] = ACTIONS(2120), [anon_sym_u_SQUOTE] = ACTIONS(2120), [anon_sym_U_SQUOTE] = ACTIONS(2120), [anon_sym_u8_SQUOTE] = ACTIONS(2120), [anon_sym_SQUOTE] = ACTIONS(2120), [anon_sym_L_DQUOTE] = ACTIONS(2120), [anon_sym_u_DQUOTE] = ACTIONS(2120), [anon_sym_U_DQUOTE] = ACTIONS(2120), [anon_sym_u8_DQUOTE] = ACTIONS(2120), [anon_sym_DQUOTE] = ACTIONS(2120), [sym_true] = ACTIONS(2118), [sym_false] = ACTIONS(2118), [sym_null] = ACTIONS(2118), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2118), [anon_sym_virtual] = ACTIONS(2118), [anon_sym_explicit] = ACTIONS(2118), [sym_auto] = ACTIONS(2118), [anon_sym_typename] = ACTIONS(2118), [anon_sym_template] = ACTIONS(2118), [anon_sym_operator] = ACTIONS(2118), [anon_sym_delete] = ACTIONS(2118), [anon_sym_throw] = ACTIONS(2118), [anon_sym_namespace] = ACTIONS(2118), [anon_sym_using] = ACTIONS(2118), [anon_sym_static_assert] = ACTIONS(2118), [anon_sym_co_return] = ACTIONS(2118), [anon_sym_co_yield] = ACTIONS(2118), [anon_sym_try] = ACTIONS(2118), [anon_sym_co_await] = ACTIONS(2118), [anon_sym_new] = ACTIONS(2118), [sym_this] = ACTIONS(2118), [sym_nullptr] = ACTIONS(2118), [sym_raw_string_literal] = ACTIONS(2120), }, [389] = { [sym_identifier] = ACTIONS(2122), [aux_sym_preproc_include_token1] = ACTIONS(2122), [aux_sym_preproc_def_token1] = ACTIONS(2122), [aux_sym_preproc_if_token1] = ACTIONS(2122), [aux_sym_preproc_if_token2] = ACTIONS(2122), [aux_sym_preproc_ifdef_token1] = ACTIONS(2122), [aux_sym_preproc_ifdef_token2] = ACTIONS(2122), [aux_sym_preproc_else_token1] = ACTIONS(2122), [aux_sym_preproc_elif_token1] = ACTIONS(2122), [sym_preproc_directive] = ACTIONS(2122), [anon_sym_LPAREN2] = ACTIONS(2124), [anon_sym_BANG] = ACTIONS(2124), [anon_sym_TILDE] = ACTIONS(2124), [anon_sym_DASH] = ACTIONS(2122), [anon_sym_PLUS] = ACTIONS(2122), [anon_sym_STAR] = ACTIONS(2124), [anon_sym_AMP_AMP] = ACTIONS(2124), [anon_sym_AMP] = ACTIONS(2122), [anon_sym_SEMI] = ACTIONS(2124), [anon_sym_typedef] = ACTIONS(2122), [anon_sym_extern] = ACTIONS(2122), [anon_sym___attribute__] = ACTIONS(2122), [anon_sym_COLON_COLON] = ACTIONS(2124), [anon_sym_LBRACK_LBRACK] = ACTIONS(2124), [anon_sym___declspec] = ACTIONS(2122), [anon_sym___based] = ACTIONS(2122), [anon_sym___cdecl] = ACTIONS(2122), [anon_sym___clrcall] = ACTIONS(2122), [anon_sym___stdcall] = ACTIONS(2122), [anon_sym___fastcall] = ACTIONS(2122), [anon_sym___thiscall] = ACTIONS(2122), [anon_sym___vectorcall] = ACTIONS(2122), [anon_sym_LBRACE] = ACTIONS(2124), [anon_sym_LBRACK] = ACTIONS(2122), [anon_sym_static] = ACTIONS(2122), [anon_sym_register] = ACTIONS(2122), [anon_sym_inline] = ACTIONS(2122), [anon_sym_thread_local] = ACTIONS(2122), [anon_sym_const] = ACTIONS(2122), [anon_sym_volatile] = ACTIONS(2122), [anon_sym_restrict] = ACTIONS(2122), [anon_sym__Atomic] = ACTIONS(2122), [anon_sym_mutable] = ACTIONS(2122), [anon_sym_constexpr] = ACTIONS(2122), [anon_sym_signed] = ACTIONS(2122), [anon_sym_unsigned] = ACTIONS(2122), [anon_sym_long] = ACTIONS(2122), [anon_sym_short] = ACTIONS(2122), [sym_primitive_type] = ACTIONS(2122), [anon_sym_enum] = ACTIONS(2122), [anon_sym_class] = ACTIONS(2122), [anon_sym_struct] = ACTIONS(2122), [anon_sym_union] = ACTIONS(2122), [anon_sym_if] = ACTIONS(2122), [anon_sym_switch] = ACTIONS(2122), [anon_sym_case] = ACTIONS(2122), [anon_sym_default] = ACTIONS(2122), [anon_sym_while] = ACTIONS(2122), [anon_sym_do] = ACTIONS(2122), [anon_sym_for] = ACTIONS(2122), [anon_sym_return] = ACTIONS(2122), [anon_sym_break] = ACTIONS(2122), [anon_sym_continue] = ACTIONS(2122), [anon_sym_goto] = ACTIONS(2122), [anon_sym_DASH_DASH] = ACTIONS(2124), [anon_sym_PLUS_PLUS] = ACTIONS(2124), [anon_sym_sizeof] = ACTIONS(2122), [sym_number_literal] = ACTIONS(2124), [anon_sym_L_SQUOTE] = ACTIONS(2124), [anon_sym_u_SQUOTE] = ACTIONS(2124), [anon_sym_U_SQUOTE] = ACTIONS(2124), [anon_sym_u8_SQUOTE] = ACTIONS(2124), [anon_sym_SQUOTE] = ACTIONS(2124), [anon_sym_L_DQUOTE] = ACTIONS(2124), [anon_sym_u_DQUOTE] = ACTIONS(2124), [anon_sym_U_DQUOTE] = ACTIONS(2124), [anon_sym_u8_DQUOTE] = ACTIONS(2124), [anon_sym_DQUOTE] = ACTIONS(2124), [sym_true] = ACTIONS(2122), [sym_false] = ACTIONS(2122), [sym_null] = ACTIONS(2122), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2122), [anon_sym_virtual] = ACTIONS(2122), [anon_sym_explicit] = ACTIONS(2122), [sym_auto] = ACTIONS(2122), [anon_sym_typename] = ACTIONS(2122), [anon_sym_template] = ACTIONS(2122), [anon_sym_operator] = ACTIONS(2122), [anon_sym_delete] = ACTIONS(2122), [anon_sym_throw] = ACTIONS(2122), [anon_sym_namespace] = ACTIONS(2122), [anon_sym_using] = ACTIONS(2122), [anon_sym_static_assert] = ACTIONS(2122), [anon_sym_co_return] = ACTIONS(2122), [anon_sym_co_yield] = ACTIONS(2122), [anon_sym_try] = ACTIONS(2122), [anon_sym_co_await] = ACTIONS(2122), [anon_sym_new] = ACTIONS(2122), [sym_this] = ACTIONS(2122), [sym_nullptr] = ACTIONS(2122), [sym_raw_string_literal] = ACTIONS(2124), }, [390] = { [sym_identifier] = ACTIONS(1756), [aux_sym_preproc_include_token1] = ACTIONS(1756), [aux_sym_preproc_def_token1] = ACTIONS(1756), [aux_sym_preproc_if_token1] = ACTIONS(1756), [aux_sym_preproc_ifdef_token1] = ACTIONS(1756), [aux_sym_preproc_ifdef_token2] = ACTIONS(1756), [sym_preproc_directive] = ACTIONS(1756), [anon_sym_LPAREN2] = ACTIONS(1758), [anon_sym_BANG] = ACTIONS(1758), [anon_sym_TILDE] = ACTIONS(1758), [anon_sym_DASH] = ACTIONS(1756), [anon_sym_PLUS] = ACTIONS(1756), [anon_sym_STAR] = ACTIONS(1758), [anon_sym_AMP_AMP] = ACTIONS(1758), [anon_sym_AMP] = ACTIONS(1756), [anon_sym_SEMI] = ACTIONS(1758), [anon_sym_typedef] = ACTIONS(1756), [anon_sym_extern] = ACTIONS(1756), [anon_sym___attribute__] = ACTIONS(1756), [anon_sym_COLON_COLON] = ACTIONS(1758), [anon_sym_LBRACK_LBRACK] = ACTIONS(1758), [anon_sym___declspec] = ACTIONS(1756), [anon_sym___based] = ACTIONS(1756), [anon_sym___cdecl] = ACTIONS(1756), [anon_sym___clrcall] = ACTIONS(1756), [anon_sym___stdcall] = ACTIONS(1756), [anon_sym___fastcall] = ACTIONS(1756), [anon_sym___thiscall] = ACTIONS(1756), [anon_sym___vectorcall] = ACTIONS(1756), [anon_sym_LBRACE] = ACTIONS(1758), [anon_sym_RBRACE] = ACTIONS(1758), [anon_sym_LBRACK] = ACTIONS(1756), [anon_sym_static] = ACTIONS(1756), [anon_sym_register] = ACTIONS(1756), [anon_sym_inline] = ACTIONS(1756), [anon_sym_thread_local] = ACTIONS(1756), [anon_sym_const] = ACTIONS(1756), [anon_sym_volatile] = ACTIONS(1756), [anon_sym_restrict] = ACTIONS(1756), [anon_sym__Atomic] = ACTIONS(1756), [anon_sym_mutable] = ACTIONS(1756), [anon_sym_constexpr] = ACTIONS(1756), [anon_sym_signed] = ACTIONS(1756), [anon_sym_unsigned] = ACTIONS(1756), [anon_sym_long] = ACTIONS(1756), [anon_sym_short] = ACTIONS(1756), [sym_primitive_type] = ACTIONS(1756), [anon_sym_enum] = ACTIONS(1756), [anon_sym_class] = ACTIONS(1756), [anon_sym_struct] = ACTIONS(1756), [anon_sym_union] = ACTIONS(1756), [anon_sym_if] = ACTIONS(1756), [anon_sym_else] = ACTIONS(1756), [anon_sym_switch] = ACTIONS(1756), [anon_sym_case] = ACTIONS(1756), [anon_sym_default] = ACTIONS(1756), [anon_sym_while] = ACTIONS(1756), [anon_sym_do] = ACTIONS(1756), [anon_sym_for] = ACTIONS(1756), [anon_sym_return] = ACTIONS(1756), [anon_sym_break] = ACTIONS(1756), [anon_sym_continue] = ACTIONS(1756), [anon_sym_goto] = ACTIONS(1756), [anon_sym_DASH_DASH] = ACTIONS(1758), [anon_sym_PLUS_PLUS] = ACTIONS(1758), [anon_sym_sizeof] = ACTIONS(1756), [sym_number_literal] = ACTIONS(1758), [anon_sym_L_SQUOTE] = ACTIONS(1758), [anon_sym_u_SQUOTE] = ACTIONS(1758), [anon_sym_U_SQUOTE] = ACTIONS(1758), [anon_sym_u8_SQUOTE] = ACTIONS(1758), [anon_sym_SQUOTE] = ACTIONS(1758), [anon_sym_L_DQUOTE] = ACTIONS(1758), [anon_sym_u_DQUOTE] = ACTIONS(1758), [anon_sym_U_DQUOTE] = ACTIONS(1758), [anon_sym_u8_DQUOTE] = ACTIONS(1758), [anon_sym_DQUOTE] = ACTIONS(1758), [sym_true] = ACTIONS(1756), [sym_false] = ACTIONS(1756), [sym_null] = ACTIONS(1756), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1756), [anon_sym_virtual] = ACTIONS(1756), [anon_sym_explicit] = ACTIONS(1756), [sym_auto] = ACTIONS(1756), [anon_sym_typename] = ACTIONS(1756), [anon_sym_template] = ACTIONS(1756), [anon_sym_operator] = ACTIONS(1756), [anon_sym_delete] = ACTIONS(1756), [anon_sym_throw] = ACTIONS(1756), [anon_sym_namespace] = ACTIONS(1756), [anon_sym_using] = ACTIONS(1756), [anon_sym_static_assert] = ACTIONS(1756), [anon_sym_co_return] = ACTIONS(1756), [anon_sym_co_yield] = ACTIONS(1756), [anon_sym_try] = ACTIONS(1756), [anon_sym_catch] = ACTIONS(1756), [anon_sym_co_await] = ACTIONS(1756), [anon_sym_new] = ACTIONS(1756), [sym_this] = ACTIONS(1756), [sym_nullptr] = ACTIONS(1756), [sym_raw_string_literal] = ACTIONS(1758), }, [391] = { [sym_identifier] = ACTIONS(2126), [aux_sym_preproc_include_token1] = ACTIONS(2126), [aux_sym_preproc_def_token1] = ACTIONS(2126), [aux_sym_preproc_if_token1] = ACTIONS(2126), [aux_sym_preproc_if_token2] = ACTIONS(2126), [aux_sym_preproc_ifdef_token1] = ACTIONS(2126), [aux_sym_preproc_ifdef_token2] = ACTIONS(2126), [aux_sym_preproc_else_token1] = ACTIONS(2126), [aux_sym_preproc_elif_token1] = ACTIONS(2126), [sym_preproc_directive] = ACTIONS(2126), [anon_sym_LPAREN2] = ACTIONS(2128), [anon_sym_BANG] = ACTIONS(2128), [anon_sym_TILDE] = ACTIONS(2128), [anon_sym_DASH] = ACTIONS(2126), [anon_sym_PLUS] = ACTIONS(2126), [anon_sym_STAR] = ACTIONS(2128), [anon_sym_AMP_AMP] = ACTIONS(2128), [anon_sym_AMP] = ACTIONS(2126), [anon_sym_SEMI] = ACTIONS(2128), [anon_sym_typedef] = ACTIONS(2126), [anon_sym_extern] = ACTIONS(2126), [anon_sym___attribute__] = ACTIONS(2126), [anon_sym_COLON_COLON] = ACTIONS(2128), [anon_sym_LBRACK_LBRACK] = ACTIONS(2128), [anon_sym___declspec] = ACTIONS(2126), [anon_sym___based] = ACTIONS(2126), [anon_sym___cdecl] = ACTIONS(2126), [anon_sym___clrcall] = ACTIONS(2126), [anon_sym___stdcall] = ACTIONS(2126), [anon_sym___fastcall] = ACTIONS(2126), [anon_sym___thiscall] = ACTIONS(2126), [anon_sym___vectorcall] = ACTIONS(2126), [anon_sym_LBRACE] = ACTIONS(2128), [anon_sym_LBRACK] = ACTIONS(2126), [anon_sym_static] = ACTIONS(2126), [anon_sym_register] = ACTIONS(2126), [anon_sym_inline] = ACTIONS(2126), [anon_sym_thread_local] = ACTIONS(2126), [anon_sym_const] = ACTIONS(2126), [anon_sym_volatile] = ACTIONS(2126), [anon_sym_restrict] = ACTIONS(2126), [anon_sym__Atomic] = ACTIONS(2126), [anon_sym_mutable] = ACTIONS(2126), [anon_sym_constexpr] = ACTIONS(2126), [anon_sym_signed] = ACTIONS(2126), [anon_sym_unsigned] = ACTIONS(2126), [anon_sym_long] = ACTIONS(2126), [anon_sym_short] = ACTIONS(2126), [sym_primitive_type] = ACTIONS(2126), [anon_sym_enum] = ACTIONS(2126), [anon_sym_class] = ACTIONS(2126), [anon_sym_struct] = ACTIONS(2126), [anon_sym_union] = ACTIONS(2126), [anon_sym_if] = ACTIONS(2126), [anon_sym_switch] = ACTIONS(2126), [anon_sym_case] = ACTIONS(2126), [anon_sym_default] = ACTIONS(2126), [anon_sym_while] = ACTIONS(2126), [anon_sym_do] = ACTIONS(2126), [anon_sym_for] = ACTIONS(2126), [anon_sym_return] = ACTIONS(2126), [anon_sym_break] = ACTIONS(2126), [anon_sym_continue] = ACTIONS(2126), [anon_sym_goto] = ACTIONS(2126), [anon_sym_DASH_DASH] = ACTIONS(2128), [anon_sym_PLUS_PLUS] = ACTIONS(2128), [anon_sym_sizeof] = ACTIONS(2126), [sym_number_literal] = ACTIONS(2128), [anon_sym_L_SQUOTE] = ACTIONS(2128), [anon_sym_u_SQUOTE] = ACTIONS(2128), [anon_sym_U_SQUOTE] = ACTIONS(2128), [anon_sym_u8_SQUOTE] = ACTIONS(2128), [anon_sym_SQUOTE] = ACTIONS(2128), [anon_sym_L_DQUOTE] = ACTIONS(2128), [anon_sym_u_DQUOTE] = ACTIONS(2128), [anon_sym_U_DQUOTE] = ACTIONS(2128), [anon_sym_u8_DQUOTE] = ACTIONS(2128), [anon_sym_DQUOTE] = ACTIONS(2128), [sym_true] = ACTIONS(2126), [sym_false] = ACTIONS(2126), [sym_null] = ACTIONS(2126), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2126), [anon_sym_virtual] = ACTIONS(2126), [anon_sym_explicit] = ACTIONS(2126), [sym_auto] = ACTIONS(2126), [anon_sym_typename] = ACTIONS(2126), [anon_sym_template] = ACTIONS(2126), [anon_sym_operator] = ACTIONS(2126), [anon_sym_delete] = ACTIONS(2126), [anon_sym_throw] = ACTIONS(2126), [anon_sym_namespace] = ACTIONS(2126), [anon_sym_using] = ACTIONS(2126), [anon_sym_static_assert] = ACTIONS(2126), [anon_sym_co_return] = ACTIONS(2126), [anon_sym_co_yield] = ACTIONS(2126), [anon_sym_try] = ACTIONS(2126), [anon_sym_co_await] = ACTIONS(2126), [anon_sym_new] = ACTIONS(2126), [sym_this] = ACTIONS(2126), [sym_nullptr] = ACTIONS(2126), [sym_raw_string_literal] = ACTIONS(2128), }, [392] = { [sym_identifier] = ACTIONS(2130), [aux_sym_preproc_include_token1] = ACTIONS(2130), [aux_sym_preproc_def_token1] = ACTIONS(2130), [aux_sym_preproc_if_token1] = ACTIONS(2130), [aux_sym_preproc_if_token2] = ACTIONS(2130), [aux_sym_preproc_ifdef_token1] = ACTIONS(2130), [aux_sym_preproc_ifdef_token2] = ACTIONS(2130), [aux_sym_preproc_else_token1] = ACTIONS(2130), [aux_sym_preproc_elif_token1] = ACTIONS(2130), [sym_preproc_directive] = ACTIONS(2130), [anon_sym_LPAREN2] = ACTIONS(2132), [anon_sym_BANG] = ACTIONS(2132), [anon_sym_TILDE] = ACTIONS(2132), [anon_sym_DASH] = ACTIONS(2130), [anon_sym_PLUS] = ACTIONS(2130), [anon_sym_STAR] = ACTIONS(2132), [anon_sym_AMP_AMP] = ACTIONS(2132), [anon_sym_AMP] = ACTIONS(2130), [anon_sym_SEMI] = ACTIONS(2132), [anon_sym_typedef] = ACTIONS(2130), [anon_sym_extern] = ACTIONS(2130), [anon_sym___attribute__] = ACTIONS(2130), [anon_sym_COLON_COLON] = ACTIONS(2132), [anon_sym_LBRACK_LBRACK] = ACTIONS(2132), [anon_sym___declspec] = ACTIONS(2130), [anon_sym___based] = ACTIONS(2130), [anon_sym___cdecl] = ACTIONS(2130), [anon_sym___clrcall] = ACTIONS(2130), [anon_sym___stdcall] = ACTIONS(2130), [anon_sym___fastcall] = ACTIONS(2130), [anon_sym___thiscall] = ACTIONS(2130), [anon_sym___vectorcall] = ACTIONS(2130), [anon_sym_LBRACE] = ACTIONS(2132), [anon_sym_LBRACK] = ACTIONS(2130), [anon_sym_static] = ACTIONS(2130), [anon_sym_register] = ACTIONS(2130), [anon_sym_inline] = ACTIONS(2130), [anon_sym_thread_local] = ACTIONS(2130), [anon_sym_const] = ACTIONS(2130), [anon_sym_volatile] = ACTIONS(2130), [anon_sym_restrict] = ACTIONS(2130), [anon_sym__Atomic] = ACTIONS(2130), [anon_sym_mutable] = ACTIONS(2130), [anon_sym_constexpr] = ACTIONS(2130), [anon_sym_signed] = ACTIONS(2130), [anon_sym_unsigned] = ACTIONS(2130), [anon_sym_long] = ACTIONS(2130), [anon_sym_short] = ACTIONS(2130), [sym_primitive_type] = ACTIONS(2130), [anon_sym_enum] = ACTIONS(2130), [anon_sym_class] = ACTIONS(2130), [anon_sym_struct] = ACTIONS(2130), [anon_sym_union] = ACTIONS(2130), [anon_sym_if] = ACTIONS(2130), [anon_sym_switch] = ACTIONS(2130), [anon_sym_case] = ACTIONS(2130), [anon_sym_default] = ACTIONS(2130), [anon_sym_while] = ACTIONS(2130), [anon_sym_do] = ACTIONS(2130), [anon_sym_for] = ACTIONS(2130), [anon_sym_return] = ACTIONS(2130), [anon_sym_break] = ACTIONS(2130), [anon_sym_continue] = ACTIONS(2130), [anon_sym_goto] = ACTIONS(2130), [anon_sym_DASH_DASH] = ACTIONS(2132), [anon_sym_PLUS_PLUS] = ACTIONS(2132), [anon_sym_sizeof] = ACTIONS(2130), [sym_number_literal] = ACTIONS(2132), [anon_sym_L_SQUOTE] = ACTIONS(2132), [anon_sym_u_SQUOTE] = ACTIONS(2132), [anon_sym_U_SQUOTE] = ACTIONS(2132), [anon_sym_u8_SQUOTE] = ACTIONS(2132), [anon_sym_SQUOTE] = ACTIONS(2132), [anon_sym_L_DQUOTE] = ACTIONS(2132), [anon_sym_u_DQUOTE] = ACTIONS(2132), [anon_sym_U_DQUOTE] = ACTIONS(2132), [anon_sym_u8_DQUOTE] = ACTIONS(2132), [anon_sym_DQUOTE] = ACTIONS(2132), [sym_true] = ACTIONS(2130), [sym_false] = ACTIONS(2130), [sym_null] = ACTIONS(2130), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2130), [anon_sym_virtual] = ACTIONS(2130), [anon_sym_explicit] = ACTIONS(2130), [sym_auto] = ACTIONS(2130), [anon_sym_typename] = ACTIONS(2130), [anon_sym_template] = ACTIONS(2130), [anon_sym_operator] = ACTIONS(2130), [anon_sym_delete] = ACTIONS(2130), [anon_sym_throw] = ACTIONS(2130), [anon_sym_namespace] = ACTIONS(2130), [anon_sym_using] = ACTIONS(2130), [anon_sym_static_assert] = ACTIONS(2130), [anon_sym_co_return] = ACTIONS(2130), [anon_sym_co_yield] = ACTIONS(2130), [anon_sym_try] = ACTIONS(2130), [anon_sym_co_await] = ACTIONS(2130), [anon_sym_new] = ACTIONS(2130), [sym_this] = ACTIONS(2130), [sym_nullptr] = ACTIONS(2130), [sym_raw_string_literal] = ACTIONS(2132), }, [393] = { [sym_identifier] = ACTIONS(2134), [aux_sym_preproc_include_token1] = ACTIONS(2134), [aux_sym_preproc_def_token1] = ACTIONS(2134), [aux_sym_preproc_if_token1] = ACTIONS(2134), [aux_sym_preproc_if_token2] = ACTIONS(2134), [aux_sym_preproc_ifdef_token1] = ACTIONS(2134), [aux_sym_preproc_ifdef_token2] = ACTIONS(2134), [aux_sym_preproc_else_token1] = ACTIONS(2134), [aux_sym_preproc_elif_token1] = ACTIONS(2134), [sym_preproc_directive] = ACTIONS(2134), [anon_sym_LPAREN2] = ACTIONS(2136), [anon_sym_BANG] = ACTIONS(2136), [anon_sym_TILDE] = ACTIONS(2136), [anon_sym_DASH] = ACTIONS(2134), [anon_sym_PLUS] = ACTIONS(2134), [anon_sym_STAR] = ACTIONS(2136), [anon_sym_AMP_AMP] = ACTIONS(2136), [anon_sym_AMP] = ACTIONS(2134), [anon_sym_SEMI] = ACTIONS(2136), [anon_sym_typedef] = ACTIONS(2134), [anon_sym_extern] = ACTIONS(2134), [anon_sym___attribute__] = ACTIONS(2134), [anon_sym_COLON_COLON] = ACTIONS(2136), [anon_sym_LBRACK_LBRACK] = ACTIONS(2136), [anon_sym___declspec] = ACTIONS(2134), [anon_sym___based] = ACTIONS(2134), [anon_sym___cdecl] = ACTIONS(2134), [anon_sym___clrcall] = ACTIONS(2134), [anon_sym___stdcall] = ACTIONS(2134), [anon_sym___fastcall] = ACTIONS(2134), [anon_sym___thiscall] = ACTIONS(2134), [anon_sym___vectorcall] = ACTIONS(2134), [anon_sym_LBRACE] = ACTIONS(2136), [anon_sym_LBRACK] = ACTIONS(2134), [anon_sym_static] = ACTIONS(2134), [anon_sym_register] = ACTIONS(2134), [anon_sym_inline] = ACTIONS(2134), [anon_sym_thread_local] = ACTIONS(2134), [anon_sym_const] = ACTIONS(2134), [anon_sym_volatile] = ACTIONS(2134), [anon_sym_restrict] = ACTIONS(2134), [anon_sym__Atomic] = ACTIONS(2134), [anon_sym_mutable] = ACTIONS(2134), [anon_sym_constexpr] = ACTIONS(2134), [anon_sym_signed] = ACTIONS(2134), [anon_sym_unsigned] = ACTIONS(2134), [anon_sym_long] = ACTIONS(2134), [anon_sym_short] = ACTIONS(2134), [sym_primitive_type] = ACTIONS(2134), [anon_sym_enum] = ACTIONS(2134), [anon_sym_class] = ACTIONS(2134), [anon_sym_struct] = ACTIONS(2134), [anon_sym_union] = ACTIONS(2134), [anon_sym_if] = ACTIONS(2134), [anon_sym_switch] = ACTIONS(2134), [anon_sym_case] = ACTIONS(2134), [anon_sym_default] = ACTIONS(2134), [anon_sym_while] = ACTIONS(2134), [anon_sym_do] = ACTIONS(2134), [anon_sym_for] = ACTIONS(2134), [anon_sym_return] = ACTIONS(2134), [anon_sym_break] = ACTIONS(2134), [anon_sym_continue] = ACTIONS(2134), [anon_sym_goto] = ACTIONS(2134), [anon_sym_DASH_DASH] = ACTIONS(2136), [anon_sym_PLUS_PLUS] = ACTIONS(2136), [anon_sym_sizeof] = ACTIONS(2134), [sym_number_literal] = ACTIONS(2136), [anon_sym_L_SQUOTE] = ACTIONS(2136), [anon_sym_u_SQUOTE] = ACTIONS(2136), [anon_sym_U_SQUOTE] = ACTIONS(2136), [anon_sym_u8_SQUOTE] = ACTIONS(2136), [anon_sym_SQUOTE] = ACTIONS(2136), [anon_sym_L_DQUOTE] = ACTIONS(2136), [anon_sym_u_DQUOTE] = ACTIONS(2136), [anon_sym_U_DQUOTE] = ACTIONS(2136), [anon_sym_u8_DQUOTE] = ACTIONS(2136), [anon_sym_DQUOTE] = ACTIONS(2136), [sym_true] = ACTIONS(2134), [sym_false] = ACTIONS(2134), [sym_null] = ACTIONS(2134), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2134), [anon_sym_virtual] = ACTIONS(2134), [anon_sym_explicit] = ACTIONS(2134), [sym_auto] = ACTIONS(2134), [anon_sym_typename] = ACTIONS(2134), [anon_sym_template] = ACTIONS(2134), [anon_sym_operator] = ACTIONS(2134), [anon_sym_delete] = ACTIONS(2134), [anon_sym_throw] = ACTIONS(2134), [anon_sym_namespace] = ACTIONS(2134), [anon_sym_using] = ACTIONS(2134), [anon_sym_static_assert] = ACTIONS(2134), [anon_sym_co_return] = ACTIONS(2134), [anon_sym_co_yield] = ACTIONS(2134), [anon_sym_try] = ACTIONS(2134), [anon_sym_co_await] = ACTIONS(2134), [anon_sym_new] = ACTIONS(2134), [sym_this] = ACTIONS(2134), [sym_nullptr] = ACTIONS(2134), [sym_raw_string_literal] = ACTIONS(2136), }, [394] = { [sym_identifier] = ACTIONS(2138), [aux_sym_preproc_include_token1] = ACTIONS(2138), [aux_sym_preproc_def_token1] = ACTIONS(2138), [aux_sym_preproc_if_token1] = ACTIONS(2138), [aux_sym_preproc_if_token2] = ACTIONS(2138), [aux_sym_preproc_ifdef_token1] = ACTIONS(2138), [aux_sym_preproc_ifdef_token2] = ACTIONS(2138), [aux_sym_preproc_else_token1] = ACTIONS(2138), [aux_sym_preproc_elif_token1] = ACTIONS(2138), [sym_preproc_directive] = ACTIONS(2138), [anon_sym_LPAREN2] = ACTIONS(2140), [anon_sym_BANG] = ACTIONS(2140), [anon_sym_TILDE] = ACTIONS(2140), [anon_sym_DASH] = ACTIONS(2138), [anon_sym_PLUS] = ACTIONS(2138), [anon_sym_STAR] = ACTIONS(2140), [anon_sym_AMP_AMP] = ACTIONS(2140), [anon_sym_AMP] = ACTIONS(2138), [anon_sym_SEMI] = ACTIONS(2140), [anon_sym_typedef] = ACTIONS(2138), [anon_sym_extern] = ACTIONS(2138), [anon_sym___attribute__] = ACTIONS(2138), [anon_sym_COLON_COLON] = ACTIONS(2140), [anon_sym_LBRACK_LBRACK] = ACTIONS(2140), [anon_sym___declspec] = ACTIONS(2138), [anon_sym___based] = ACTIONS(2138), [anon_sym___cdecl] = ACTIONS(2138), [anon_sym___clrcall] = ACTIONS(2138), [anon_sym___stdcall] = ACTIONS(2138), [anon_sym___fastcall] = ACTIONS(2138), [anon_sym___thiscall] = ACTIONS(2138), [anon_sym___vectorcall] = ACTIONS(2138), [anon_sym_LBRACE] = ACTIONS(2140), [anon_sym_LBRACK] = ACTIONS(2138), [anon_sym_static] = ACTIONS(2138), [anon_sym_register] = ACTIONS(2138), [anon_sym_inline] = ACTIONS(2138), [anon_sym_thread_local] = ACTIONS(2138), [anon_sym_const] = ACTIONS(2138), [anon_sym_volatile] = ACTIONS(2138), [anon_sym_restrict] = ACTIONS(2138), [anon_sym__Atomic] = ACTIONS(2138), [anon_sym_mutable] = ACTIONS(2138), [anon_sym_constexpr] = ACTIONS(2138), [anon_sym_signed] = ACTIONS(2138), [anon_sym_unsigned] = ACTIONS(2138), [anon_sym_long] = ACTIONS(2138), [anon_sym_short] = ACTIONS(2138), [sym_primitive_type] = ACTIONS(2138), [anon_sym_enum] = ACTIONS(2138), [anon_sym_class] = ACTIONS(2138), [anon_sym_struct] = ACTIONS(2138), [anon_sym_union] = ACTIONS(2138), [anon_sym_if] = ACTIONS(2138), [anon_sym_switch] = ACTIONS(2138), [anon_sym_case] = ACTIONS(2138), [anon_sym_default] = ACTIONS(2138), [anon_sym_while] = ACTIONS(2138), [anon_sym_do] = ACTIONS(2138), [anon_sym_for] = ACTIONS(2138), [anon_sym_return] = ACTIONS(2138), [anon_sym_break] = ACTIONS(2138), [anon_sym_continue] = ACTIONS(2138), [anon_sym_goto] = ACTIONS(2138), [anon_sym_DASH_DASH] = ACTIONS(2140), [anon_sym_PLUS_PLUS] = ACTIONS(2140), [anon_sym_sizeof] = ACTIONS(2138), [sym_number_literal] = ACTIONS(2140), [anon_sym_L_SQUOTE] = ACTIONS(2140), [anon_sym_u_SQUOTE] = ACTIONS(2140), [anon_sym_U_SQUOTE] = ACTIONS(2140), [anon_sym_u8_SQUOTE] = ACTIONS(2140), [anon_sym_SQUOTE] = ACTIONS(2140), [anon_sym_L_DQUOTE] = ACTIONS(2140), [anon_sym_u_DQUOTE] = ACTIONS(2140), [anon_sym_U_DQUOTE] = ACTIONS(2140), [anon_sym_u8_DQUOTE] = ACTIONS(2140), [anon_sym_DQUOTE] = ACTIONS(2140), [sym_true] = ACTIONS(2138), [sym_false] = ACTIONS(2138), [sym_null] = ACTIONS(2138), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2138), [anon_sym_virtual] = ACTIONS(2138), [anon_sym_explicit] = ACTIONS(2138), [sym_auto] = ACTIONS(2138), [anon_sym_typename] = ACTIONS(2138), [anon_sym_template] = ACTIONS(2138), [anon_sym_operator] = ACTIONS(2138), [anon_sym_delete] = ACTIONS(2138), [anon_sym_throw] = ACTIONS(2138), [anon_sym_namespace] = ACTIONS(2138), [anon_sym_using] = ACTIONS(2138), [anon_sym_static_assert] = ACTIONS(2138), [anon_sym_co_return] = ACTIONS(2138), [anon_sym_co_yield] = ACTIONS(2138), [anon_sym_try] = ACTIONS(2138), [anon_sym_co_await] = ACTIONS(2138), [anon_sym_new] = ACTIONS(2138), [sym_this] = ACTIONS(2138), [sym_nullptr] = ACTIONS(2138), [sym_raw_string_literal] = ACTIONS(2140), }, [395] = { [sym_identifier] = ACTIONS(2142), [aux_sym_preproc_include_token1] = ACTIONS(2142), [aux_sym_preproc_def_token1] = ACTIONS(2142), [aux_sym_preproc_if_token1] = ACTIONS(2142), [aux_sym_preproc_if_token2] = ACTIONS(2142), [aux_sym_preproc_ifdef_token1] = ACTIONS(2142), [aux_sym_preproc_ifdef_token2] = ACTIONS(2142), [aux_sym_preproc_else_token1] = ACTIONS(2142), [aux_sym_preproc_elif_token1] = ACTIONS(2142), [sym_preproc_directive] = ACTIONS(2142), [anon_sym_LPAREN2] = ACTIONS(2144), [anon_sym_BANG] = ACTIONS(2144), [anon_sym_TILDE] = ACTIONS(2144), [anon_sym_DASH] = ACTIONS(2142), [anon_sym_PLUS] = ACTIONS(2142), [anon_sym_STAR] = ACTIONS(2144), [anon_sym_AMP_AMP] = ACTIONS(2144), [anon_sym_AMP] = ACTIONS(2142), [anon_sym_SEMI] = ACTIONS(2144), [anon_sym_typedef] = ACTIONS(2142), [anon_sym_extern] = ACTIONS(2142), [anon_sym___attribute__] = ACTIONS(2142), [anon_sym_COLON_COLON] = ACTIONS(2144), [anon_sym_LBRACK_LBRACK] = ACTIONS(2144), [anon_sym___declspec] = ACTIONS(2142), [anon_sym___based] = ACTIONS(2142), [anon_sym___cdecl] = ACTIONS(2142), [anon_sym___clrcall] = ACTIONS(2142), [anon_sym___stdcall] = ACTIONS(2142), [anon_sym___fastcall] = ACTIONS(2142), [anon_sym___thiscall] = ACTIONS(2142), [anon_sym___vectorcall] = ACTIONS(2142), [anon_sym_LBRACE] = ACTIONS(2144), [anon_sym_LBRACK] = ACTIONS(2142), [anon_sym_static] = ACTIONS(2142), [anon_sym_register] = ACTIONS(2142), [anon_sym_inline] = ACTIONS(2142), [anon_sym_thread_local] = ACTIONS(2142), [anon_sym_const] = ACTIONS(2142), [anon_sym_volatile] = ACTIONS(2142), [anon_sym_restrict] = ACTIONS(2142), [anon_sym__Atomic] = ACTIONS(2142), [anon_sym_mutable] = ACTIONS(2142), [anon_sym_constexpr] = ACTIONS(2142), [anon_sym_signed] = ACTIONS(2142), [anon_sym_unsigned] = ACTIONS(2142), [anon_sym_long] = ACTIONS(2142), [anon_sym_short] = ACTIONS(2142), [sym_primitive_type] = ACTIONS(2142), [anon_sym_enum] = ACTIONS(2142), [anon_sym_class] = ACTIONS(2142), [anon_sym_struct] = ACTIONS(2142), [anon_sym_union] = ACTIONS(2142), [anon_sym_if] = ACTIONS(2142), [anon_sym_switch] = ACTIONS(2142), [anon_sym_case] = ACTIONS(2142), [anon_sym_default] = ACTIONS(2142), [anon_sym_while] = ACTIONS(2142), [anon_sym_do] = ACTIONS(2142), [anon_sym_for] = ACTIONS(2142), [anon_sym_return] = ACTIONS(2142), [anon_sym_break] = ACTIONS(2142), [anon_sym_continue] = ACTIONS(2142), [anon_sym_goto] = ACTIONS(2142), [anon_sym_DASH_DASH] = ACTIONS(2144), [anon_sym_PLUS_PLUS] = ACTIONS(2144), [anon_sym_sizeof] = ACTIONS(2142), [sym_number_literal] = ACTIONS(2144), [anon_sym_L_SQUOTE] = ACTIONS(2144), [anon_sym_u_SQUOTE] = ACTIONS(2144), [anon_sym_U_SQUOTE] = ACTIONS(2144), [anon_sym_u8_SQUOTE] = ACTIONS(2144), [anon_sym_SQUOTE] = ACTIONS(2144), [anon_sym_L_DQUOTE] = ACTIONS(2144), [anon_sym_u_DQUOTE] = ACTIONS(2144), [anon_sym_U_DQUOTE] = ACTIONS(2144), [anon_sym_u8_DQUOTE] = ACTIONS(2144), [anon_sym_DQUOTE] = ACTIONS(2144), [sym_true] = ACTIONS(2142), [sym_false] = ACTIONS(2142), [sym_null] = ACTIONS(2142), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2142), [anon_sym_virtual] = ACTIONS(2142), [anon_sym_explicit] = ACTIONS(2142), [sym_auto] = ACTIONS(2142), [anon_sym_typename] = ACTIONS(2142), [anon_sym_template] = ACTIONS(2142), [anon_sym_operator] = ACTIONS(2142), [anon_sym_delete] = ACTIONS(2142), [anon_sym_throw] = ACTIONS(2142), [anon_sym_namespace] = ACTIONS(2142), [anon_sym_using] = ACTIONS(2142), [anon_sym_static_assert] = ACTIONS(2142), [anon_sym_co_return] = ACTIONS(2142), [anon_sym_co_yield] = ACTIONS(2142), [anon_sym_try] = ACTIONS(2142), [anon_sym_co_await] = ACTIONS(2142), [anon_sym_new] = ACTIONS(2142), [sym_this] = ACTIONS(2142), [sym_nullptr] = ACTIONS(2142), [sym_raw_string_literal] = ACTIONS(2144), }, [396] = { [sym_identifier] = ACTIONS(2146), [aux_sym_preproc_include_token1] = ACTIONS(2146), [aux_sym_preproc_def_token1] = ACTIONS(2146), [aux_sym_preproc_if_token1] = ACTIONS(2146), [aux_sym_preproc_if_token2] = ACTIONS(2146), [aux_sym_preproc_ifdef_token1] = ACTIONS(2146), [aux_sym_preproc_ifdef_token2] = ACTIONS(2146), [aux_sym_preproc_else_token1] = ACTIONS(2146), [aux_sym_preproc_elif_token1] = ACTIONS(2146), [sym_preproc_directive] = ACTIONS(2146), [anon_sym_LPAREN2] = ACTIONS(2148), [anon_sym_BANG] = ACTIONS(2148), [anon_sym_TILDE] = ACTIONS(2148), [anon_sym_DASH] = ACTIONS(2146), [anon_sym_PLUS] = ACTIONS(2146), [anon_sym_STAR] = ACTIONS(2148), [anon_sym_AMP_AMP] = ACTIONS(2148), [anon_sym_AMP] = ACTIONS(2146), [anon_sym_SEMI] = ACTIONS(2148), [anon_sym_typedef] = ACTIONS(2146), [anon_sym_extern] = ACTIONS(2146), [anon_sym___attribute__] = ACTIONS(2146), [anon_sym_COLON_COLON] = ACTIONS(2148), [anon_sym_LBRACK_LBRACK] = ACTIONS(2148), [anon_sym___declspec] = ACTIONS(2146), [anon_sym___based] = ACTIONS(2146), [anon_sym___cdecl] = ACTIONS(2146), [anon_sym___clrcall] = ACTIONS(2146), [anon_sym___stdcall] = ACTIONS(2146), [anon_sym___fastcall] = ACTIONS(2146), [anon_sym___thiscall] = ACTIONS(2146), [anon_sym___vectorcall] = ACTIONS(2146), [anon_sym_LBRACE] = ACTIONS(2148), [anon_sym_LBRACK] = ACTIONS(2146), [anon_sym_static] = ACTIONS(2146), [anon_sym_register] = ACTIONS(2146), [anon_sym_inline] = ACTIONS(2146), [anon_sym_thread_local] = ACTIONS(2146), [anon_sym_const] = ACTIONS(2146), [anon_sym_volatile] = ACTIONS(2146), [anon_sym_restrict] = ACTIONS(2146), [anon_sym__Atomic] = ACTIONS(2146), [anon_sym_mutable] = ACTIONS(2146), [anon_sym_constexpr] = ACTIONS(2146), [anon_sym_signed] = ACTIONS(2146), [anon_sym_unsigned] = ACTIONS(2146), [anon_sym_long] = ACTIONS(2146), [anon_sym_short] = ACTIONS(2146), [sym_primitive_type] = ACTIONS(2146), [anon_sym_enum] = ACTIONS(2146), [anon_sym_class] = ACTIONS(2146), [anon_sym_struct] = ACTIONS(2146), [anon_sym_union] = ACTIONS(2146), [anon_sym_if] = ACTIONS(2146), [anon_sym_switch] = ACTIONS(2146), [anon_sym_case] = ACTIONS(2146), [anon_sym_default] = ACTIONS(2146), [anon_sym_while] = ACTIONS(2146), [anon_sym_do] = ACTIONS(2146), [anon_sym_for] = ACTIONS(2146), [anon_sym_return] = ACTIONS(2146), [anon_sym_break] = ACTIONS(2146), [anon_sym_continue] = ACTIONS(2146), [anon_sym_goto] = ACTIONS(2146), [anon_sym_DASH_DASH] = ACTIONS(2148), [anon_sym_PLUS_PLUS] = ACTIONS(2148), [anon_sym_sizeof] = ACTIONS(2146), [sym_number_literal] = ACTIONS(2148), [anon_sym_L_SQUOTE] = ACTIONS(2148), [anon_sym_u_SQUOTE] = ACTIONS(2148), [anon_sym_U_SQUOTE] = ACTIONS(2148), [anon_sym_u8_SQUOTE] = ACTIONS(2148), [anon_sym_SQUOTE] = ACTIONS(2148), [anon_sym_L_DQUOTE] = ACTIONS(2148), [anon_sym_u_DQUOTE] = ACTIONS(2148), [anon_sym_U_DQUOTE] = ACTIONS(2148), [anon_sym_u8_DQUOTE] = ACTIONS(2148), [anon_sym_DQUOTE] = ACTIONS(2148), [sym_true] = ACTIONS(2146), [sym_false] = ACTIONS(2146), [sym_null] = ACTIONS(2146), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2146), [anon_sym_virtual] = ACTIONS(2146), [anon_sym_explicit] = ACTIONS(2146), [sym_auto] = ACTIONS(2146), [anon_sym_typename] = ACTIONS(2146), [anon_sym_template] = ACTIONS(2146), [anon_sym_operator] = ACTIONS(2146), [anon_sym_delete] = ACTIONS(2146), [anon_sym_throw] = ACTIONS(2146), [anon_sym_namespace] = ACTIONS(2146), [anon_sym_using] = ACTIONS(2146), [anon_sym_static_assert] = ACTIONS(2146), [anon_sym_co_return] = ACTIONS(2146), [anon_sym_co_yield] = ACTIONS(2146), [anon_sym_try] = ACTIONS(2146), [anon_sym_co_await] = ACTIONS(2146), [anon_sym_new] = ACTIONS(2146), [sym_this] = ACTIONS(2146), [sym_nullptr] = ACTIONS(2146), [sym_raw_string_literal] = ACTIONS(2148), }, [397] = { [sym_identifier] = ACTIONS(2150), [aux_sym_preproc_include_token1] = ACTIONS(2150), [aux_sym_preproc_def_token1] = ACTIONS(2150), [aux_sym_preproc_if_token1] = ACTIONS(2150), [aux_sym_preproc_if_token2] = ACTIONS(2150), [aux_sym_preproc_ifdef_token1] = ACTIONS(2150), [aux_sym_preproc_ifdef_token2] = ACTIONS(2150), [aux_sym_preproc_else_token1] = ACTIONS(2150), [aux_sym_preproc_elif_token1] = ACTIONS(2150), [sym_preproc_directive] = ACTIONS(2150), [anon_sym_LPAREN2] = ACTIONS(2152), [anon_sym_BANG] = ACTIONS(2152), [anon_sym_TILDE] = ACTIONS(2152), [anon_sym_DASH] = ACTIONS(2150), [anon_sym_PLUS] = ACTIONS(2150), [anon_sym_STAR] = ACTIONS(2152), [anon_sym_AMP_AMP] = ACTIONS(2152), [anon_sym_AMP] = ACTIONS(2150), [anon_sym_SEMI] = ACTIONS(2152), [anon_sym_typedef] = ACTIONS(2150), [anon_sym_extern] = ACTIONS(2150), [anon_sym___attribute__] = ACTIONS(2150), [anon_sym_COLON_COLON] = ACTIONS(2152), [anon_sym_LBRACK_LBRACK] = ACTIONS(2152), [anon_sym___declspec] = ACTIONS(2150), [anon_sym___based] = ACTIONS(2150), [anon_sym___cdecl] = ACTIONS(2150), [anon_sym___clrcall] = ACTIONS(2150), [anon_sym___stdcall] = ACTIONS(2150), [anon_sym___fastcall] = ACTIONS(2150), [anon_sym___thiscall] = ACTIONS(2150), [anon_sym___vectorcall] = ACTIONS(2150), [anon_sym_LBRACE] = ACTIONS(2152), [anon_sym_LBRACK] = ACTIONS(2150), [anon_sym_static] = ACTIONS(2150), [anon_sym_register] = ACTIONS(2150), [anon_sym_inline] = ACTIONS(2150), [anon_sym_thread_local] = ACTIONS(2150), [anon_sym_const] = ACTIONS(2150), [anon_sym_volatile] = ACTIONS(2150), [anon_sym_restrict] = ACTIONS(2150), [anon_sym__Atomic] = ACTIONS(2150), [anon_sym_mutable] = ACTIONS(2150), [anon_sym_constexpr] = ACTIONS(2150), [anon_sym_signed] = ACTIONS(2150), [anon_sym_unsigned] = ACTIONS(2150), [anon_sym_long] = ACTIONS(2150), [anon_sym_short] = ACTIONS(2150), [sym_primitive_type] = ACTIONS(2150), [anon_sym_enum] = ACTIONS(2150), [anon_sym_class] = ACTIONS(2150), [anon_sym_struct] = ACTIONS(2150), [anon_sym_union] = ACTIONS(2150), [anon_sym_if] = ACTIONS(2150), [anon_sym_switch] = ACTIONS(2150), [anon_sym_case] = ACTIONS(2150), [anon_sym_default] = ACTIONS(2150), [anon_sym_while] = ACTIONS(2150), [anon_sym_do] = ACTIONS(2150), [anon_sym_for] = ACTIONS(2150), [anon_sym_return] = ACTIONS(2150), [anon_sym_break] = ACTIONS(2150), [anon_sym_continue] = ACTIONS(2150), [anon_sym_goto] = ACTIONS(2150), [anon_sym_DASH_DASH] = ACTIONS(2152), [anon_sym_PLUS_PLUS] = ACTIONS(2152), [anon_sym_sizeof] = ACTIONS(2150), [sym_number_literal] = ACTIONS(2152), [anon_sym_L_SQUOTE] = ACTIONS(2152), [anon_sym_u_SQUOTE] = ACTIONS(2152), [anon_sym_U_SQUOTE] = ACTIONS(2152), [anon_sym_u8_SQUOTE] = ACTIONS(2152), [anon_sym_SQUOTE] = ACTIONS(2152), [anon_sym_L_DQUOTE] = ACTIONS(2152), [anon_sym_u_DQUOTE] = ACTIONS(2152), [anon_sym_U_DQUOTE] = ACTIONS(2152), [anon_sym_u8_DQUOTE] = ACTIONS(2152), [anon_sym_DQUOTE] = ACTIONS(2152), [sym_true] = ACTIONS(2150), [sym_false] = ACTIONS(2150), [sym_null] = ACTIONS(2150), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2150), [anon_sym_virtual] = ACTIONS(2150), [anon_sym_explicit] = ACTIONS(2150), [sym_auto] = ACTIONS(2150), [anon_sym_typename] = ACTIONS(2150), [anon_sym_template] = ACTIONS(2150), [anon_sym_operator] = ACTIONS(2150), [anon_sym_delete] = ACTIONS(2150), [anon_sym_throw] = ACTIONS(2150), [anon_sym_namespace] = ACTIONS(2150), [anon_sym_using] = ACTIONS(2150), [anon_sym_static_assert] = ACTIONS(2150), [anon_sym_co_return] = ACTIONS(2150), [anon_sym_co_yield] = ACTIONS(2150), [anon_sym_try] = ACTIONS(2150), [anon_sym_co_await] = ACTIONS(2150), [anon_sym_new] = ACTIONS(2150), [sym_this] = ACTIONS(2150), [sym_nullptr] = ACTIONS(2150), [sym_raw_string_literal] = ACTIONS(2152), }, [398] = { [sym_identifier] = ACTIONS(2154), [aux_sym_preproc_include_token1] = ACTIONS(2154), [aux_sym_preproc_def_token1] = ACTIONS(2154), [aux_sym_preproc_if_token1] = ACTIONS(2154), [aux_sym_preproc_if_token2] = ACTIONS(2154), [aux_sym_preproc_ifdef_token1] = ACTIONS(2154), [aux_sym_preproc_ifdef_token2] = ACTIONS(2154), [aux_sym_preproc_else_token1] = ACTIONS(2154), [aux_sym_preproc_elif_token1] = ACTIONS(2154), [sym_preproc_directive] = ACTIONS(2154), [anon_sym_LPAREN2] = ACTIONS(2156), [anon_sym_BANG] = ACTIONS(2156), [anon_sym_TILDE] = ACTIONS(2156), [anon_sym_DASH] = ACTIONS(2154), [anon_sym_PLUS] = ACTIONS(2154), [anon_sym_STAR] = ACTIONS(2156), [anon_sym_AMP_AMP] = ACTIONS(2156), [anon_sym_AMP] = ACTIONS(2154), [anon_sym_SEMI] = ACTIONS(2156), [anon_sym_typedef] = ACTIONS(2154), [anon_sym_extern] = ACTIONS(2154), [anon_sym___attribute__] = ACTIONS(2154), [anon_sym_COLON_COLON] = ACTIONS(2156), [anon_sym_LBRACK_LBRACK] = ACTIONS(2156), [anon_sym___declspec] = ACTIONS(2154), [anon_sym___based] = ACTIONS(2154), [anon_sym___cdecl] = ACTIONS(2154), [anon_sym___clrcall] = ACTIONS(2154), [anon_sym___stdcall] = ACTIONS(2154), [anon_sym___fastcall] = ACTIONS(2154), [anon_sym___thiscall] = ACTIONS(2154), [anon_sym___vectorcall] = ACTIONS(2154), [anon_sym_LBRACE] = ACTIONS(2156), [anon_sym_LBRACK] = ACTIONS(2154), [anon_sym_static] = ACTIONS(2154), [anon_sym_register] = ACTIONS(2154), [anon_sym_inline] = ACTIONS(2154), [anon_sym_thread_local] = ACTIONS(2154), [anon_sym_const] = ACTIONS(2154), [anon_sym_volatile] = ACTIONS(2154), [anon_sym_restrict] = ACTIONS(2154), [anon_sym__Atomic] = ACTIONS(2154), [anon_sym_mutable] = ACTIONS(2154), [anon_sym_constexpr] = ACTIONS(2154), [anon_sym_signed] = ACTIONS(2154), [anon_sym_unsigned] = ACTIONS(2154), [anon_sym_long] = ACTIONS(2154), [anon_sym_short] = ACTIONS(2154), [sym_primitive_type] = ACTIONS(2154), [anon_sym_enum] = ACTIONS(2154), [anon_sym_class] = ACTIONS(2154), [anon_sym_struct] = ACTIONS(2154), [anon_sym_union] = ACTIONS(2154), [anon_sym_if] = ACTIONS(2154), [anon_sym_switch] = ACTIONS(2154), [anon_sym_case] = ACTIONS(2154), [anon_sym_default] = ACTIONS(2154), [anon_sym_while] = ACTIONS(2154), [anon_sym_do] = ACTIONS(2154), [anon_sym_for] = ACTIONS(2154), [anon_sym_return] = ACTIONS(2154), [anon_sym_break] = ACTIONS(2154), [anon_sym_continue] = ACTIONS(2154), [anon_sym_goto] = ACTIONS(2154), [anon_sym_DASH_DASH] = ACTIONS(2156), [anon_sym_PLUS_PLUS] = ACTIONS(2156), [anon_sym_sizeof] = ACTIONS(2154), [sym_number_literal] = ACTIONS(2156), [anon_sym_L_SQUOTE] = ACTIONS(2156), [anon_sym_u_SQUOTE] = ACTIONS(2156), [anon_sym_U_SQUOTE] = ACTIONS(2156), [anon_sym_u8_SQUOTE] = ACTIONS(2156), [anon_sym_SQUOTE] = ACTIONS(2156), [anon_sym_L_DQUOTE] = ACTIONS(2156), [anon_sym_u_DQUOTE] = ACTIONS(2156), [anon_sym_U_DQUOTE] = ACTIONS(2156), [anon_sym_u8_DQUOTE] = ACTIONS(2156), [anon_sym_DQUOTE] = ACTIONS(2156), [sym_true] = ACTIONS(2154), [sym_false] = ACTIONS(2154), [sym_null] = ACTIONS(2154), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2154), [anon_sym_virtual] = ACTIONS(2154), [anon_sym_explicit] = ACTIONS(2154), [sym_auto] = ACTIONS(2154), [anon_sym_typename] = ACTIONS(2154), [anon_sym_template] = ACTIONS(2154), [anon_sym_operator] = ACTIONS(2154), [anon_sym_delete] = ACTIONS(2154), [anon_sym_throw] = ACTIONS(2154), [anon_sym_namespace] = ACTIONS(2154), [anon_sym_using] = ACTIONS(2154), [anon_sym_static_assert] = ACTIONS(2154), [anon_sym_co_return] = ACTIONS(2154), [anon_sym_co_yield] = ACTIONS(2154), [anon_sym_try] = ACTIONS(2154), [anon_sym_co_await] = ACTIONS(2154), [anon_sym_new] = ACTIONS(2154), [sym_this] = ACTIONS(2154), [sym_nullptr] = ACTIONS(2154), [sym_raw_string_literal] = ACTIONS(2156), }, [399] = { [sym_identifier] = ACTIONS(2158), [aux_sym_preproc_include_token1] = ACTIONS(2158), [aux_sym_preproc_def_token1] = ACTIONS(2158), [aux_sym_preproc_if_token1] = ACTIONS(2158), [aux_sym_preproc_if_token2] = ACTIONS(2158), [aux_sym_preproc_ifdef_token1] = ACTIONS(2158), [aux_sym_preproc_ifdef_token2] = ACTIONS(2158), [aux_sym_preproc_else_token1] = ACTIONS(2158), [aux_sym_preproc_elif_token1] = ACTIONS(2158), [sym_preproc_directive] = ACTIONS(2158), [anon_sym_LPAREN2] = ACTIONS(2160), [anon_sym_BANG] = ACTIONS(2160), [anon_sym_TILDE] = ACTIONS(2160), [anon_sym_DASH] = ACTIONS(2158), [anon_sym_PLUS] = ACTIONS(2158), [anon_sym_STAR] = ACTIONS(2160), [anon_sym_AMP_AMP] = ACTIONS(2160), [anon_sym_AMP] = ACTIONS(2158), [anon_sym_SEMI] = ACTIONS(2160), [anon_sym_typedef] = ACTIONS(2158), [anon_sym_extern] = ACTIONS(2158), [anon_sym___attribute__] = ACTIONS(2158), [anon_sym_COLON_COLON] = ACTIONS(2160), [anon_sym_LBRACK_LBRACK] = ACTIONS(2160), [anon_sym___declspec] = ACTIONS(2158), [anon_sym___based] = ACTIONS(2158), [anon_sym___cdecl] = ACTIONS(2158), [anon_sym___clrcall] = ACTIONS(2158), [anon_sym___stdcall] = ACTIONS(2158), [anon_sym___fastcall] = ACTIONS(2158), [anon_sym___thiscall] = ACTIONS(2158), [anon_sym___vectorcall] = ACTIONS(2158), [anon_sym_LBRACE] = ACTIONS(2160), [anon_sym_LBRACK] = ACTIONS(2158), [anon_sym_static] = ACTIONS(2158), [anon_sym_register] = ACTIONS(2158), [anon_sym_inline] = ACTIONS(2158), [anon_sym_thread_local] = ACTIONS(2158), [anon_sym_const] = ACTIONS(2158), [anon_sym_volatile] = ACTIONS(2158), [anon_sym_restrict] = ACTIONS(2158), [anon_sym__Atomic] = ACTIONS(2158), [anon_sym_mutable] = ACTIONS(2158), [anon_sym_constexpr] = ACTIONS(2158), [anon_sym_signed] = ACTIONS(2158), [anon_sym_unsigned] = ACTIONS(2158), [anon_sym_long] = ACTIONS(2158), [anon_sym_short] = ACTIONS(2158), [sym_primitive_type] = ACTIONS(2158), [anon_sym_enum] = ACTIONS(2158), [anon_sym_class] = ACTIONS(2158), [anon_sym_struct] = ACTIONS(2158), [anon_sym_union] = ACTIONS(2158), [anon_sym_if] = ACTIONS(2158), [anon_sym_switch] = ACTIONS(2158), [anon_sym_case] = ACTIONS(2158), [anon_sym_default] = ACTIONS(2158), [anon_sym_while] = ACTIONS(2158), [anon_sym_do] = ACTIONS(2158), [anon_sym_for] = ACTIONS(2158), [anon_sym_return] = ACTIONS(2158), [anon_sym_break] = ACTIONS(2158), [anon_sym_continue] = ACTIONS(2158), [anon_sym_goto] = ACTIONS(2158), [anon_sym_DASH_DASH] = ACTIONS(2160), [anon_sym_PLUS_PLUS] = ACTIONS(2160), [anon_sym_sizeof] = ACTIONS(2158), [sym_number_literal] = ACTIONS(2160), [anon_sym_L_SQUOTE] = ACTIONS(2160), [anon_sym_u_SQUOTE] = ACTIONS(2160), [anon_sym_U_SQUOTE] = ACTIONS(2160), [anon_sym_u8_SQUOTE] = ACTIONS(2160), [anon_sym_SQUOTE] = ACTIONS(2160), [anon_sym_L_DQUOTE] = ACTIONS(2160), [anon_sym_u_DQUOTE] = ACTIONS(2160), [anon_sym_U_DQUOTE] = ACTIONS(2160), [anon_sym_u8_DQUOTE] = ACTIONS(2160), [anon_sym_DQUOTE] = ACTIONS(2160), [sym_true] = ACTIONS(2158), [sym_false] = ACTIONS(2158), [sym_null] = ACTIONS(2158), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2158), [anon_sym_virtual] = ACTIONS(2158), [anon_sym_explicit] = ACTIONS(2158), [sym_auto] = ACTIONS(2158), [anon_sym_typename] = ACTIONS(2158), [anon_sym_template] = ACTIONS(2158), [anon_sym_operator] = ACTIONS(2158), [anon_sym_delete] = ACTIONS(2158), [anon_sym_throw] = ACTIONS(2158), [anon_sym_namespace] = ACTIONS(2158), [anon_sym_using] = ACTIONS(2158), [anon_sym_static_assert] = ACTIONS(2158), [anon_sym_co_return] = ACTIONS(2158), [anon_sym_co_yield] = ACTIONS(2158), [anon_sym_try] = ACTIONS(2158), [anon_sym_co_await] = ACTIONS(2158), [anon_sym_new] = ACTIONS(2158), [sym_this] = ACTIONS(2158), [sym_nullptr] = ACTIONS(2158), [sym_raw_string_literal] = ACTIONS(2160), }, [400] = { [sym_identifier] = ACTIONS(2162), [aux_sym_preproc_include_token1] = ACTIONS(2162), [aux_sym_preproc_def_token1] = ACTIONS(2162), [aux_sym_preproc_if_token1] = ACTIONS(2162), [aux_sym_preproc_if_token2] = ACTIONS(2162), [aux_sym_preproc_ifdef_token1] = ACTIONS(2162), [aux_sym_preproc_ifdef_token2] = ACTIONS(2162), [aux_sym_preproc_else_token1] = ACTIONS(2162), [aux_sym_preproc_elif_token1] = ACTIONS(2162), [sym_preproc_directive] = ACTIONS(2162), [anon_sym_LPAREN2] = ACTIONS(2164), [anon_sym_BANG] = ACTIONS(2164), [anon_sym_TILDE] = ACTIONS(2164), [anon_sym_DASH] = ACTIONS(2162), [anon_sym_PLUS] = ACTIONS(2162), [anon_sym_STAR] = ACTIONS(2164), [anon_sym_AMP_AMP] = ACTIONS(2164), [anon_sym_AMP] = ACTIONS(2162), [anon_sym_SEMI] = ACTIONS(2164), [anon_sym_typedef] = ACTIONS(2162), [anon_sym_extern] = ACTIONS(2162), [anon_sym___attribute__] = ACTIONS(2162), [anon_sym_COLON_COLON] = ACTIONS(2164), [anon_sym_LBRACK_LBRACK] = ACTIONS(2164), [anon_sym___declspec] = ACTIONS(2162), [anon_sym___based] = ACTIONS(2162), [anon_sym___cdecl] = ACTIONS(2162), [anon_sym___clrcall] = ACTIONS(2162), [anon_sym___stdcall] = ACTIONS(2162), [anon_sym___fastcall] = ACTIONS(2162), [anon_sym___thiscall] = ACTIONS(2162), [anon_sym___vectorcall] = ACTIONS(2162), [anon_sym_LBRACE] = ACTIONS(2164), [anon_sym_LBRACK] = ACTIONS(2162), [anon_sym_static] = ACTIONS(2162), [anon_sym_register] = ACTIONS(2162), [anon_sym_inline] = ACTIONS(2162), [anon_sym_thread_local] = ACTIONS(2162), [anon_sym_const] = ACTIONS(2162), [anon_sym_volatile] = ACTIONS(2162), [anon_sym_restrict] = ACTIONS(2162), [anon_sym__Atomic] = ACTIONS(2162), [anon_sym_mutable] = ACTIONS(2162), [anon_sym_constexpr] = ACTIONS(2162), [anon_sym_signed] = ACTIONS(2162), [anon_sym_unsigned] = ACTIONS(2162), [anon_sym_long] = ACTIONS(2162), [anon_sym_short] = ACTIONS(2162), [sym_primitive_type] = ACTIONS(2162), [anon_sym_enum] = ACTIONS(2162), [anon_sym_class] = ACTIONS(2162), [anon_sym_struct] = ACTIONS(2162), [anon_sym_union] = ACTIONS(2162), [anon_sym_if] = ACTIONS(2162), [anon_sym_switch] = ACTIONS(2162), [anon_sym_case] = ACTIONS(2162), [anon_sym_default] = ACTIONS(2162), [anon_sym_while] = ACTIONS(2162), [anon_sym_do] = ACTIONS(2162), [anon_sym_for] = ACTIONS(2162), [anon_sym_return] = ACTIONS(2162), [anon_sym_break] = ACTIONS(2162), [anon_sym_continue] = ACTIONS(2162), [anon_sym_goto] = ACTIONS(2162), [anon_sym_DASH_DASH] = ACTIONS(2164), [anon_sym_PLUS_PLUS] = ACTIONS(2164), [anon_sym_sizeof] = ACTIONS(2162), [sym_number_literal] = ACTIONS(2164), [anon_sym_L_SQUOTE] = ACTIONS(2164), [anon_sym_u_SQUOTE] = ACTIONS(2164), [anon_sym_U_SQUOTE] = ACTIONS(2164), [anon_sym_u8_SQUOTE] = ACTIONS(2164), [anon_sym_SQUOTE] = ACTIONS(2164), [anon_sym_L_DQUOTE] = ACTIONS(2164), [anon_sym_u_DQUOTE] = ACTIONS(2164), [anon_sym_U_DQUOTE] = ACTIONS(2164), [anon_sym_u8_DQUOTE] = ACTIONS(2164), [anon_sym_DQUOTE] = ACTIONS(2164), [sym_true] = ACTIONS(2162), [sym_false] = ACTIONS(2162), [sym_null] = ACTIONS(2162), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2162), [anon_sym_virtual] = ACTIONS(2162), [anon_sym_explicit] = ACTIONS(2162), [sym_auto] = ACTIONS(2162), [anon_sym_typename] = ACTIONS(2162), [anon_sym_template] = ACTIONS(2162), [anon_sym_operator] = ACTIONS(2162), [anon_sym_delete] = ACTIONS(2162), [anon_sym_throw] = ACTIONS(2162), [anon_sym_namespace] = ACTIONS(2162), [anon_sym_using] = ACTIONS(2162), [anon_sym_static_assert] = ACTIONS(2162), [anon_sym_co_return] = ACTIONS(2162), [anon_sym_co_yield] = ACTIONS(2162), [anon_sym_try] = ACTIONS(2162), [anon_sym_co_await] = ACTIONS(2162), [anon_sym_new] = ACTIONS(2162), [sym_this] = ACTIONS(2162), [sym_nullptr] = ACTIONS(2162), [sym_raw_string_literal] = ACTIONS(2164), }, [401] = { [sym_identifier] = ACTIONS(2166), [aux_sym_preproc_include_token1] = ACTIONS(2166), [aux_sym_preproc_def_token1] = ACTIONS(2166), [aux_sym_preproc_if_token1] = ACTIONS(2166), [aux_sym_preproc_if_token2] = ACTIONS(2166), [aux_sym_preproc_ifdef_token1] = ACTIONS(2166), [aux_sym_preproc_ifdef_token2] = ACTIONS(2166), [aux_sym_preproc_else_token1] = ACTIONS(2166), [aux_sym_preproc_elif_token1] = ACTIONS(2166), [sym_preproc_directive] = ACTIONS(2166), [anon_sym_LPAREN2] = ACTIONS(2168), [anon_sym_BANG] = ACTIONS(2168), [anon_sym_TILDE] = ACTIONS(2168), [anon_sym_DASH] = ACTIONS(2166), [anon_sym_PLUS] = ACTIONS(2166), [anon_sym_STAR] = ACTIONS(2168), [anon_sym_AMP_AMP] = ACTIONS(2168), [anon_sym_AMP] = ACTIONS(2166), [anon_sym_SEMI] = ACTIONS(2168), [anon_sym_typedef] = ACTIONS(2166), [anon_sym_extern] = ACTIONS(2166), [anon_sym___attribute__] = ACTIONS(2166), [anon_sym_COLON_COLON] = ACTIONS(2168), [anon_sym_LBRACK_LBRACK] = ACTIONS(2168), [anon_sym___declspec] = ACTIONS(2166), [anon_sym___based] = ACTIONS(2166), [anon_sym___cdecl] = ACTIONS(2166), [anon_sym___clrcall] = ACTIONS(2166), [anon_sym___stdcall] = ACTIONS(2166), [anon_sym___fastcall] = ACTIONS(2166), [anon_sym___thiscall] = ACTIONS(2166), [anon_sym___vectorcall] = ACTIONS(2166), [anon_sym_LBRACE] = ACTIONS(2168), [anon_sym_LBRACK] = ACTIONS(2166), [anon_sym_static] = ACTIONS(2166), [anon_sym_register] = ACTIONS(2166), [anon_sym_inline] = ACTIONS(2166), [anon_sym_thread_local] = ACTIONS(2166), [anon_sym_const] = ACTIONS(2166), [anon_sym_volatile] = ACTIONS(2166), [anon_sym_restrict] = ACTIONS(2166), [anon_sym__Atomic] = ACTIONS(2166), [anon_sym_mutable] = ACTIONS(2166), [anon_sym_constexpr] = ACTIONS(2166), [anon_sym_signed] = ACTIONS(2166), [anon_sym_unsigned] = ACTIONS(2166), [anon_sym_long] = ACTIONS(2166), [anon_sym_short] = ACTIONS(2166), [sym_primitive_type] = ACTIONS(2166), [anon_sym_enum] = ACTIONS(2166), [anon_sym_class] = ACTIONS(2166), [anon_sym_struct] = ACTIONS(2166), [anon_sym_union] = ACTIONS(2166), [anon_sym_if] = ACTIONS(2166), [anon_sym_switch] = ACTIONS(2166), [anon_sym_case] = ACTIONS(2166), [anon_sym_default] = ACTIONS(2166), [anon_sym_while] = ACTIONS(2166), [anon_sym_do] = ACTIONS(2166), [anon_sym_for] = ACTIONS(2166), [anon_sym_return] = ACTIONS(2166), [anon_sym_break] = ACTIONS(2166), [anon_sym_continue] = ACTIONS(2166), [anon_sym_goto] = ACTIONS(2166), [anon_sym_DASH_DASH] = ACTIONS(2168), [anon_sym_PLUS_PLUS] = ACTIONS(2168), [anon_sym_sizeof] = ACTIONS(2166), [sym_number_literal] = ACTIONS(2168), [anon_sym_L_SQUOTE] = ACTIONS(2168), [anon_sym_u_SQUOTE] = ACTIONS(2168), [anon_sym_U_SQUOTE] = ACTIONS(2168), [anon_sym_u8_SQUOTE] = ACTIONS(2168), [anon_sym_SQUOTE] = ACTIONS(2168), [anon_sym_L_DQUOTE] = ACTIONS(2168), [anon_sym_u_DQUOTE] = ACTIONS(2168), [anon_sym_U_DQUOTE] = ACTIONS(2168), [anon_sym_u8_DQUOTE] = ACTIONS(2168), [anon_sym_DQUOTE] = ACTIONS(2168), [sym_true] = ACTIONS(2166), [sym_false] = ACTIONS(2166), [sym_null] = ACTIONS(2166), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2166), [anon_sym_virtual] = ACTIONS(2166), [anon_sym_explicit] = ACTIONS(2166), [sym_auto] = ACTIONS(2166), [anon_sym_typename] = ACTIONS(2166), [anon_sym_template] = ACTIONS(2166), [anon_sym_operator] = ACTIONS(2166), [anon_sym_delete] = ACTIONS(2166), [anon_sym_throw] = ACTIONS(2166), [anon_sym_namespace] = ACTIONS(2166), [anon_sym_using] = ACTIONS(2166), [anon_sym_static_assert] = ACTIONS(2166), [anon_sym_co_return] = ACTIONS(2166), [anon_sym_co_yield] = ACTIONS(2166), [anon_sym_try] = ACTIONS(2166), [anon_sym_co_await] = ACTIONS(2166), [anon_sym_new] = ACTIONS(2166), [sym_this] = ACTIONS(2166), [sym_nullptr] = ACTIONS(2166), [sym_raw_string_literal] = ACTIONS(2168), }, [402] = { [sym_identifier] = ACTIONS(2170), [aux_sym_preproc_include_token1] = ACTIONS(2170), [aux_sym_preproc_def_token1] = ACTIONS(2170), [aux_sym_preproc_if_token1] = ACTIONS(2170), [aux_sym_preproc_if_token2] = ACTIONS(2170), [aux_sym_preproc_ifdef_token1] = ACTIONS(2170), [aux_sym_preproc_ifdef_token2] = ACTIONS(2170), [aux_sym_preproc_else_token1] = ACTIONS(2170), [aux_sym_preproc_elif_token1] = ACTIONS(2170), [sym_preproc_directive] = ACTIONS(2170), [anon_sym_LPAREN2] = ACTIONS(2172), [anon_sym_BANG] = ACTIONS(2172), [anon_sym_TILDE] = ACTIONS(2172), [anon_sym_DASH] = ACTIONS(2170), [anon_sym_PLUS] = ACTIONS(2170), [anon_sym_STAR] = ACTIONS(2172), [anon_sym_AMP_AMP] = ACTIONS(2172), [anon_sym_AMP] = ACTIONS(2170), [anon_sym_SEMI] = ACTIONS(2172), [anon_sym_typedef] = ACTIONS(2170), [anon_sym_extern] = ACTIONS(2170), [anon_sym___attribute__] = ACTIONS(2170), [anon_sym_COLON_COLON] = ACTIONS(2172), [anon_sym_LBRACK_LBRACK] = ACTIONS(2172), [anon_sym___declspec] = ACTIONS(2170), [anon_sym___based] = ACTIONS(2170), [anon_sym___cdecl] = ACTIONS(2170), [anon_sym___clrcall] = ACTIONS(2170), [anon_sym___stdcall] = ACTIONS(2170), [anon_sym___fastcall] = ACTIONS(2170), [anon_sym___thiscall] = ACTIONS(2170), [anon_sym___vectorcall] = ACTIONS(2170), [anon_sym_LBRACE] = ACTIONS(2172), [anon_sym_LBRACK] = ACTIONS(2170), [anon_sym_static] = ACTIONS(2170), [anon_sym_register] = ACTIONS(2170), [anon_sym_inline] = ACTIONS(2170), [anon_sym_thread_local] = ACTIONS(2170), [anon_sym_const] = ACTIONS(2170), [anon_sym_volatile] = ACTIONS(2170), [anon_sym_restrict] = ACTIONS(2170), [anon_sym__Atomic] = ACTIONS(2170), [anon_sym_mutable] = ACTIONS(2170), [anon_sym_constexpr] = ACTIONS(2170), [anon_sym_signed] = ACTIONS(2170), [anon_sym_unsigned] = ACTIONS(2170), [anon_sym_long] = ACTIONS(2170), [anon_sym_short] = ACTIONS(2170), [sym_primitive_type] = ACTIONS(2170), [anon_sym_enum] = ACTIONS(2170), [anon_sym_class] = ACTIONS(2170), [anon_sym_struct] = ACTIONS(2170), [anon_sym_union] = ACTIONS(2170), [anon_sym_if] = ACTIONS(2170), [anon_sym_switch] = ACTIONS(2170), [anon_sym_case] = ACTIONS(2170), [anon_sym_default] = ACTIONS(2170), [anon_sym_while] = ACTIONS(2170), [anon_sym_do] = ACTIONS(2170), [anon_sym_for] = ACTIONS(2170), [anon_sym_return] = ACTIONS(2170), [anon_sym_break] = ACTIONS(2170), [anon_sym_continue] = ACTIONS(2170), [anon_sym_goto] = ACTIONS(2170), [anon_sym_DASH_DASH] = ACTIONS(2172), [anon_sym_PLUS_PLUS] = ACTIONS(2172), [anon_sym_sizeof] = ACTIONS(2170), [sym_number_literal] = ACTIONS(2172), [anon_sym_L_SQUOTE] = ACTIONS(2172), [anon_sym_u_SQUOTE] = ACTIONS(2172), [anon_sym_U_SQUOTE] = ACTIONS(2172), [anon_sym_u8_SQUOTE] = ACTIONS(2172), [anon_sym_SQUOTE] = ACTIONS(2172), [anon_sym_L_DQUOTE] = ACTIONS(2172), [anon_sym_u_DQUOTE] = ACTIONS(2172), [anon_sym_U_DQUOTE] = ACTIONS(2172), [anon_sym_u8_DQUOTE] = ACTIONS(2172), [anon_sym_DQUOTE] = ACTIONS(2172), [sym_true] = ACTIONS(2170), [sym_false] = ACTIONS(2170), [sym_null] = ACTIONS(2170), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2170), [anon_sym_virtual] = ACTIONS(2170), [anon_sym_explicit] = ACTIONS(2170), [sym_auto] = ACTIONS(2170), [anon_sym_typename] = ACTIONS(2170), [anon_sym_template] = ACTIONS(2170), [anon_sym_operator] = ACTIONS(2170), [anon_sym_delete] = ACTIONS(2170), [anon_sym_throw] = ACTIONS(2170), [anon_sym_namespace] = ACTIONS(2170), [anon_sym_using] = ACTIONS(2170), [anon_sym_static_assert] = ACTIONS(2170), [anon_sym_co_return] = ACTIONS(2170), [anon_sym_co_yield] = ACTIONS(2170), [anon_sym_try] = ACTIONS(2170), [anon_sym_co_await] = ACTIONS(2170), [anon_sym_new] = ACTIONS(2170), [sym_this] = ACTIONS(2170), [sym_nullptr] = ACTIONS(2170), [sym_raw_string_literal] = ACTIONS(2172), }, [403] = { [sym_identifier] = ACTIONS(2174), [aux_sym_preproc_include_token1] = ACTIONS(2174), [aux_sym_preproc_def_token1] = ACTIONS(2174), [aux_sym_preproc_if_token1] = ACTIONS(2174), [aux_sym_preproc_if_token2] = ACTIONS(2174), [aux_sym_preproc_ifdef_token1] = ACTIONS(2174), [aux_sym_preproc_ifdef_token2] = ACTIONS(2174), [aux_sym_preproc_else_token1] = ACTIONS(2174), [aux_sym_preproc_elif_token1] = ACTIONS(2174), [sym_preproc_directive] = ACTIONS(2174), [anon_sym_LPAREN2] = ACTIONS(2176), [anon_sym_BANG] = ACTIONS(2176), [anon_sym_TILDE] = ACTIONS(2176), [anon_sym_DASH] = ACTIONS(2174), [anon_sym_PLUS] = ACTIONS(2174), [anon_sym_STAR] = ACTIONS(2176), [anon_sym_AMP_AMP] = ACTIONS(2176), [anon_sym_AMP] = ACTIONS(2174), [anon_sym_SEMI] = ACTIONS(2176), [anon_sym_typedef] = ACTIONS(2174), [anon_sym_extern] = ACTIONS(2174), [anon_sym___attribute__] = ACTIONS(2174), [anon_sym_COLON_COLON] = ACTIONS(2176), [anon_sym_LBRACK_LBRACK] = ACTIONS(2176), [anon_sym___declspec] = ACTIONS(2174), [anon_sym___based] = ACTIONS(2174), [anon_sym___cdecl] = ACTIONS(2174), [anon_sym___clrcall] = ACTIONS(2174), [anon_sym___stdcall] = ACTIONS(2174), [anon_sym___fastcall] = ACTIONS(2174), [anon_sym___thiscall] = ACTIONS(2174), [anon_sym___vectorcall] = ACTIONS(2174), [anon_sym_LBRACE] = ACTIONS(2176), [anon_sym_LBRACK] = ACTIONS(2174), [anon_sym_static] = ACTIONS(2174), [anon_sym_register] = ACTIONS(2174), [anon_sym_inline] = ACTIONS(2174), [anon_sym_thread_local] = ACTIONS(2174), [anon_sym_const] = ACTIONS(2174), [anon_sym_volatile] = ACTIONS(2174), [anon_sym_restrict] = ACTIONS(2174), [anon_sym__Atomic] = ACTIONS(2174), [anon_sym_mutable] = ACTIONS(2174), [anon_sym_constexpr] = ACTIONS(2174), [anon_sym_signed] = ACTIONS(2174), [anon_sym_unsigned] = ACTIONS(2174), [anon_sym_long] = ACTIONS(2174), [anon_sym_short] = ACTIONS(2174), [sym_primitive_type] = ACTIONS(2174), [anon_sym_enum] = ACTIONS(2174), [anon_sym_class] = ACTIONS(2174), [anon_sym_struct] = ACTIONS(2174), [anon_sym_union] = ACTIONS(2174), [anon_sym_if] = ACTIONS(2174), [anon_sym_switch] = ACTIONS(2174), [anon_sym_case] = ACTIONS(2174), [anon_sym_default] = ACTIONS(2174), [anon_sym_while] = ACTIONS(2174), [anon_sym_do] = ACTIONS(2174), [anon_sym_for] = ACTIONS(2174), [anon_sym_return] = ACTIONS(2174), [anon_sym_break] = ACTIONS(2174), [anon_sym_continue] = ACTIONS(2174), [anon_sym_goto] = ACTIONS(2174), [anon_sym_DASH_DASH] = ACTIONS(2176), [anon_sym_PLUS_PLUS] = ACTIONS(2176), [anon_sym_sizeof] = ACTIONS(2174), [sym_number_literal] = ACTIONS(2176), [anon_sym_L_SQUOTE] = ACTIONS(2176), [anon_sym_u_SQUOTE] = ACTIONS(2176), [anon_sym_U_SQUOTE] = ACTIONS(2176), [anon_sym_u8_SQUOTE] = ACTIONS(2176), [anon_sym_SQUOTE] = ACTIONS(2176), [anon_sym_L_DQUOTE] = ACTIONS(2176), [anon_sym_u_DQUOTE] = ACTIONS(2176), [anon_sym_U_DQUOTE] = ACTIONS(2176), [anon_sym_u8_DQUOTE] = ACTIONS(2176), [anon_sym_DQUOTE] = ACTIONS(2176), [sym_true] = ACTIONS(2174), [sym_false] = ACTIONS(2174), [sym_null] = ACTIONS(2174), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2174), [anon_sym_virtual] = ACTIONS(2174), [anon_sym_explicit] = ACTIONS(2174), [sym_auto] = ACTIONS(2174), [anon_sym_typename] = ACTIONS(2174), [anon_sym_template] = ACTIONS(2174), [anon_sym_operator] = ACTIONS(2174), [anon_sym_delete] = ACTIONS(2174), [anon_sym_throw] = ACTIONS(2174), [anon_sym_namespace] = ACTIONS(2174), [anon_sym_using] = ACTIONS(2174), [anon_sym_static_assert] = ACTIONS(2174), [anon_sym_co_return] = ACTIONS(2174), [anon_sym_co_yield] = ACTIONS(2174), [anon_sym_try] = ACTIONS(2174), [anon_sym_co_await] = ACTIONS(2174), [anon_sym_new] = ACTIONS(2174), [sym_this] = ACTIONS(2174), [sym_nullptr] = ACTIONS(2174), [sym_raw_string_literal] = ACTIONS(2176), }, [404] = { [sym_identifier] = ACTIONS(1756), [aux_sym_preproc_include_token1] = ACTIONS(1756), [aux_sym_preproc_def_token1] = ACTIONS(1756), [aux_sym_preproc_if_token1] = ACTIONS(1756), [aux_sym_preproc_if_token2] = ACTIONS(1756), [aux_sym_preproc_ifdef_token1] = ACTIONS(1756), [aux_sym_preproc_ifdef_token2] = ACTIONS(1756), [sym_preproc_directive] = ACTIONS(1756), [anon_sym_LPAREN2] = ACTIONS(1758), [anon_sym_BANG] = ACTIONS(1758), [anon_sym_TILDE] = ACTIONS(1758), [anon_sym_DASH] = ACTIONS(1756), [anon_sym_PLUS] = ACTIONS(1756), [anon_sym_STAR] = ACTIONS(1758), [anon_sym_AMP_AMP] = ACTIONS(1758), [anon_sym_AMP] = ACTIONS(1756), [anon_sym_SEMI] = ACTIONS(1758), [anon_sym_typedef] = ACTIONS(1756), [anon_sym_extern] = ACTIONS(1756), [anon_sym___attribute__] = ACTIONS(1756), [anon_sym_COLON_COLON] = ACTIONS(1758), [anon_sym_LBRACK_LBRACK] = ACTIONS(1758), [anon_sym___declspec] = ACTIONS(1756), [anon_sym___based] = ACTIONS(1756), [anon_sym___cdecl] = ACTIONS(1756), [anon_sym___clrcall] = ACTIONS(1756), [anon_sym___stdcall] = ACTIONS(1756), [anon_sym___fastcall] = ACTIONS(1756), [anon_sym___thiscall] = ACTIONS(1756), [anon_sym___vectorcall] = ACTIONS(1756), [anon_sym_LBRACE] = ACTIONS(1758), [anon_sym_LBRACK] = ACTIONS(1756), [anon_sym_static] = ACTIONS(1756), [anon_sym_register] = ACTIONS(1756), [anon_sym_inline] = ACTIONS(1756), [anon_sym_thread_local] = ACTIONS(1756), [anon_sym_const] = ACTIONS(1756), [anon_sym_volatile] = ACTIONS(1756), [anon_sym_restrict] = ACTIONS(1756), [anon_sym__Atomic] = ACTIONS(1756), [anon_sym_mutable] = ACTIONS(1756), [anon_sym_constexpr] = ACTIONS(1756), [anon_sym_signed] = ACTIONS(1756), [anon_sym_unsigned] = ACTIONS(1756), [anon_sym_long] = ACTIONS(1756), [anon_sym_short] = ACTIONS(1756), [sym_primitive_type] = ACTIONS(1756), [anon_sym_enum] = ACTIONS(1756), [anon_sym_class] = ACTIONS(1756), [anon_sym_struct] = ACTIONS(1756), [anon_sym_union] = ACTIONS(1756), [anon_sym_if] = ACTIONS(1756), [anon_sym_else] = ACTIONS(1756), [anon_sym_switch] = ACTIONS(1756), [anon_sym_case] = ACTIONS(1756), [anon_sym_default] = ACTIONS(1756), [anon_sym_while] = ACTIONS(1756), [anon_sym_do] = ACTIONS(1756), [anon_sym_for] = ACTIONS(1756), [anon_sym_return] = ACTIONS(1756), [anon_sym_break] = ACTIONS(1756), [anon_sym_continue] = ACTIONS(1756), [anon_sym_goto] = ACTIONS(1756), [anon_sym_DASH_DASH] = ACTIONS(1758), [anon_sym_PLUS_PLUS] = ACTIONS(1758), [anon_sym_sizeof] = ACTIONS(1756), [sym_number_literal] = ACTIONS(1758), [anon_sym_L_SQUOTE] = ACTIONS(1758), [anon_sym_u_SQUOTE] = ACTIONS(1758), [anon_sym_U_SQUOTE] = ACTIONS(1758), [anon_sym_u8_SQUOTE] = ACTIONS(1758), [anon_sym_SQUOTE] = ACTIONS(1758), [anon_sym_L_DQUOTE] = ACTIONS(1758), [anon_sym_u_DQUOTE] = ACTIONS(1758), [anon_sym_U_DQUOTE] = ACTIONS(1758), [anon_sym_u8_DQUOTE] = ACTIONS(1758), [anon_sym_DQUOTE] = ACTIONS(1758), [sym_true] = ACTIONS(1756), [sym_false] = ACTIONS(1756), [sym_null] = ACTIONS(1756), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1756), [anon_sym_virtual] = ACTIONS(1756), [anon_sym_explicit] = ACTIONS(1756), [sym_auto] = ACTIONS(1756), [anon_sym_typename] = ACTIONS(1756), [anon_sym_template] = ACTIONS(1756), [anon_sym_operator] = ACTIONS(1756), [anon_sym_delete] = ACTIONS(1756), [anon_sym_throw] = ACTIONS(1756), [anon_sym_namespace] = ACTIONS(1756), [anon_sym_using] = ACTIONS(1756), [anon_sym_static_assert] = ACTIONS(1756), [anon_sym_co_return] = ACTIONS(1756), [anon_sym_co_yield] = ACTIONS(1756), [anon_sym_try] = ACTIONS(1756), [anon_sym_catch] = ACTIONS(1756), [anon_sym_co_await] = ACTIONS(1756), [anon_sym_new] = ACTIONS(1756), [sym_this] = ACTIONS(1756), [sym_nullptr] = ACTIONS(1756), [sym_raw_string_literal] = ACTIONS(1758), }, [405] = { [sym_identifier] = ACTIONS(2178), [aux_sym_preproc_include_token1] = ACTIONS(2178), [aux_sym_preproc_def_token1] = ACTIONS(2178), [aux_sym_preproc_if_token1] = ACTIONS(2178), [aux_sym_preproc_if_token2] = ACTIONS(2178), [aux_sym_preproc_ifdef_token1] = ACTIONS(2178), [aux_sym_preproc_ifdef_token2] = ACTIONS(2178), [aux_sym_preproc_else_token1] = ACTIONS(2178), [aux_sym_preproc_elif_token1] = ACTIONS(2178), [sym_preproc_directive] = ACTIONS(2178), [anon_sym_LPAREN2] = ACTIONS(2180), [anon_sym_BANG] = ACTIONS(2180), [anon_sym_TILDE] = ACTIONS(2180), [anon_sym_DASH] = ACTIONS(2178), [anon_sym_PLUS] = ACTIONS(2178), [anon_sym_STAR] = ACTIONS(2180), [anon_sym_AMP_AMP] = ACTIONS(2180), [anon_sym_AMP] = ACTIONS(2178), [anon_sym_SEMI] = ACTIONS(2180), [anon_sym_typedef] = ACTIONS(2178), [anon_sym_extern] = ACTIONS(2178), [anon_sym___attribute__] = ACTIONS(2178), [anon_sym_COLON_COLON] = ACTIONS(2180), [anon_sym_LBRACK_LBRACK] = ACTIONS(2180), [anon_sym___declspec] = ACTIONS(2178), [anon_sym___based] = ACTIONS(2178), [anon_sym___cdecl] = ACTIONS(2178), [anon_sym___clrcall] = ACTIONS(2178), [anon_sym___stdcall] = ACTIONS(2178), [anon_sym___fastcall] = ACTIONS(2178), [anon_sym___thiscall] = ACTIONS(2178), [anon_sym___vectorcall] = ACTIONS(2178), [anon_sym_LBRACE] = ACTIONS(2180), [anon_sym_LBRACK] = ACTIONS(2178), [anon_sym_static] = ACTIONS(2178), [anon_sym_register] = ACTIONS(2178), [anon_sym_inline] = ACTIONS(2178), [anon_sym_thread_local] = ACTIONS(2178), [anon_sym_const] = ACTIONS(2178), [anon_sym_volatile] = ACTIONS(2178), [anon_sym_restrict] = ACTIONS(2178), [anon_sym__Atomic] = ACTIONS(2178), [anon_sym_mutable] = ACTIONS(2178), [anon_sym_constexpr] = ACTIONS(2178), [anon_sym_signed] = ACTIONS(2178), [anon_sym_unsigned] = ACTIONS(2178), [anon_sym_long] = ACTIONS(2178), [anon_sym_short] = ACTIONS(2178), [sym_primitive_type] = ACTIONS(2178), [anon_sym_enum] = ACTIONS(2178), [anon_sym_class] = ACTIONS(2178), [anon_sym_struct] = ACTIONS(2178), [anon_sym_union] = ACTIONS(2178), [anon_sym_if] = ACTIONS(2178), [anon_sym_switch] = ACTIONS(2178), [anon_sym_case] = ACTIONS(2178), [anon_sym_default] = ACTIONS(2178), [anon_sym_while] = ACTIONS(2178), [anon_sym_do] = ACTIONS(2178), [anon_sym_for] = ACTIONS(2178), [anon_sym_return] = ACTIONS(2178), [anon_sym_break] = ACTIONS(2178), [anon_sym_continue] = ACTIONS(2178), [anon_sym_goto] = ACTIONS(2178), [anon_sym_DASH_DASH] = ACTIONS(2180), [anon_sym_PLUS_PLUS] = ACTIONS(2180), [anon_sym_sizeof] = ACTIONS(2178), [sym_number_literal] = ACTIONS(2180), [anon_sym_L_SQUOTE] = ACTIONS(2180), [anon_sym_u_SQUOTE] = ACTIONS(2180), [anon_sym_U_SQUOTE] = ACTIONS(2180), [anon_sym_u8_SQUOTE] = ACTIONS(2180), [anon_sym_SQUOTE] = ACTIONS(2180), [anon_sym_L_DQUOTE] = ACTIONS(2180), [anon_sym_u_DQUOTE] = ACTIONS(2180), [anon_sym_U_DQUOTE] = ACTIONS(2180), [anon_sym_u8_DQUOTE] = ACTIONS(2180), [anon_sym_DQUOTE] = ACTIONS(2180), [sym_true] = ACTIONS(2178), [sym_false] = ACTIONS(2178), [sym_null] = ACTIONS(2178), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2178), [anon_sym_virtual] = ACTIONS(2178), [anon_sym_explicit] = ACTIONS(2178), [sym_auto] = ACTIONS(2178), [anon_sym_typename] = ACTIONS(2178), [anon_sym_template] = ACTIONS(2178), [anon_sym_operator] = ACTIONS(2178), [anon_sym_delete] = ACTIONS(2178), [anon_sym_throw] = ACTIONS(2178), [anon_sym_namespace] = ACTIONS(2178), [anon_sym_using] = ACTIONS(2178), [anon_sym_static_assert] = ACTIONS(2178), [anon_sym_co_return] = ACTIONS(2178), [anon_sym_co_yield] = ACTIONS(2178), [anon_sym_try] = ACTIONS(2178), [anon_sym_co_await] = ACTIONS(2178), [anon_sym_new] = ACTIONS(2178), [sym_this] = ACTIONS(2178), [sym_nullptr] = ACTIONS(2178), [sym_raw_string_literal] = ACTIONS(2180), }, [406] = { [sym_identifier] = ACTIONS(2182), [aux_sym_preproc_include_token1] = ACTIONS(2182), [aux_sym_preproc_def_token1] = ACTIONS(2182), [aux_sym_preproc_if_token1] = ACTIONS(2182), [aux_sym_preproc_if_token2] = ACTIONS(2182), [aux_sym_preproc_ifdef_token1] = ACTIONS(2182), [aux_sym_preproc_ifdef_token2] = ACTIONS(2182), [aux_sym_preproc_else_token1] = ACTIONS(2182), [aux_sym_preproc_elif_token1] = ACTIONS(2182), [sym_preproc_directive] = ACTIONS(2182), [anon_sym_LPAREN2] = ACTIONS(2184), [anon_sym_BANG] = ACTIONS(2184), [anon_sym_TILDE] = ACTIONS(2184), [anon_sym_DASH] = ACTIONS(2182), [anon_sym_PLUS] = ACTIONS(2182), [anon_sym_STAR] = ACTIONS(2184), [anon_sym_AMP_AMP] = ACTIONS(2184), [anon_sym_AMP] = ACTIONS(2182), [anon_sym_SEMI] = ACTIONS(2184), [anon_sym_typedef] = ACTIONS(2182), [anon_sym_extern] = ACTIONS(2182), [anon_sym___attribute__] = ACTIONS(2182), [anon_sym_COLON_COLON] = ACTIONS(2184), [anon_sym_LBRACK_LBRACK] = ACTIONS(2184), [anon_sym___declspec] = ACTIONS(2182), [anon_sym___based] = ACTIONS(2182), [anon_sym___cdecl] = ACTIONS(2182), [anon_sym___clrcall] = ACTIONS(2182), [anon_sym___stdcall] = ACTIONS(2182), [anon_sym___fastcall] = ACTIONS(2182), [anon_sym___thiscall] = ACTIONS(2182), [anon_sym___vectorcall] = ACTIONS(2182), [anon_sym_LBRACE] = ACTIONS(2184), [anon_sym_LBRACK] = ACTIONS(2182), [anon_sym_static] = ACTIONS(2182), [anon_sym_register] = ACTIONS(2182), [anon_sym_inline] = ACTIONS(2182), [anon_sym_thread_local] = ACTIONS(2182), [anon_sym_const] = ACTIONS(2182), [anon_sym_volatile] = ACTIONS(2182), [anon_sym_restrict] = ACTIONS(2182), [anon_sym__Atomic] = ACTIONS(2182), [anon_sym_mutable] = ACTIONS(2182), [anon_sym_constexpr] = ACTIONS(2182), [anon_sym_signed] = ACTIONS(2182), [anon_sym_unsigned] = ACTIONS(2182), [anon_sym_long] = ACTIONS(2182), [anon_sym_short] = ACTIONS(2182), [sym_primitive_type] = ACTIONS(2182), [anon_sym_enum] = ACTIONS(2182), [anon_sym_class] = ACTIONS(2182), [anon_sym_struct] = ACTIONS(2182), [anon_sym_union] = ACTIONS(2182), [anon_sym_if] = ACTIONS(2182), [anon_sym_switch] = ACTIONS(2182), [anon_sym_case] = ACTIONS(2182), [anon_sym_default] = ACTIONS(2182), [anon_sym_while] = ACTIONS(2182), [anon_sym_do] = ACTIONS(2182), [anon_sym_for] = ACTIONS(2182), [anon_sym_return] = ACTIONS(2182), [anon_sym_break] = ACTIONS(2182), [anon_sym_continue] = ACTIONS(2182), [anon_sym_goto] = ACTIONS(2182), [anon_sym_DASH_DASH] = ACTIONS(2184), [anon_sym_PLUS_PLUS] = ACTIONS(2184), [anon_sym_sizeof] = ACTIONS(2182), [sym_number_literal] = ACTIONS(2184), [anon_sym_L_SQUOTE] = ACTIONS(2184), [anon_sym_u_SQUOTE] = ACTIONS(2184), [anon_sym_U_SQUOTE] = ACTIONS(2184), [anon_sym_u8_SQUOTE] = ACTIONS(2184), [anon_sym_SQUOTE] = ACTIONS(2184), [anon_sym_L_DQUOTE] = ACTIONS(2184), [anon_sym_u_DQUOTE] = ACTIONS(2184), [anon_sym_U_DQUOTE] = ACTIONS(2184), [anon_sym_u8_DQUOTE] = ACTIONS(2184), [anon_sym_DQUOTE] = ACTIONS(2184), [sym_true] = ACTIONS(2182), [sym_false] = ACTIONS(2182), [sym_null] = ACTIONS(2182), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2182), [anon_sym_virtual] = ACTIONS(2182), [anon_sym_explicit] = ACTIONS(2182), [sym_auto] = ACTIONS(2182), [anon_sym_typename] = ACTIONS(2182), [anon_sym_template] = ACTIONS(2182), [anon_sym_operator] = ACTIONS(2182), [anon_sym_delete] = ACTIONS(2182), [anon_sym_throw] = ACTIONS(2182), [anon_sym_namespace] = ACTIONS(2182), [anon_sym_using] = ACTIONS(2182), [anon_sym_static_assert] = ACTIONS(2182), [anon_sym_co_return] = ACTIONS(2182), [anon_sym_co_yield] = ACTIONS(2182), [anon_sym_try] = ACTIONS(2182), [anon_sym_co_await] = ACTIONS(2182), [anon_sym_new] = ACTIONS(2182), [sym_this] = ACTIONS(2182), [sym_nullptr] = ACTIONS(2182), [sym_raw_string_literal] = ACTIONS(2184), }, [407] = { [sym_identifier] = ACTIONS(2186), [aux_sym_preproc_include_token1] = ACTIONS(2186), [aux_sym_preproc_def_token1] = ACTIONS(2186), [aux_sym_preproc_if_token1] = ACTIONS(2186), [aux_sym_preproc_if_token2] = ACTIONS(2186), [aux_sym_preproc_ifdef_token1] = ACTIONS(2186), [aux_sym_preproc_ifdef_token2] = ACTIONS(2186), [aux_sym_preproc_else_token1] = ACTIONS(2186), [aux_sym_preproc_elif_token1] = ACTIONS(2186), [sym_preproc_directive] = ACTIONS(2186), [anon_sym_LPAREN2] = ACTIONS(2188), [anon_sym_BANG] = ACTIONS(2188), [anon_sym_TILDE] = ACTIONS(2188), [anon_sym_DASH] = ACTIONS(2186), [anon_sym_PLUS] = ACTIONS(2186), [anon_sym_STAR] = ACTIONS(2188), [anon_sym_AMP_AMP] = ACTIONS(2188), [anon_sym_AMP] = ACTIONS(2186), [anon_sym_SEMI] = ACTIONS(2188), [anon_sym_typedef] = ACTIONS(2186), [anon_sym_extern] = ACTIONS(2186), [anon_sym___attribute__] = ACTIONS(2186), [anon_sym_COLON_COLON] = ACTIONS(2188), [anon_sym_LBRACK_LBRACK] = ACTIONS(2188), [anon_sym___declspec] = ACTIONS(2186), [anon_sym___based] = ACTIONS(2186), [anon_sym___cdecl] = ACTIONS(2186), [anon_sym___clrcall] = ACTIONS(2186), [anon_sym___stdcall] = ACTIONS(2186), [anon_sym___fastcall] = ACTIONS(2186), [anon_sym___thiscall] = ACTIONS(2186), [anon_sym___vectorcall] = ACTIONS(2186), [anon_sym_LBRACE] = ACTIONS(2188), [anon_sym_LBRACK] = ACTIONS(2186), [anon_sym_static] = ACTIONS(2186), [anon_sym_register] = ACTIONS(2186), [anon_sym_inline] = ACTIONS(2186), [anon_sym_thread_local] = ACTIONS(2186), [anon_sym_const] = ACTIONS(2186), [anon_sym_volatile] = ACTIONS(2186), [anon_sym_restrict] = ACTIONS(2186), [anon_sym__Atomic] = ACTIONS(2186), [anon_sym_mutable] = ACTIONS(2186), [anon_sym_constexpr] = ACTIONS(2186), [anon_sym_signed] = ACTIONS(2186), [anon_sym_unsigned] = ACTIONS(2186), [anon_sym_long] = ACTIONS(2186), [anon_sym_short] = ACTIONS(2186), [sym_primitive_type] = ACTIONS(2186), [anon_sym_enum] = ACTIONS(2186), [anon_sym_class] = ACTIONS(2186), [anon_sym_struct] = ACTIONS(2186), [anon_sym_union] = ACTIONS(2186), [anon_sym_if] = ACTIONS(2186), [anon_sym_switch] = ACTIONS(2186), [anon_sym_case] = ACTIONS(2186), [anon_sym_default] = ACTIONS(2186), [anon_sym_while] = ACTIONS(2186), [anon_sym_do] = ACTIONS(2186), [anon_sym_for] = ACTIONS(2186), [anon_sym_return] = ACTIONS(2186), [anon_sym_break] = ACTIONS(2186), [anon_sym_continue] = ACTIONS(2186), [anon_sym_goto] = ACTIONS(2186), [anon_sym_DASH_DASH] = ACTIONS(2188), [anon_sym_PLUS_PLUS] = ACTIONS(2188), [anon_sym_sizeof] = ACTIONS(2186), [sym_number_literal] = ACTIONS(2188), [anon_sym_L_SQUOTE] = ACTIONS(2188), [anon_sym_u_SQUOTE] = ACTIONS(2188), [anon_sym_U_SQUOTE] = ACTIONS(2188), [anon_sym_u8_SQUOTE] = ACTIONS(2188), [anon_sym_SQUOTE] = ACTIONS(2188), [anon_sym_L_DQUOTE] = ACTIONS(2188), [anon_sym_u_DQUOTE] = ACTIONS(2188), [anon_sym_U_DQUOTE] = ACTIONS(2188), [anon_sym_u8_DQUOTE] = ACTIONS(2188), [anon_sym_DQUOTE] = ACTIONS(2188), [sym_true] = ACTIONS(2186), [sym_false] = ACTIONS(2186), [sym_null] = ACTIONS(2186), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2186), [anon_sym_virtual] = ACTIONS(2186), [anon_sym_explicit] = ACTIONS(2186), [sym_auto] = ACTIONS(2186), [anon_sym_typename] = ACTIONS(2186), [anon_sym_template] = ACTIONS(2186), [anon_sym_operator] = ACTIONS(2186), [anon_sym_delete] = ACTIONS(2186), [anon_sym_throw] = ACTIONS(2186), [anon_sym_namespace] = ACTIONS(2186), [anon_sym_using] = ACTIONS(2186), [anon_sym_static_assert] = ACTIONS(2186), [anon_sym_co_return] = ACTIONS(2186), [anon_sym_co_yield] = ACTIONS(2186), [anon_sym_try] = ACTIONS(2186), [anon_sym_co_await] = ACTIONS(2186), [anon_sym_new] = ACTIONS(2186), [sym_this] = ACTIONS(2186), [sym_nullptr] = ACTIONS(2186), [sym_raw_string_literal] = ACTIONS(2188), }, [408] = { [sym_identifier] = ACTIONS(2190), [aux_sym_preproc_include_token1] = ACTIONS(2190), [aux_sym_preproc_def_token1] = ACTIONS(2190), [aux_sym_preproc_if_token1] = ACTIONS(2190), [aux_sym_preproc_if_token2] = ACTIONS(2190), [aux_sym_preproc_ifdef_token1] = ACTIONS(2190), [aux_sym_preproc_ifdef_token2] = ACTIONS(2190), [aux_sym_preproc_else_token1] = ACTIONS(2190), [aux_sym_preproc_elif_token1] = ACTIONS(2190), [sym_preproc_directive] = ACTIONS(2190), [anon_sym_LPAREN2] = ACTIONS(2192), [anon_sym_BANG] = ACTIONS(2192), [anon_sym_TILDE] = ACTIONS(2192), [anon_sym_DASH] = ACTIONS(2190), [anon_sym_PLUS] = ACTIONS(2190), [anon_sym_STAR] = ACTIONS(2192), [anon_sym_AMP_AMP] = ACTIONS(2192), [anon_sym_AMP] = ACTIONS(2190), [anon_sym_SEMI] = ACTIONS(2192), [anon_sym_typedef] = ACTIONS(2190), [anon_sym_extern] = ACTIONS(2190), [anon_sym___attribute__] = ACTIONS(2190), [anon_sym_COLON_COLON] = ACTIONS(2192), [anon_sym_LBRACK_LBRACK] = ACTIONS(2192), [anon_sym___declspec] = ACTIONS(2190), [anon_sym___based] = ACTIONS(2190), [anon_sym___cdecl] = ACTIONS(2190), [anon_sym___clrcall] = ACTIONS(2190), [anon_sym___stdcall] = ACTIONS(2190), [anon_sym___fastcall] = ACTIONS(2190), [anon_sym___thiscall] = ACTIONS(2190), [anon_sym___vectorcall] = ACTIONS(2190), [anon_sym_LBRACE] = ACTIONS(2192), [anon_sym_LBRACK] = ACTIONS(2190), [anon_sym_static] = ACTIONS(2190), [anon_sym_register] = ACTIONS(2190), [anon_sym_inline] = ACTIONS(2190), [anon_sym_thread_local] = ACTIONS(2190), [anon_sym_const] = ACTIONS(2190), [anon_sym_volatile] = ACTIONS(2190), [anon_sym_restrict] = ACTIONS(2190), [anon_sym__Atomic] = ACTIONS(2190), [anon_sym_mutable] = ACTIONS(2190), [anon_sym_constexpr] = ACTIONS(2190), [anon_sym_signed] = ACTIONS(2190), [anon_sym_unsigned] = ACTIONS(2190), [anon_sym_long] = ACTIONS(2190), [anon_sym_short] = ACTIONS(2190), [sym_primitive_type] = ACTIONS(2190), [anon_sym_enum] = ACTIONS(2190), [anon_sym_class] = ACTIONS(2190), [anon_sym_struct] = ACTIONS(2190), [anon_sym_union] = ACTIONS(2190), [anon_sym_if] = ACTIONS(2190), [anon_sym_switch] = ACTIONS(2190), [anon_sym_case] = ACTIONS(2190), [anon_sym_default] = ACTIONS(2190), [anon_sym_while] = ACTIONS(2190), [anon_sym_do] = ACTIONS(2190), [anon_sym_for] = ACTIONS(2190), [anon_sym_return] = ACTIONS(2190), [anon_sym_break] = ACTIONS(2190), [anon_sym_continue] = ACTIONS(2190), [anon_sym_goto] = ACTIONS(2190), [anon_sym_DASH_DASH] = ACTIONS(2192), [anon_sym_PLUS_PLUS] = ACTIONS(2192), [anon_sym_sizeof] = ACTIONS(2190), [sym_number_literal] = ACTIONS(2192), [anon_sym_L_SQUOTE] = ACTIONS(2192), [anon_sym_u_SQUOTE] = ACTIONS(2192), [anon_sym_U_SQUOTE] = ACTIONS(2192), [anon_sym_u8_SQUOTE] = ACTIONS(2192), [anon_sym_SQUOTE] = ACTIONS(2192), [anon_sym_L_DQUOTE] = ACTIONS(2192), [anon_sym_u_DQUOTE] = ACTIONS(2192), [anon_sym_U_DQUOTE] = ACTIONS(2192), [anon_sym_u8_DQUOTE] = ACTIONS(2192), [anon_sym_DQUOTE] = ACTIONS(2192), [sym_true] = ACTIONS(2190), [sym_false] = ACTIONS(2190), [sym_null] = ACTIONS(2190), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2190), [anon_sym_virtual] = ACTIONS(2190), [anon_sym_explicit] = ACTIONS(2190), [sym_auto] = ACTIONS(2190), [anon_sym_typename] = ACTIONS(2190), [anon_sym_template] = ACTIONS(2190), [anon_sym_operator] = ACTIONS(2190), [anon_sym_delete] = ACTIONS(2190), [anon_sym_throw] = ACTIONS(2190), [anon_sym_namespace] = ACTIONS(2190), [anon_sym_using] = ACTIONS(2190), [anon_sym_static_assert] = ACTIONS(2190), [anon_sym_co_return] = ACTIONS(2190), [anon_sym_co_yield] = ACTIONS(2190), [anon_sym_try] = ACTIONS(2190), [anon_sym_co_await] = ACTIONS(2190), [anon_sym_new] = ACTIONS(2190), [sym_this] = ACTIONS(2190), [sym_nullptr] = ACTIONS(2190), [sym_raw_string_literal] = ACTIONS(2192), }, [409] = { [sym_identifier] = ACTIONS(2194), [aux_sym_preproc_include_token1] = ACTIONS(2194), [aux_sym_preproc_def_token1] = ACTIONS(2194), [aux_sym_preproc_if_token1] = ACTIONS(2194), [aux_sym_preproc_if_token2] = ACTIONS(2194), [aux_sym_preproc_ifdef_token1] = ACTIONS(2194), [aux_sym_preproc_ifdef_token2] = ACTIONS(2194), [aux_sym_preproc_else_token1] = ACTIONS(2194), [aux_sym_preproc_elif_token1] = ACTIONS(2194), [sym_preproc_directive] = ACTIONS(2194), [anon_sym_LPAREN2] = ACTIONS(2196), [anon_sym_BANG] = ACTIONS(2196), [anon_sym_TILDE] = ACTIONS(2196), [anon_sym_DASH] = ACTIONS(2194), [anon_sym_PLUS] = ACTIONS(2194), [anon_sym_STAR] = ACTIONS(2196), [anon_sym_AMP_AMP] = ACTIONS(2196), [anon_sym_AMP] = ACTIONS(2194), [anon_sym_SEMI] = ACTIONS(2196), [anon_sym_typedef] = ACTIONS(2194), [anon_sym_extern] = ACTIONS(2194), [anon_sym___attribute__] = ACTIONS(2194), [anon_sym_COLON_COLON] = ACTIONS(2196), [anon_sym_LBRACK_LBRACK] = ACTIONS(2196), [anon_sym___declspec] = ACTIONS(2194), [anon_sym___based] = ACTIONS(2194), [anon_sym___cdecl] = ACTIONS(2194), [anon_sym___clrcall] = ACTIONS(2194), [anon_sym___stdcall] = ACTIONS(2194), [anon_sym___fastcall] = ACTIONS(2194), [anon_sym___thiscall] = ACTIONS(2194), [anon_sym___vectorcall] = ACTIONS(2194), [anon_sym_LBRACE] = ACTIONS(2196), [anon_sym_LBRACK] = ACTIONS(2194), [anon_sym_static] = ACTIONS(2194), [anon_sym_register] = ACTIONS(2194), [anon_sym_inline] = ACTIONS(2194), [anon_sym_thread_local] = ACTIONS(2194), [anon_sym_const] = ACTIONS(2194), [anon_sym_volatile] = ACTIONS(2194), [anon_sym_restrict] = ACTIONS(2194), [anon_sym__Atomic] = ACTIONS(2194), [anon_sym_mutable] = ACTIONS(2194), [anon_sym_constexpr] = ACTIONS(2194), [anon_sym_signed] = ACTIONS(2194), [anon_sym_unsigned] = ACTIONS(2194), [anon_sym_long] = ACTIONS(2194), [anon_sym_short] = ACTIONS(2194), [sym_primitive_type] = ACTIONS(2194), [anon_sym_enum] = ACTIONS(2194), [anon_sym_class] = ACTIONS(2194), [anon_sym_struct] = ACTIONS(2194), [anon_sym_union] = ACTIONS(2194), [anon_sym_if] = ACTIONS(2194), [anon_sym_switch] = ACTIONS(2194), [anon_sym_case] = ACTIONS(2194), [anon_sym_default] = ACTIONS(2194), [anon_sym_while] = ACTIONS(2194), [anon_sym_do] = ACTIONS(2194), [anon_sym_for] = ACTIONS(2194), [anon_sym_return] = ACTIONS(2194), [anon_sym_break] = ACTIONS(2194), [anon_sym_continue] = ACTIONS(2194), [anon_sym_goto] = ACTIONS(2194), [anon_sym_DASH_DASH] = ACTIONS(2196), [anon_sym_PLUS_PLUS] = ACTIONS(2196), [anon_sym_sizeof] = ACTIONS(2194), [sym_number_literal] = ACTIONS(2196), [anon_sym_L_SQUOTE] = ACTIONS(2196), [anon_sym_u_SQUOTE] = ACTIONS(2196), [anon_sym_U_SQUOTE] = ACTIONS(2196), [anon_sym_u8_SQUOTE] = ACTIONS(2196), [anon_sym_SQUOTE] = ACTIONS(2196), [anon_sym_L_DQUOTE] = ACTIONS(2196), [anon_sym_u_DQUOTE] = ACTIONS(2196), [anon_sym_U_DQUOTE] = ACTIONS(2196), [anon_sym_u8_DQUOTE] = ACTIONS(2196), [anon_sym_DQUOTE] = ACTIONS(2196), [sym_true] = ACTIONS(2194), [sym_false] = ACTIONS(2194), [sym_null] = ACTIONS(2194), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2194), [anon_sym_virtual] = ACTIONS(2194), [anon_sym_explicit] = ACTIONS(2194), [sym_auto] = ACTIONS(2194), [anon_sym_typename] = ACTIONS(2194), [anon_sym_template] = ACTIONS(2194), [anon_sym_operator] = ACTIONS(2194), [anon_sym_delete] = ACTIONS(2194), [anon_sym_throw] = ACTIONS(2194), [anon_sym_namespace] = ACTIONS(2194), [anon_sym_using] = ACTIONS(2194), [anon_sym_static_assert] = ACTIONS(2194), [anon_sym_co_return] = ACTIONS(2194), [anon_sym_co_yield] = ACTIONS(2194), [anon_sym_try] = ACTIONS(2194), [anon_sym_co_await] = ACTIONS(2194), [anon_sym_new] = ACTIONS(2194), [sym_this] = ACTIONS(2194), [sym_nullptr] = ACTIONS(2194), [sym_raw_string_literal] = ACTIONS(2196), }, [410] = { [sym_identifier] = ACTIONS(2198), [aux_sym_preproc_include_token1] = ACTIONS(2198), [aux_sym_preproc_def_token1] = ACTIONS(2198), [aux_sym_preproc_if_token1] = ACTIONS(2198), [aux_sym_preproc_if_token2] = ACTIONS(2198), [aux_sym_preproc_ifdef_token1] = ACTIONS(2198), [aux_sym_preproc_ifdef_token2] = ACTIONS(2198), [aux_sym_preproc_else_token1] = ACTIONS(2198), [aux_sym_preproc_elif_token1] = ACTIONS(2198), [sym_preproc_directive] = ACTIONS(2198), [anon_sym_LPAREN2] = ACTIONS(2200), [anon_sym_BANG] = ACTIONS(2200), [anon_sym_TILDE] = ACTIONS(2200), [anon_sym_DASH] = ACTIONS(2198), [anon_sym_PLUS] = ACTIONS(2198), [anon_sym_STAR] = ACTIONS(2200), [anon_sym_AMP_AMP] = ACTIONS(2200), [anon_sym_AMP] = ACTIONS(2198), [anon_sym_SEMI] = ACTIONS(2200), [anon_sym_typedef] = ACTIONS(2198), [anon_sym_extern] = ACTIONS(2198), [anon_sym___attribute__] = ACTIONS(2198), [anon_sym_COLON_COLON] = ACTIONS(2200), [anon_sym_LBRACK_LBRACK] = ACTIONS(2200), [anon_sym___declspec] = ACTIONS(2198), [anon_sym___based] = ACTIONS(2198), [anon_sym___cdecl] = ACTIONS(2198), [anon_sym___clrcall] = ACTIONS(2198), [anon_sym___stdcall] = ACTIONS(2198), [anon_sym___fastcall] = ACTIONS(2198), [anon_sym___thiscall] = ACTIONS(2198), [anon_sym___vectorcall] = ACTIONS(2198), [anon_sym_LBRACE] = ACTIONS(2200), [anon_sym_LBRACK] = ACTIONS(2198), [anon_sym_static] = ACTIONS(2198), [anon_sym_register] = ACTIONS(2198), [anon_sym_inline] = ACTIONS(2198), [anon_sym_thread_local] = ACTIONS(2198), [anon_sym_const] = ACTIONS(2198), [anon_sym_volatile] = ACTIONS(2198), [anon_sym_restrict] = ACTIONS(2198), [anon_sym__Atomic] = ACTIONS(2198), [anon_sym_mutable] = ACTIONS(2198), [anon_sym_constexpr] = ACTIONS(2198), [anon_sym_signed] = ACTIONS(2198), [anon_sym_unsigned] = ACTIONS(2198), [anon_sym_long] = ACTIONS(2198), [anon_sym_short] = ACTIONS(2198), [sym_primitive_type] = ACTIONS(2198), [anon_sym_enum] = ACTIONS(2198), [anon_sym_class] = ACTIONS(2198), [anon_sym_struct] = ACTIONS(2198), [anon_sym_union] = ACTIONS(2198), [anon_sym_if] = ACTIONS(2198), [anon_sym_switch] = ACTIONS(2198), [anon_sym_case] = ACTIONS(2198), [anon_sym_default] = ACTIONS(2198), [anon_sym_while] = ACTIONS(2198), [anon_sym_do] = ACTIONS(2198), [anon_sym_for] = ACTIONS(2198), [anon_sym_return] = ACTIONS(2198), [anon_sym_break] = ACTIONS(2198), [anon_sym_continue] = ACTIONS(2198), [anon_sym_goto] = ACTIONS(2198), [anon_sym_DASH_DASH] = ACTIONS(2200), [anon_sym_PLUS_PLUS] = ACTIONS(2200), [anon_sym_sizeof] = ACTIONS(2198), [sym_number_literal] = ACTIONS(2200), [anon_sym_L_SQUOTE] = ACTIONS(2200), [anon_sym_u_SQUOTE] = ACTIONS(2200), [anon_sym_U_SQUOTE] = ACTIONS(2200), [anon_sym_u8_SQUOTE] = ACTIONS(2200), [anon_sym_SQUOTE] = ACTIONS(2200), [anon_sym_L_DQUOTE] = ACTIONS(2200), [anon_sym_u_DQUOTE] = ACTIONS(2200), [anon_sym_U_DQUOTE] = ACTIONS(2200), [anon_sym_u8_DQUOTE] = ACTIONS(2200), [anon_sym_DQUOTE] = ACTIONS(2200), [sym_true] = ACTIONS(2198), [sym_false] = ACTIONS(2198), [sym_null] = ACTIONS(2198), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2198), [anon_sym_virtual] = ACTIONS(2198), [anon_sym_explicit] = ACTIONS(2198), [sym_auto] = ACTIONS(2198), [anon_sym_typename] = ACTIONS(2198), [anon_sym_template] = ACTIONS(2198), [anon_sym_operator] = ACTIONS(2198), [anon_sym_delete] = ACTIONS(2198), [anon_sym_throw] = ACTIONS(2198), [anon_sym_namespace] = ACTIONS(2198), [anon_sym_using] = ACTIONS(2198), [anon_sym_static_assert] = ACTIONS(2198), [anon_sym_co_return] = ACTIONS(2198), [anon_sym_co_yield] = ACTIONS(2198), [anon_sym_try] = ACTIONS(2198), [anon_sym_co_await] = ACTIONS(2198), [anon_sym_new] = ACTIONS(2198), [sym_this] = ACTIONS(2198), [sym_nullptr] = ACTIONS(2198), [sym_raw_string_literal] = ACTIONS(2200), }, [411] = { [ts_builtin_sym_end] = ACTIONS(1765), [sym_identifier] = ACTIONS(1763), [aux_sym_preproc_include_token1] = ACTIONS(1763), [aux_sym_preproc_def_token1] = ACTIONS(1763), [aux_sym_preproc_if_token1] = ACTIONS(1763), [aux_sym_preproc_ifdef_token1] = ACTIONS(1763), [aux_sym_preproc_ifdef_token2] = ACTIONS(1763), [sym_preproc_directive] = ACTIONS(1763), [anon_sym_LPAREN2] = ACTIONS(1765), [anon_sym_BANG] = ACTIONS(1765), [anon_sym_TILDE] = ACTIONS(1765), [anon_sym_DASH] = ACTIONS(1763), [anon_sym_PLUS] = ACTIONS(1763), [anon_sym_STAR] = ACTIONS(1765), [anon_sym_AMP_AMP] = ACTIONS(1765), [anon_sym_AMP] = ACTIONS(1763), [anon_sym_SEMI] = ACTIONS(1765), [anon_sym_typedef] = ACTIONS(1763), [anon_sym_extern] = ACTIONS(1763), [anon_sym___attribute__] = ACTIONS(1763), [anon_sym_COLON_COLON] = ACTIONS(1765), [anon_sym_LBRACK_LBRACK] = ACTIONS(1765), [anon_sym___declspec] = ACTIONS(1763), [anon_sym___based] = ACTIONS(1763), [anon_sym___cdecl] = ACTIONS(1763), [anon_sym___clrcall] = ACTIONS(1763), [anon_sym___stdcall] = ACTIONS(1763), [anon_sym___fastcall] = ACTIONS(1763), [anon_sym___thiscall] = ACTIONS(1763), [anon_sym___vectorcall] = ACTIONS(1763), [anon_sym_LBRACE] = ACTIONS(1765), [anon_sym_LBRACK] = ACTIONS(1763), [anon_sym_static] = ACTIONS(1763), [anon_sym_register] = ACTIONS(1763), [anon_sym_inline] = ACTIONS(1763), [anon_sym_thread_local] = ACTIONS(1763), [anon_sym_const] = ACTIONS(1763), [anon_sym_volatile] = ACTIONS(1763), [anon_sym_restrict] = ACTIONS(1763), [anon_sym__Atomic] = ACTIONS(1763), [anon_sym_mutable] = ACTIONS(1763), [anon_sym_constexpr] = ACTIONS(1763), [anon_sym_signed] = ACTIONS(1763), [anon_sym_unsigned] = ACTIONS(1763), [anon_sym_long] = ACTIONS(1763), [anon_sym_short] = ACTIONS(1763), [sym_primitive_type] = ACTIONS(1763), [anon_sym_enum] = ACTIONS(1763), [anon_sym_class] = ACTIONS(1763), [anon_sym_struct] = ACTIONS(1763), [anon_sym_union] = ACTIONS(1763), [anon_sym_if] = ACTIONS(1763), [anon_sym_else] = ACTIONS(1763), [anon_sym_switch] = ACTIONS(1763), [anon_sym_case] = ACTIONS(1763), [anon_sym_default] = ACTIONS(1763), [anon_sym_while] = ACTIONS(1763), [anon_sym_do] = ACTIONS(1763), [anon_sym_for] = ACTIONS(1763), [anon_sym_return] = ACTIONS(1763), [anon_sym_break] = ACTIONS(1763), [anon_sym_continue] = ACTIONS(1763), [anon_sym_goto] = ACTIONS(1763), [anon_sym_DASH_DASH] = ACTIONS(1765), [anon_sym_PLUS_PLUS] = ACTIONS(1765), [anon_sym_sizeof] = ACTIONS(1763), [sym_number_literal] = ACTIONS(1765), [anon_sym_L_SQUOTE] = ACTIONS(1765), [anon_sym_u_SQUOTE] = ACTIONS(1765), [anon_sym_U_SQUOTE] = ACTIONS(1765), [anon_sym_u8_SQUOTE] = ACTIONS(1765), [anon_sym_SQUOTE] = ACTIONS(1765), [anon_sym_L_DQUOTE] = ACTIONS(1765), [anon_sym_u_DQUOTE] = ACTIONS(1765), [anon_sym_U_DQUOTE] = ACTIONS(1765), [anon_sym_u8_DQUOTE] = ACTIONS(1765), [anon_sym_DQUOTE] = ACTIONS(1765), [sym_true] = ACTIONS(1763), [sym_false] = ACTIONS(1763), [sym_null] = ACTIONS(1763), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1763), [anon_sym_virtual] = ACTIONS(1763), [anon_sym_explicit] = ACTIONS(1763), [sym_auto] = ACTIONS(1763), [anon_sym_typename] = ACTIONS(1763), [anon_sym_template] = ACTIONS(1763), [anon_sym_operator] = ACTIONS(1763), [anon_sym_delete] = ACTIONS(1763), [anon_sym_throw] = ACTIONS(1763), [anon_sym_namespace] = ACTIONS(1763), [anon_sym_using] = ACTIONS(1763), [anon_sym_static_assert] = ACTIONS(1763), [anon_sym_co_return] = ACTIONS(1763), [anon_sym_co_yield] = ACTIONS(1763), [anon_sym_try] = ACTIONS(1763), [anon_sym_catch] = ACTIONS(1763), [anon_sym_co_await] = ACTIONS(1763), [anon_sym_new] = ACTIONS(1763), [sym_this] = ACTIONS(1763), [sym_nullptr] = ACTIONS(1763), [sym_raw_string_literal] = ACTIONS(1765), }, [412] = { [sym_identifier] = ACTIONS(2202), [aux_sym_preproc_include_token1] = ACTIONS(2202), [aux_sym_preproc_def_token1] = ACTIONS(2202), [aux_sym_preproc_if_token1] = ACTIONS(2202), [aux_sym_preproc_if_token2] = ACTIONS(2202), [aux_sym_preproc_ifdef_token1] = ACTIONS(2202), [aux_sym_preproc_ifdef_token2] = ACTIONS(2202), [aux_sym_preproc_else_token1] = ACTIONS(2202), [aux_sym_preproc_elif_token1] = ACTIONS(2202), [sym_preproc_directive] = ACTIONS(2202), [anon_sym_LPAREN2] = ACTIONS(2204), [anon_sym_BANG] = ACTIONS(2204), [anon_sym_TILDE] = ACTIONS(2204), [anon_sym_DASH] = ACTIONS(2202), [anon_sym_PLUS] = ACTIONS(2202), [anon_sym_STAR] = ACTIONS(2204), [anon_sym_AMP_AMP] = ACTIONS(2204), [anon_sym_AMP] = ACTIONS(2202), [anon_sym_SEMI] = ACTIONS(2204), [anon_sym_typedef] = ACTIONS(2202), [anon_sym_extern] = ACTIONS(2202), [anon_sym___attribute__] = ACTIONS(2202), [anon_sym_COLON_COLON] = ACTIONS(2204), [anon_sym_LBRACK_LBRACK] = ACTIONS(2204), [anon_sym___declspec] = ACTIONS(2202), [anon_sym___based] = ACTIONS(2202), [anon_sym___cdecl] = ACTIONS(2202), [anon_sym___clrcall] = ACTIONS(2202), [anon_sym___stdcall] = ACTIONS(2202), [anon_sym___fastcall] = ACTIONS(2202), [anon_sym___thiscall] = ACTIONS(2202), [anon_sym___vectorcall] = ACTIONS(2202), [anon_sym_LBRACE] = ACTIONS(2204), [anon_sym_LBRACK] = ACTIONS(2202), [anon_sym_static] = ACTIONS(2202), [anon_sym_register] = ACTIONS(2202), [anon_sym_inline] = ACTIONS(2202), [anon_sym_thread_local] = ACTIONS(2202), [anon_sym_const] = ACTIONS(2202), [anon_sym_volatile] = ACTIONS(2202), [anon_sym_restrict] = ACTIONS(2202), [anon_sym__Atomic] = ACTIONS(2202), [anon_sym_mutable] = ACTIONS(2202), [anon_sym_constexpr] = ACTIONS(2202), [anon_sym_signed] = ACTIONS(2202), [anon_sym_unsigned] = ACTIONS(2202), [anon_sym_long] = ACTIONS(2202), [anon_sym_short] = ACTIONS(2202), [sym_primitive_type] = ACTIONS(2202), [anon_sym_enum] = ACTIONS(2202), [anon_sym_class] = ACTIONS(2202), [anon_sym_struct] = ACTIONS(2202), [anon_sym_union] = ACTIONS(2202), [anon_sym_if] = ACTIONS(2202), [anon_sym_switch] = ACTIONS(2202), [anon_sym_case] = ACTIONS(2202), [anon_sym_default] = ACTIONS(2202), [anon_sym_while] = ACTIONS(2202), [anon_sym_do] = ACTIONS(2202), [anon_sym_for] = ACTIONS(2202), [anon_sym_return] = ACTIONS(2202), [anon_sym_break] = ACTIONS(2202), [anon_sym_continue] = ACTIONS(2202), [anon_sym_goto] = ACTIONS(2202), [anon_sym_DASH_DASH] = ACTIONS(2204), [anon_sym_PLUS_PLUS] = ACTIONS(2204), [anon_sym_sizeof] = ACTIONS(2202), [sym_number_literal] = ACTIONS(2204), [anon_sym_L_SQUOTE] = ACTIONS(2204), [anon_sym_u_SQUOTE] = ACTIONS(2204), [anon_sym_U_SQUOTE] = ACTIONS(2204), [anon_sym_u8_SQUOTE] = ACTIONS(2204), [anon_sym_SQUOTE] = ACTIONS(2204), [anon_sym_L_DQUOTE] = ACTIONS(2204), [anon_sym_u_DQUOTE] = ACTIONS(2204), [anon_sym_U_DQUOTE] = ACTIONS(2204), [anon_sym_u8_DQUOTE] = ACTIONS(2204), [anon_sym_DQUOTE] = ACTIONS(2204), [sym_true] = ACTIONS(2202), [sym_false] = ACTIONS(2202), [sym_null] = ACTIONS(2202), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2202), [anon_sym_virtual] = ACTIONS(2202), [anon_sym_explicit] = ACTIONS(2202), [sym_auto] = ACTIONS(2202), [anon_sym_typename] = ACTIONS(2202), [anon_sym_template] = ACTIONS(2202), [anon_sym_operator] = ACTIONS(2202), [anon_sym_delete] = ACTIONS(2202), [anon_sym_throw] = ACTIONS(2202), [anon_sym_namespace] = ACTIONS(2202), [anon_sym_using] = ACTIONS(2202), [anon_sym_static_assert] = ACTIONS(2202), [anon_sym_co_return] = ACTIONS(2202), [anon_sym_co_yield] = ACTIONS(2202), [anon_sym_try] = ACTIONS(2202), [anon_sym_co_await] = ACTIONS(2202), [anon_sym_new] = ACTIONS(2202), [sym_this] = ACTIONS(2202), [sym_nullptr] = ACTIONS(2202), [sym_raw_string_literal] = ACTIONS(2204), }, [413] = { [sym_identifier] = ACTIONS(1749), [aux_sym_preproc_include_token1] = ACTIONS(1749), [aux_sym_preproc_def_token1] = ACTIONS(1749), [aux_sym_preproc_if_token1] = ACTIONS(1749), [aux_sym_preproc_if_token2] = ACTIONS(1749), [aux_sym_preproc_ifdef_token1] = ACTIONS(1749), [aux_sym_preproc_ifdef_token2] = ACTIONS(1749), [sym_preproc_directive] = ACTIONS(1749), [anon_sym_LPAREN2] = ACTIONS(1751), [anon_sym_BANG] = ACTIONS(1751), [anon_sym_TILDE] = ACTIONS(1751), [anon_sym_DASH] = ACTIONS(1749), [anon_sym_PLUS] = ACTIONS(1749), [anon_sym_STAR] = ACTIONS(1751), [anon_sym_AMP_AMP] = ACTIONS(1751), [anon_sym_AMP] = ACTIONS(1749), [anon_sym_SEMI] = ACTIONS(1751), [anon_sym_typedef] = ACTIONS(1749), [anon_sym_extern] = ACTIONS(1749), [anon_sym___attribute__] = ACTIONS(1749), [anon_sym_COLON_COLON] = ACTIONS(1751), [anon_sym_LBRACK_LBRACK] = ACTIONS(1751), [anon_sym___declspec] = ACTIONS(1749), [anon_sym___based] = ACTIONS(1749), [anon_sym___cdecl] = ACTIONS(1749), [anon_sym___clrcall] = ACTIONS(1749), [anon_sym___stdcall] = ACTIONS(1749), [anon_sym___fastcall] = ACTIONS(1749), [anon_sym___thiscall] = ACTIONS(1749), [anon_sym___vectorcall] = ACTIONS(1749), [anon_sym_LBRACE] = ACTIONS(1751), [anon_sym_LBRACK] = ACTIONS(1749), [anon_sym_static] = ACTIONS(1749), [anon_sym_register] = ACTIONS(1749), [anon_sym_inline] = ACTIONS(1749), [anon_sym_thread_local] = ACTIONS(1749), [anon_sym_const] = ACTIONS(1749), [anon_sym_volatile] = ACTIONS(1749), [anon_sym_restrict] = ACTIONS(1749), [anon_sym__Atomic] = ACTIONS(1749), [anon_sym_mutable] = ACTIONS(1749), [anon_sym_constexpr] = ACTIONS(1749), [anon_sym_signed] = ACTIONS(1749), [anon_sym_unsigned] = ACTIONS(1749), [anon_sym_long] = ACTIONS(1749), [anon_sym_short] = ACTIONS(1749), [sym_primitive_type] = ACTIONS(1749), [anon_sym_enum] = ACTIONS(1749), [anon_sym_class] = ACTIONS(1749), [anon_sym_struct] = ACTIONS(1749), [anon_sym_union] = ACTIONS(1749), [anon_sym_if] = ACTIONS(1749), [anon_sym_else] = ACTIONS(1749), [anon_sym_switch] = ACTIONS(1749), [anon_sym_case] = ACTIONS(1749), [anon_sym_default] = ACTIONS(1749), [anon_sym_while] = ACTIONS(1749), [anon_sym_do] = ACTIONS(1749), [anon_sym_for] = ACTIONS(1749), [anon_sym_return] = ACTIONS(1749), [anon_sym_break] = ACTIONS(1749), [anon_sym_continue] = ACTIONS(1749), [anon_sym_goto] = ACTIONS(1749), [anon_sym_DASH_DASH] = ACTIONS(1751), [anon_sym_PLUS_PLUS] = ACTIONS(1751), [anon_sym_sizeof] = ACTIONS(1749), [sym_number_literal] = ACTIONS(1751), [anon_sym_L_SQUOTE] = ACTIONS(1751), [anon_sym_u_SQUOTE] = ACTIONS(1751), [anon_sym_U_SQUOTE] = ACTIONS(1751), [anon_sym_u8_SQUOTE] = ACTIONS(1751), [anon_sym_SQUOTE] = ACTIONS(1751), [anon_sym_L_DQUOTE] = ACTIONS(1751), [anon_sym_u_DQUOTE] = ACTIONS(1751), [anon_sym_U_DQUOTE] = ACTIONS(1751), [anon_sym_u8_DQUOTE] = ACTIONS(1751), [anon_sym_DQUOTE] = ACTIONS(1751), [sym_true] = ACTIONS(1749), [sym_false] = ACTIONS(1749), [sym_null] = ACTIONS(1749), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1749), [anon_sym_virtual] = ACTIONS(1749), [anon_sym_explicit] = ACTIONS(1749), [sym_auto] = ACTIONS(1749), [anon_sym_typename] = ACTIONS(1749), [anon_sym_template] = ACTIONS(1749), [anon_sym_operator] = ACTIONS(1749), [anon_sym_delete] = ACTIONS(1749), [anon_sym_throw] = ACTIONS(1749), [anon_sym_namespace] = ACTIONS(1749), [anon_sym_using] = ACTIONS(1749), [anon_sym_static_assert] = ACTIONS(1749), [anon_sym_co_return] = ACTIONS(1749), [anon_sym_co_yield] = ACTIONS(1749), [anon_sym_try] = ACTIONS(1749), [anon_sym_catch] = ACTIONS(1749), [anon_sym_co_await] = ACTIONS(1749), [anon_sym_new] = ACTIONS(1749), [sym_this] = ACTIONS(1749), [sym_nullptr] = ACTIONS(1749), [sym_raw_string_literal] = ACTIONS(1751), }, [414] = { [sym_identifier] = ACTIONS(2206), [aux_sym_preproc_include_token1] = ACTIONS(2206), [aux_sym_preproc_def_token1] = ACTIONS(2206), [aux_sym_preproc_if_token1] = ACTIONS(2206), [aux_sym_preproc_if_token2] = ACTIONS(2206), [aux_sym_preproc_ifdef_token1] = ACTIONS(2206), [aux_sym_preproc_ifdef_token2] = ACTIONS(2206), [aux_sym_preproc_else_token1] = ACTIONS(2206), [aux_sym_preproc_elif_token1] = ACTIONS(2206), [sym_preproc_directive] = ACTIONS(2206), [anon_sym_LPAREN2] = ACTIONS(2208), [anon_sym_BANG] = ACTIONS(2208), [anon_sym_TILDE] = ACTIONS(2208), [anon_sym_DASH] = ACTIONS(2206), [anon_sym_PLUS] = ACTIONS(2206), [anon_sym_STAR] = ACTIONS(2208), [anon_sym_AMP_AMP] = ACTIONS(2208), [anon_sym_AMP] = ACTIONS(2206), [anon_sym_SEMI] = ACTIONS(2208), [anon_sym_typedef] = ACTIONS(2206), [anon_sym_extern] = ACTIONS(2206), [anon_sym___attribute__] = ACTIONS(2206), [anon_sym_COLON_COLON] = ACTIONS(2208), [anon_sym_LBRACK_LBRACK] = ACTIONS(2208), [anon_sym___declspec] = ACTIONS(2206), [anon_sym___based] = ACTIONS(2206), [anon_sym___cdecl] = ACTIONS(2206), [anon_sym___clrcall] = ACTIONS(2206), [anon_sym___stdcall] = ACTIONS(2206), [anon_sym___fastcall] = ACTIONS(2206), [anon_sym___thiscall] = ACTIONS(2206), [anon_sym___vectorcall] = ACTIONS(2206), [anon_sym_LBRACE] = ACTIONS(2208), [anon_sym_LBRACK] = ACTIONS(2206), [anon_sym_static] = ACTIONS(2206), [anon_sym_register] = ACTIONS(2206), [anon_sym_inline] = ACTIONS(2206), [anon_sym_thread_local] = ACTIONS(2206), [anon_sym_const] = ACTIONS(2206), [anon_sym_volatile] = ACTIONS(2206), [anon_sym_restrict] = ACTIONS(2206), [anon_sym__Atomic] = ACTIONS(2206), [anon_sym_mutable] = ACTIONS(2206), [anon_sym_constexpr] = ACTIONS(2206), [anon_sym_signed] = ACTIONS(2206), [anon_sym_unsigned] = ACTIONS(2206), [anon_sym_long] = ACTIONS(2206), [anon_sym_short] = ACTIONS(2206), [sym_primitive_type] = ACTIONS(2206), [anon_sym_enum] = ACTIONS(2206), [anon_sym_class] = ACTIONS(2206), [anon_sym_struct] = ACTIONS(2206), [anon_sym_union] = ACTIONS(2206), [anon_sym_if] = ACTIONS(2206), [anon_sym_switch] = ACTIONS(2206), [anon_sym_case] = ACTIONS(2206), [anon_sym_default] = ACTIONS(2206), [anon_sym_while] = ACTIONS(2206), [anon_sym_do] = ACTIONS(2206), [anon_sym_for] = ACTIONS(2206), [anon_sym_return] = ACTIONS(2206), [anon_sym_break] = ACTIONS(2206), [anon_sym_continue] = ACTIONS(2206), [anon_sym_goto] = ACTIONS(2206), [anon_sym_DASH_DASH] = ACTIONS(2208), [anon_sym_PLUS_PLUS] = ACTIONS(2208), [anon_sym_sizeof] = ACTIONS(2206), [sym_number_literal] = ACTIONS(2208), [anon_sym_L_SQUOTE] = ACTIONS(2208), [anon_sym_u_SQUOTE] = ACTIONS(2208), [anon_sym_U_SQUOTE] = ACTIONS(2208), [anon_sym_u8_SQUOTE] = ACTIONS(2208), [anon_sym_SQUOTE] = ACTIONS(2208), [anon_sym_L_DQUOTE] = ACTIONS(2208), [anon_sym_u_DQUOTE] = ACTIONS(2208), [anon_sym_U_DQUOTE] = ACTIONS(2208), [anon_sym_u8_DQUOTE] = ACTIONS(2208), [anon_sym_DQUOTE] = ACTIONS(2208), [sym_true] = ACTIONS(2206), [sym_false] = ACTIONS(2206), [sym_null] = ACTIONS(2206), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2206), [anon_sym_virtual] = ACTIONS(2206), [anon_sym_explicit] = ACTIONS(2206), [sym_auto] = ACTIONS(2206), [anon_sym_typename] = ACTIONS(2206), [anon_sym_template] = ACTIONS(2206), [anon_sym_operator] = ACTIONS(2206), [anon_sym_delete] = ACTIONS(2206), [anon_sym_throw] = ACTIONS(2206), [anon_sym_namespace] = ACTIONS(2206), [anon_sym_using] = ACTIONS(2206), [anon_sym_static_assert] = ACTIONS(2206), [anon_sym_co_return] = ACTIONS(2206), [anon_sym_co_yield] = ACTIONS(2206), [anon_sym_try] = ACTIONS(2206), [anon_sym_co_await] = ACTIONS(2206), [anon_sym_new] = ACTIONS(2206), [sym_this] = ACTIONS(2206), [sym_nullptr] = ACTIONS(2206), [sym_raw_string_literal] = ACTIONS(2208), }, [415] = { [sym_identifier] = ACTIONS(2210), [aux_sym_preproc_include_token1] = ACTIONS(2210), [aux_sym_preproc_def_token1] = ACTIONS(2210), [aux_sym_preproc_if_token1] = ACTIONS(2210), [aux_sym_preproc_if_token2] = ACTIONS(2210), [aux_sym_preproc_ifdef_token1] = ACTIONS(2210), [aux_sym_preproc_ifdef_token2] = ACTIONS(2210), [aux_sym_preproc_else_token1] = ACTIONS(2210), [aux_sym_preproc_elif_token1] = ACTIONS(2210), [sym_preproc_directive] = ACTIONS(2210), [anon_sym_LPAREN2] = ACTIONS(2212), [anon_sym_BANG] = ACTIONS(2212), [anon_sym_TILDE] = ACTIONS(2212), [anon_sym_DASH] = ACTIONS(2210), [anon_sym_PLUS] = ACTIONS(2210), [anon_sym_STAR] = ACTIONS(2212), [anon_sym_AMP_AMP] = ACTIONS(2212), [anon_sym_AMP] = ACTIONS(2210), [anon_sym_SEMI] = ACTIONS(2212), [anon_sym_typedef] = ACTIONS(2210), [anon_sym_extern] = ACTIONS(2210), [anon_sym___attribute__] = ACTIONS(2210), [anon_sym_COLON_COLON] = ACTIONS(2212), [anon_sym_LBRACK_LBRACK] = ACTIONS(2212), [anon_sym___declspec] = ACTIONS(2210), [anon_sym___based] = ACTIONS(2210), [anon_sym___cdecl] = ACTIONS(2210), [anon_sym___clrcall] = ACTIONS(2210), [anon_sym___stdcall] = ACTIONS(2210), [anon_sym___fastcall] = ACTIONS(2210), [anon_sym___thiscall] = ACTIONS(2210), [anon_sym___vectorcall] = ACTIONS(2210), [anon_sym_LBRACE] = ACTIONS(2212), [anon_sym_LBRACK] = ACTIONS(2210), [anon_sym_static] = ACTIONS(2210), [anon_sym_register] = ACTIONS(2210), [anon_sym_inline] = ACTIONS(2210), [anon_sym_thread_local] = ACTIONS(2210), [anon_sym_const] = ACTIONS(2210), [anon_sym_volatile] = ACTIONS(2210), [anon_sym_restrict] = ACTIONS(2210), [anon_sym__Atomic] = ACTIONS(2210), [anon_sym_mutable] = ACTIONS(2210), [anon_sym_constexpr] = ACTIONS(2210), [anon_sym_signed] = ACTIONS(2210), [anon_sym_unsigned] = ACTIONS(2210), [anon_sym_long] = ACTIONS(2210), [anon_sym_short] = ACTIONS(2210), [sym_primitive_type] = ACTIONS(2210), [anon_sym_enum] = ACTIONS(2210), [anon_sym_class] = ACTIONS(2210), [anon_sym_struct] = ACTIONS(2210), [anon_sym_union] = ACTIONS(2210), [anon_sym_if] = ACTIONS(2210), [anon_sym_switch] = ACTIONS(2210), [anon_sym_case] = ACTIONS(2210), [anon_sym_default] = ACTIONS(2210), [anon_sym_while] = ACTIONS(2210), [anon_sym_do] = ACTIONS(2210), [anon_sym_for] = ACTIONS(2210), [anon_sym_return] = ACTIONS(2210), [anon_sym_break] = ACTIONS(2210), [anon_sym_continue] = ACTIONS(2210), [anon_sym_goto] = ACTIONS(2210), [anon_sym_DASH_DASH] = ACTIONS(2212), [anon_sym_PLUS_PLUS] = ACTIONS(2212), [anon_sym_sizeof] = ACTIONS(2210), [sym_number_literal] = ACTIONS(2212), [anon_sym_L_SQUOTE] = ACTIONS(2212), [anon_sym_u_SQUOTE] = ACTIONS(2212), [anon_sym_U_SQUOTE] = ACTIONS(2212), [anon_sym_u8_SQUOTE] = ACTIONS(2212), [anon_sym_SQUOTE] = ACTIONS(2212), [anon_sym_L_DQUOTE] = ACTIONS(2212), [anon_sym_u_DQUOTE] = ACTIONS(2212), [anon_sym_U_DQUOTE] = ACTIONS(2212), [anon_sym_u8_DQUOTE] = ACTIONS(2212), [anon_sym_DQUOTE] = ACTIONS(2212), [sym_true] = ACTIONS(2210), [sym_false] = ACTIONS(2210), [sym_null] = ACTIONS(2210), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2210), [anon_sym_virtual] = ACTIONS(2210), [anon_sym_explicit] = ACTIONS(2210), [sym_auto] = ACTIONS(2210), [anon_sym_typename] = ACTIONS(2210), [anon_sym_template] = ACTIONS(2210), [anon_sym_operator] = ACTIONS(2210), [anon_sym_delete] = ACTIONS(2210), [anon_sym_throw] = ACTIONS(2210), [anon_sym_namespace] = ACTIONS(2210), [anon_sym_using] = ACTIONS(2210), [anon_sym_static_assert] = ACTIONS(2210), [anon_sym_co_return] = ACTIONS(2210), [anon_sym_co_yield] = ACTIONS(2210), [anon_sym_try] = ACTIONS(2210), [anon_sym_co_await] = ACTIONS(2210), [anon_sym_new] = ACTIONS(2210), [sym_this] = ACTIONS(2210), [sym_nullptr] = ACTIONS(2210), [sym_raw_string_literal] = ACTIONS(2212), }, [416] = { [sym_identifier] = ACTIONS(1749), [aux_sym_preproc_include_token1] = ACTIONS(1749), [aux_sym_preproc_def_token1] = ACTIONS(1749), [aux_sym_preproc_if_token1] = ACTIONS(1749), [aux_sym_preproc_ifdef_token1] = ACTIONS(1749), [aux_sym_preproc_ifdef_token2] = ACTIONS(1749), [sym_preproc_directive] = ACTIONS(1749), [anon_sym_LPAREN2] = ACTIONS(1751), [anon_sym_BANG] = ACTIONS(1751), [anon_sym_TILDE] = ACTIONS(1751), [anon_sym_DASH] = ACTIONS(1749), [anon_sym_PLUS] = ACTIONS(1749), [anon_sym_STAR] = ACTIONS(1751), [anon_sym_AMP_AMP] = ACTIONS(1751), [anon_sym_AMP] = ACTIONS(1749), [anon_sym_SEMI] = ACTIONS(1751), [anon_sym_typedef] = ACTIONS(1749), [anon_sym_extern] = ACTIONS(1749), [anon_sym___attribute__] = ACTIONS(1749), [anon_sym_COLON_COLON] = ACTIONS(1751), [anon_sym_LBRACK_LBRACK] = ACTIONS(1751), [anon_sym___declspec] = ACTIONS(1749), [anon_sym___based] = ACTIONS(1749), [anon_sym___cdecl] = ACTIONS(1749), [anon_sym___clrcall] = ACTIONS(1749), [anon_sym___stdcall] = ACTIONS(1749), [anon_sym___fastcall] = ACTIONS(1749), [anon_sym___thiscall] = ACTIONS(1749), [anon_sym___vectorcall] = ACTIONS(1749), [anon_sym_LBRACE] = ACTIONS(1751), [anon_sym_RBRACE] = ACTIONS(1751), [anon_sym_LBRACK] = ACTIONS(1749), [anon_sym_static] = ACTIONS(1749), [anon_sym_register] = ACTIONS(1749), [anon_sym_inline] = ACTIONS(1749), [anon_sym_thread_local] = ACTIONS(1749), [anon_sym_const] = ACTIONS(1749), [anon_sym_volatile] = ACTIONS(1749), [anon_sym_restrict] = ACTIONS(1749), [anon_sym__Atomic] = ACTIONS(1749), [anon_sym_mutable] = ACTIONS(1749), [anon_sym_constexpr] = ACTIONS(1749), [anon_sym_signed] = ACTIONS(1749), [anon_sym_unsigned] = ACTIONS(1749), [anon_sym_long] = ACTIONS(1749), [anon_sym_short] = ACTIONS(1749), [sym_primitive_type] = ACTIONS(1749), [anon_sym_enum] = ACTIONS(1749), [anon_sym_class] = ACTIONS(1749), [anon_sym_struct] = ACTIONS(1749), [anon_sym_union] = ACTIONS(1749), [anon_sym_if] = ACTIONS(1749), [anon_sym_else] = ACTIONS(1749), [anon_sym_switch] = ACTIONS(1749), [anon_sym_case] = ACTIONS(1749), [anon_sym_default] = ACTIONS(1749), [anon_sym_while] = ACTIONS(1749), [anon_sym_do] = ACTIONS(1749), [anon_sym_for] = ACTIONS(1749), [anon_sym_return] = ACTIONS(1749), [anon_sym_break] = ACTIONS(1749), [anon_sym_continue] = ACTIONS(1749), [anon_sym_goto] = ACTIONS(1749), [anon_sym_DASH_DASH] = ACTIONS(1751), [anon_sym_PLUS_PLUS] = ACTIONS(1751), [anon_sym_sizeof] = ACTIONS(1749), [sym_number_literal] = ACTIONS(1751), [anon_sym_L_SQUOTE] = ACTIONS(1751), [anon_sym_u_SQUOTE] = ACTIONS(1751), [anon_sym_U_SQUOTE] = ACTIONS(1751), [anon_sym_u8_SQUOTE] = ACTIONS(1751), [anon_sym_SQUOTE] = ACTIONS(1751), [anon_sym_L_DQUOTE] = ACTIONS(1751), [anon_sym_u_DQUOTE] = ACTIONS(1751), [anon_sym_U_DQUOTE] = ACTIONS(1751), [anon_sym_u8_DQUOTE] = ACTIONS(1751), [anon_sym_DQUOTE] = ACTIONS(1751), [sym_true] = ACTIONS(1749), [sym_false] = ACTIONS(1749), [sym_null] = ACTIONS(1749), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1749), [anon_sym_virtual] = ACTIONS(1749), [anon_sym_explicit] = ACTIONS(1749), [sym_auto] = ACTIONS(1749), [anon_sym_typename] = ACTIONS(1749), [anon_sym_template] = ACTIONS(1749), [anon_sym_operator] = ACTIONS(1749), [anon_sym_delete] = ACTIONS(1749), [anon_sym_throw] = ACTIONS(1749), [anon_sym_namespace] = ACTIONS(1749), [anon_sym_using] = ACTIONS(1749), [anon_sym_static_assert] = ACTIONS(1749), [anon_sym_co_return] = ACTIONS(1749), [anon_sym_co_yield] = ACTIONS(1749), [anon_sym_try] = ACTIONS(1749), [anon_sym_catch] = ACTIONS(1749), [anon_sym_co_await] = ACTIONS(1749), [anon_sym_new] = ACTIONS(1749), [sym_this] = ACTIONS(1749), [sym_nullptr] = ACTIONS(1749), [sym_raw_string_literal] = ACTIONS(1751), }, [417] = { [sym_identifier] = ACTIONS(2214), [aux_sym_preproc_include_token1] = ACTIONS(2214), [aux_sym_preproc_def_token1] = ACTIONS(2214), [aux_sym_preproc_if_token1] = ACTIONS(2214), [aux_sym_preproc_if_token2] = ACTIONS(2214), [aux_sym_preproc_ifdef_token1] = ACTIONS(2214), [aux_sym_preproc_ifdef_token2] = ACTIONS(2214), [aux_sym_preproc_else_token1] = ACTIONS(2214), [aux_sym_preproc_elif_token1] = ACTIONS(2214), [sym_preproc_directive] = ACTIONS(2214), [anon_sym_LPAREN2] = ACTIONS(2216), [anon_sym_BANG] = ACTIONS(2216), [anon_sym_TILDE] = ACTIONS(2216), [anon_sym_DASH] = ACTIONS(2214), [anon_sym_PLUS] = ACTIONS(2214), [anon_sym_STAR] = ACTIONS(2216), [anon_sym_AMP_AMP] = ACTIONS(2216), [anon_sym_AMP] = ACTIONS(2214), [anon_sym_SEMI] = ACTIONS(2216), [anon_sym_typedef] = ACTIONS(2214), [anon_sym_extern] = ACTIONS(2214), [anon_sym___attribute__] = ACTIONS(2214), [anon_sym_COLON_COLON] = ACTIONS(2216), [anon_sym_LBRACK_LBRACK] = ACTIONS(2216), [anon_sym___declspec] = ACTIONS(2214), [anon_sym___based] = ACTIONS(2214), [anon_sym___cdecl] = ACTIONS(2214), [anon_sym___clrcall] = ACTIONS(2214), [anon_sym___stdcall] = ACTIONS(2214), [anon_sym___fastcall] = ACTIONS(2214), [anon_sym___thiscall] = ACTIONS(2214), [anon_sym___vectorcall] = ACTIONS(2214), [anon_sym_LBRACE] = ACTIONS(2216), [anon_sym_LBRACK] = ACTIONS(2214), [anon_sym_static] = ACTIONS(2214), [anon_sym_register] = ACTIONS(2214), [anon_sym_inline] = ACTIONS(2214), [anon_sym_thread_local] = ACTIONS(2214), [anon_sym_const] = ACTIONS(2214), [anon_sym_volatile] = ACTIONS(2214), [anon_sym_restrict] = ACTIONS(2214), [anon_sym__Atomic] = ACTIONS(2214), [anon_sym_mutable] = ACTIONS(2214), [anon_sym_constexpr] = ACTIONS(2214), [anon_sym_signed] = ACTIONS(2214), [anon_sym_unsigned] = ACTIONS(2214), [anon_sym_long] = ACTIONS(2214), [anon_sym_short] = ACTIONS(2214), [sym_primitive_type] = ACTIONS(2214), [anon_sym_enum] = ACTIONS(2214), [anon_sym_class] = ACTIONS(2214), [anon_sym_struct] = ACTIONS(2214), [anon_sym_union] = ACTIONS(2214), [anon_sym_if] = ACTIONS(2214), [anon_sym_switch] = ACTIONS(2214), [anon_sym_case] = ACTIONS(2214), [anon_sym_default] = ACTIONS(2214), [anon_sym_while] = ACTIONS(2214), [anon_sym_do] = ACTIONS(2214), [anon_sym_for] = ACTIONS(2214), [anon_sym_return] = ACTIONS(2214), [anon_sym_break] = ACTIONS(2214), [anon_sym_continue] = ACTIONS(2214), [anon_sym_goto] = ACTIONS(2214), [anon_sym_DASH_DASH] = ACTIONS(2216), [anon_sym_PLUS_PLUS] = ACTIONS(2216), [anon_sym_sizeof] = ACTIONS(2214), [sym_number_literal] = ACTIONS(2216), [anon_sym_L_SQUOTE] = ACTIONS(2216), [anon_sym_u_SQUOTE] = ACTIONS(2216), [anon_sym_U_SQUOTE] = ACTIONS(2216), [anon_sym_u8_SQUOTE] = ACTIONS(2216), [anon_sym_SQUOTE] = ACTIONS(2216), [anon_sym_L_DQUOTE] = ACTIONS(2216), [anon_sym_u_DQUOTE] = ACTIONS(2216), [anon_sym_U_DQUOTE] = ACTIONS(2216), [anon_sym_u8_DQUOTE] = ACTIONS(2216), [anon_sym_DQUOTE] = ACTIONS(2216), [sym_true] = ACTIONS(2214), [sym_false] = ACTIONS(2214), [sym_null] = ACTIONS(2214), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2214), [anon_sym_virtual] = ACTIONS(2214), [anon_sym_explicit] = ACTIONS(2214), [sym_auto] = ACTIONS(2214), [anon_sym_typename] = ACTIONS(2214), [anon_sym_template] = ACTIONS(2214), [anon_sym_operator] = ACTIONS(2214), [anon_sym_delete] = ACTIONS(2214), [anon_sym_throw] = ACTIONS(2214), [anon_sym_namespace] = ACTIONS(2214), [anon_sym_using] = ACTIONS(2214), [anon_sym_static_assert] = ACTIONS(2214), [anon_sym_co_return] = ACTIONS(2214), [anon_sym_co_yield] = ACTIONS(2214), [anon_sym_try] = ACTIONS(2214), [anon_sym_co_await] = ACTIONS(2214), [anon_sym_new] = ACTIONS(2214), [sym_this] = ACTIONS(2214), [sym_nullptr] = ACTIONS(2214), [sym_raw_string_literal] = ACTIONS(2216), }, [418] = { [sym_identifier] = ACTIONS(2218), [aux_sym_preproc_include_token1] = ACTIONS(2218), [aux_sym_preproc_def_token1] = ACTIONS(2218), [aux_sym_preproc_if_token1] = ACTIONS(2218), [aux_sym_preproc_if_token2] = ACTIONS(2218), [aux_sym_preproc_ifdef_token1] = ACTIONS(2218), [aux_sym_preproc_ifdef_token2] = ACTIONS(2218), [aux_sym_preproc_else_token1] = ACTIONS(2218), [aux_sym_preproc_elif_token1] = ACTIONS(2218), [sym_preproc_directive] = ACTIONS(2218), [anon_sym_LPAREN2] = ACTIONS(2220), [anon_sym_BANG] = ACTIONS(2220), [anon_sym_TILDE] = ACTIONS(2220), [anon_sym_DASH] = ACTIONS(2218), [anon_sym_PLUS] = ACTIONS(2218), [anon_sym_STAR] = ACTIONS(2220), [anon_sym_AMP_AMP] = ACTIONS(2220), [anon_sym_AMP] = ACTIONS(2218), [anon_sym_SEMI] = ACTIONS(2220), [anon_sym_typedef] = ACTIONS(2218), [anon_sym_extern] = ACTIONS(2218), [anon_sym___attribute__] = ACTIONS(2218), [anon_sym_COLON_COLON] = ACTIONS(2220), [anon_sym_LBRACK_LBRACK] = ACTIONS(2220), [anon_sym___declspec] = ACTIONS(2218), [anon_sym___based] = ACTIONS(2218), [anon_sym___cdecl] = ACTIONS(2218), [anon_sym___clrcall] = ACTIONS(2218), [anon_sym___stdcall] = ACTIONS(2218), [anon_sym___fastcall] = ACTIONS(2218), [anon_sym___thiscall] = ACTIONS(2218), [anon_sym___vectorcall] = ACTIONS(2218), [anon_sym_LBRACE] = ACTIONS(2220), [anon_sym_LBRACK] = ACTIONS(2218), [anon_sym_static] = ACTIONS(2218), [anon_sym_register] = ACTIONS(2218), [anon_sym_inline] = ACTIONS(2218), [anon_sym_thread_local] = ACTIONS(2218), [anon_sym_const] = ACTIONS(2218), [anon_sym_volatile] = ACTIONS(2218), [anon_sym_restrict] = ACTIONS(2218), [anon_sym__Atomic] = ACTIONS(2218), [anon_sym_mutable] = ACTIONS(2218), [anon_sym_constexpr] = ACTIONS(2218), [anon_sym_signed] = ACTIONS(2218), [anon_sym_unsigned] = ACTIONS(2218), [anon_sym_long] = ACTIONS(2218), [anon_sym_short] = ACTIONS(2218), [sym_primitive_type] = ACTIONS(2218), [anon_sym_enum] = ACTIONS(2218), [anon_sym_class] = ACTIONS(2218), [anon_sym_struct] = ACTIONS(2218), [anon_sym_union] = ACTIONS(2218), [anon_sym_if] = ACTIONS(2218), [anon_sym_switch] = ACTIONS(2218), [anon_sym_case] = ACTIONS(2218), [anon_sym_default] = ACTIONS(2218), [anon_sym_while] = ACTIONS(2218), [anon_sym_do] = ACTIONS(2218), [anon_sym_for] = ACTIONS(2218), [anon_sym_return] = ACTIONS(2218), [anon_sym_break] = ACTIONS(2218), [anon_sym_continue] = ACTIONS(2218), [anon_sym_goto] = ACTIONS(2218), [anon_sym_DASH_DASH] = ACTIONS(2220), [anon_sym_PLUS_PLUS] = ACTIONS(2220), [anon_sym_sizeof] = ACTIONS(2218), [sym_number_literal] = ACTIONS(2220), [anon_sym_L_SQUOTE] = ACTIONS(2220), [anon_sym_u_SQUOTE] = ACTIONS(2220), [anon_sym_U_SQUOTE] = ACTIONS(2220), [anon_sym_u8_SQUOTE] = ACTIONS(2220), [anon_sym_SQUOTE] = ACTIONS(2220), [anon_sym_L_DQUOTE] = ACTIONS(2220), [anon_sym_u_DQUOTE] = ACTIONS(2220), [anon_sym_U_DQUOTE] = ACTIONS(2220), [anon_sym_u8_DQUOTE] = ACTIONS(2220), [anon_sym_DQUOTE] = ACTIONS(2220), [sym_true] = ACTIONS(2218), [sym_false] = ACTIONS(2218), [sym_null] = ACTIONS(2218), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2218), [anon_sym_virtual] = ACTIONS(2218), [anon_sym_explicit] = ACTIONS(2218), [sym_auto] = ACTIONS(2218), [anon_sym_typename] = ACTIONS(2218), [anon_sym_template] = ACTIONS(2218), [anon_sym_operator] = ACTIONS(2218), [anon_sym_delete] = ACTIONS(2218), [anon_sym_throw] = ACTIONS(2218), [anon_sym_namespace] = ACTIONS(2218), [anon_sym_using] = ACTIONS(2218), [anon_sym_static_assert] = ACTIONS(2218), [anon_sym_co_return] = ACTIONS(2218), [anon_sym_co_yield] = ACTIONS(2218), [anon_sym_try] = ACTIONS(2218), [anon_sym_co_await] = ACTIONS(2218), [anon_sym_new] = ACTIONS(2218), [sym_this] = ACTIONS(2218), [sym_nullptr] = ACTIONS(2218), [sym_raw_string_literal] = ACTIONS(2220), }, [419] = { [sym_identifier] = ACTIONS(1763), [aux_sym_preproc_include_token1] = ACTIONS(1763), [aux_sym_preproc_def_token1] = ACTIONS(1763), [aux_sym_preproc_if_token1] = ACTIONS(1763), [aux_sym_preproc_ifdef_token1] = ACTIONS(1763), [aux_sym_preproc_ifdef_token2] = ACTIONS(1763), [sym_preproc_directive] = ACTIONS(1763), [anon_sym_LPAREN2] = ACTIONS(1765), [anon_sym_BANG] = ACTIONS(1765), [anon_sym_TILDE] = ACTIONS(1765), [anon_sym_DASH] = ACTIONS(1763), [anon_sym_PLUS] = ACTIONS(1763), [anon_sym_STAR] = ACTIONS(1765), [anon_sym_AMP_AMP] = ACTIONS(1765), [anon_sym_AMP] = ACTIONS(1763), [anon_sym_SEMI] = ACTIONS(1765), [anon_sym_typedef] = ACTIONS(1763), [anon_sym_extern] = ACTIONS(1763), [anon_sym___attribute__] = ACTIONS(1763), [anon_sym_COLON_COLON] = ACTIONS(1765), [anon_sym_LBRACK_LBRACK] = ACTIONS(1765), [anon_sym___declspec] = ACTIONS(1763), [anon_sym___based] = ACTIONS(1763), [anon_sym___cdecl] = ACTIONS(1763), [anon_sym___clrcall] = ACTIONS(1763), [anon_sym___stdcall] = ACTIONS(1763), [anon_sym___fastcall] = ACTIONS(1763), [anon_sym___thiscall] = ACTIONS(1763), [anon_sym___vectorcall] = ACTIONS(1763), [anon_sym_LBRACE] = ACTIONS(1765), [anon_sym_RBRACE] = ACTIONS(1765), [anon_sym_LBRACK] = ACTIONS(1763), [anon_sym_static] = ACTIONS(1763), [anon_sym_register] = ACTIONS(1763), [anon_sym_inline] = ACTIONS(1763), [anon_sym_thread_local] = ACTIONS(1763), [anon_sym_const] = ACTIONS(1763), [anon_sym_volatile] = ACTIONS(1763), [anon_sym_restrict] = ACTIONS(1763), [anon_sym__Atomic] = ACTIONS(1763), [anon_sym_mutable] = ACTIONS(1763), [anon_sym_constexpr] = ACTIONS(1763), [anon_sym_signed] = ACTIONS(1763), [anon_sym_unsigned] = ACTIONS(1763), [anon_sym_long] = ACTIONS(1763), [anon_sym_short] = ACTIONS(1763), [sym_primitive_type] = ACTIONS(1763), [anon_sym_enum] = ACTIONS(1763), [anon_sym_class] = ACTIONS(1763), [anon_sym_struct] = ACTIONS(1763), [anon_sym_union] = ACTIONS(1763), [anon_sym_if] = ACTIONS(1763), [anon_sym_else] = ACTIONS(1763), [anon_sym_switch] = ACTIONS(1763), [anon_sym_case] = ACTIONS(1763), [anon_sym_default] = ACTIONS(1763), [anon_sym_while] = ACTIONS(1763), [anon_sym_do] = ACTIONS(1763), [anon_sym_for] = ACTIONS(1763), [anon_sym_return] = ACTIONS(1763), [anon_sym_break] = ACTIONS(1763), [anon_sym_continue] = ACTIONS(1763), [anon_sym_goto] = ACTIONS(1763), [anon_sym_DASH_DASH] = ACTIONS(1765), [anon_sym_PLUS_PLUS] = ACTIONS(1765), [anon_sym_sizeof] = ACTIONS(1763), [sym_number_literal] = ACTIONS(1765), [anon_sym_L_SQUOTE] = ACTIONS(1765), [anon_sym_u_SQUOTE] = ACTIONS(1765), [anon_sym_U_SQUOTE] = ACTIONS(1765), [anon_sym_u8_SQUOTE] = ACTIONS(1765), [anon_sym_SQUOTE] = ACTIONS(1765), [anon_sym_L_DQUOTE] = ACTIONS(1765), [anon_sym_u_DQUOTE] = ACTIONS(1765), [anon_sym_U_DQUOTE] = ACTIONS(1765), [anon_sym_u8_DQUOTE] = ACTIONS(1765), [anon_sym_DQUOTE] = ACTIONS(1765), [sym_true] = ACTIONS(1763), [sym_false] = ACTIONS(1763), [sym_null] = ACTIONS(1763), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1763), [anon_sym_virtual] = ACTIONS(1763), [anon_sym_explicit] = ACTIONS(1763), [sym_auto] = ACTIONS(1763), [anon_sym_typename] = ACTIONS(1763), [anon_sym_template] = ACTIONS(1763), [anon_sym_operator] = ACTIONS(1763), [anon_sym_delete] = ACTIONS(1763), [anon_sym_throw] = ACTIONS(1763), [anon_sym_namespace] = ACTIONS(1763), [anon_sym_using] = ACTIONS(1763), [anon_sym_static_assert] = ACTIONS(1763), [anon_sym_co_return] = ACTIONS(1763), [anon_sym_co_yield] = ACTIONS(1763), [anon_sym_try] = ACTIONS(1763), [anon_sym_catch] = ACTIONS(1763), [anon_sym_co_await] = ACTIONS(1763), [anon_sym_new] = ACTIONS(1763), [sym_this] = ACTIONS(1763), [sym_nullptr] = ACTIONS(1763), [sym_raw_string_literal] = ACTIONS(1765), }, [420] = { [ts_builtin_sym_end] = ACTIONS(1758), [sym_identifier] = ACTIONS(1756), [aux_sym_preproc_include_token1] = ACTIONS(1756), [aux_sym_preproc_def_token1] = ACTIONS(1756), [aux_sym_preproc_if_token1] = ACTIONS(1756), [aux_sym_preproc_ifdef_token1] = ACTIONS(1756), [aux_sym_preproc_ifdef_token2] = ACTIONS(1756), [sym_preproc_directive] = ACTIONS(1756), [anon_sym_LPAREN2] = ACTIONS(1758), [anon_sym_BANG] = ACTIONS(1758), [anon_sym_TILDE] = ACTIONS(1758), [anon_sym_DASH] = ACTIONS(1756), [anon_sym_PLUS] = ACTIONS(1756), [anon_sym_STAR] = ACTIONS(1758), [anon_sym_AMP_AMP] = ACTIONS(1758), [anon_sym_AMP] = ACTIONS(1756), [anon_sym_SEMI] = ACTIONS(1758), [anon_sym_typedef] = ACTIONS(1756), [anon_sym_extern] = ACTIONS(1756), [anon_sym___attribute__] = ACTIONS(1756), [anon_sym_COLON_COLON] = ACTIONS(1758), [anon_sym_LBRACK_LBRACK] = ACTIONS(1758), [anon_sym___declspec] = ACTIONS(1756), [anon_sym___based] = ACTIONS(1756), [anon_sym___cdecl] = ACTIONS(1756), [anon_sym___clrcall] = ACTIONS(1756), [anon_sym___stdcall] = ACTIONS(1756), [anon_sym___fastcall] = ACTIONS(1756), [anon_sym___thiscall] = ACTIONS(1756), [anon_sym___vectorcall] = ACTIONS(1756), [anon_sym_LBRACE] = ACTIONS(1758), [anon_sym_LBRACK] = ACTIONS(1756), [anon_sym_static] = ACTIONS(1756), [anon_sym_register] = ACTIONS(1756), [anon_sym_inline] = ACTIONS(1756), [anon_sym_thread_local] = ACTIONS(1756), [anon_sym_const] = ACTIONS(1756), [anon_sym_volatile] = ACTIONS(1756), [anon_sym_restrict] = ACTIONS(1756), [anon_sym__Atomic] = ACTIONS(1756), [anon_sym_mutable] = ACTIONS(1756), [anon_sym_constexpr] = ACTIONS(1756), [anon_sym_signed] = ACTIONS(1756), [anon_sym_unsigned] = ACTIONS(1756), [anon_sym_long] = ACTIONS(1756), [anon_sym_short] = ACTIONS(1756), [sym_primitive_type] = ACTIONS(1756), [anon_sym_enum] = ACTIONS(1756), [anon_sym_class] = ACTIONS(1756), [anon_sym_struct] = ACTIONS(1756), [anon_sym_union] = ACTIONS(1756), [anon_sym_if] = ACTIONS(1756), [anon_sym_else] = ACTIONS(1756), [anon_sym_switch] = ACTIONS(1756), [anon_sym_case] = ACTIONS(1756), [anon_sym_default] = ACTIONS(1756), [anon_sym_while] = ACTIONS(1756), [anon_sym_do] = ACTIONS(1756), [anon_sym_for] = ACTIONS(1756), [anon_sym_return] = ACTIONS(1756), [anon_sym_break] = ACTIONS(1756), [anon_sym_continue] = ACTIONS(1756), [anon_sym_goto] = ACTIONS(1756), [anon_sym_DASH_DASH] = ACTIONS(1758), [anon_sym_PLUS_PLUS] = ACTIONS(1758), [anon_sym_sizeof] = ACTIONS(1756), [sym_number_literal] = ACTIONS(1758), [anon_sym_L_SQUOTE] = ACTIONS(1758), [anon_sym_u_SQUOTE] = ACTIONS(1758), [anon_sym_U_SQUOTE] = ACTIONS(1758), [anon_sym_u8_SQUOTE] = ACTIONS(1758), [anon_sym_SQUOTE] = ACTIONS(1758), [anon_sym_L_DQUOTE] = ACTIONS(1758), [anon_sym_u_DQUOTE] = ACTIONS(1758), [anon_sym_U_DQUOTE] = ACTIONS(1758), [anon_sym_u8_DQUOTE] = ACTIONS(1758), [anon_sym_DQUOTE] = ACTIONS(1758), [sym_true] = ACTIONS(1756), [sym_false] = ACTIONS(1756), [sym_null] = ACTIONS(1756), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1756), [anon_sym_virtual] = ACTIONS(1756), [anon_sym_explicit] = ACTIONS(1756), [sym_auto] = ACTIONS(1756), [anon_sym_typename] = ACTIONS(1756), [anon_sym_template] = ACTIONS(1756), [anon_sym_operator] = ACTIONS(1756), [anon_sym_delete] = ACTIONS(1756), [anon_sym_throw] = ACTIONS(1756), [anon_sym_namespace] = ACTIONS(1756), [anon_sym_using] = ACTIONS(1756), [anon_sym_static_assert] = ACTIONS(1756), [anon_sym_co_return] = ACTIONS(1756), [anon_sym_co_yield] = ACTIONS(1756), [anon_sym_try] = ACTIONS(1756), [anon_sym_catch] = ACTIONS(1756), [anon_sym_co_await] = ACTIONS(1756), [anon_sym_new] = ACTIONS(1756), [sym_this] = ACTIONS(1756), [sym_nullptr] = ACTIONS(1756), [sym_raw_string_literal] = ACTIONS(1758), }, [421] = { [ts_builtin_sym_end] = ACTIONS(1896), [sym_identifier] = ACTIONS(1894), [aux_sym_preproc_include_token1] = ACTIONS(1894), [aux_sym_preproc_def_token1] = ACTIONS(1894), [aux_sym_preproc_if_token1] = ACTIONS(1894), [aux_sym_preproc_ifdef_token1] = ACTIONS(1894), [aux_sym_preproc_ifdef_token2] = ACTIONS(1894), [sym_preproc_directive] = ACTIONS(1894), [anon_sym_LPAREN2] = ACTIONS(1896), [anon_sym_BANG] = ACTIONS(1896), [anon_sym_TILDE] = ACTIONS(1896), [anon_sym_DASH] = ACTIONS(1894), [anon_sym_PLUS] = ACTIONS(1894), [anon_sym_STAR] = ACTIONS(1896), [anon_sym_AMP_AMP] = ACTIONS(1896), [anon_sym_AMP] = ACTIONS(1894), [anon_sym_SEMI] = ACTIONS(1896), [anon_sym_typedef] = ACTIONS(1894), [anon_sym_extern] = ACTIONS(1894), [anon_sym___attribute__] = ACTIONS(1894), [anon_sym_COLON_COLON] = ACTIONS(1896), [anon_sym_LBRACK_LBRACK] = ACTIONS(1896), [anon_sym___declspec] = ACTIONS(1894), [anon_sym___based] = ACTIONS(1894), [anon_sym___cdecl] = ACTIONS(1894), [anon_sym___clrcall] = ACTIONS(1894), [anon_sym___stdcall] = ACTIONS(1894), [anon_sym___fastcall] = ACTIONS(1894), [anon_sym___thiscall] = ACTIONS(1894), [anon_sym___vectorcall] = ACTIONS(1894), [anon_sym_LBRACE] = ACTIONS(1896), [anon_sym_LBRACK] = ACTIONS(1894), [anon_sym_static] = ACTIONS(1894), [anon_sym_register] = ACTIONS(1894), [anon_sym_inline] = ACTIONS(1894), [anon_sym_thread_local] = ACTIONS(1894), [anon_sym_const] = ACTIONS(1894), [anon_sym_volatile] = ACTIONS(1894), [anon_sym_restrict] = ACTIONS(1894), [anon_sym__Atomic] = ACTIONS(1894), [anon_sym_mutable] = ACTIONS(1894), [anon_sym_constexpr] = ACTIONS(1894), [anon_sym_signed] = ACTIONS(1894), [anon_sym_unsigned] = ACTIONS(1894), [anon_sym_long] = ACTIONS(1894), [anon_sym_short] = ACTIONS(1894), [sym_primitive_type] = ACTIONS(1894), [anon_sym_enum] = ACTIONS(1894), [anon_sym_class] = ACTIONS(1894), [anon_sym_struct] = ACTIONS(1894), [anon_sym_union] = ACTIONS(1894), [anon_sym_if] = ACTIONS(1894), [anon_sym_else] = ACTIONS(1894), [anon_sym_switch] = ACTIONS(1894), [anon_sym_case] = ACTIONS(1894), [anon_sym_default] = ACTIONS(1894), [anon_sym_while] = ACTIONS(1894), [anon_sym_do] = ACTIONS(1894), [anon_sym_for] = ACTIONS(1894), [anon_sym_return] = ACTIONS(1894), [anon_sym_break] = ACTIONS(1894), [anon_sym_continue] = ACTIONS(1894), [anon_sym_goto] = ACTIONS(1894), [anon_sym_DASH_DASH] = ACTIONS(1896), [anon_sym_PLUS_PLUS] = ACTIONS(1896), [anon_sym_sizeof] = ACTIONS(1894), [sym_number_literal] = ACTIONS(1896), [anon_sym_L_SQUOTE] = ACTIONS(1896), [anon_sym_u_SQUOTE] = ACTIONS(1896), [anon_sym_U_SQUOTE] = ACTIONS(1896), [anon_sym_u8_SQUOTE] = ACTIONS(1896), [anon_sym_SQUOTE] = ACTIONS(1896), [anon_sym_L_DQUOTE] = ACTIONS(1896), [anon_sym_u_DQUOTE] = ACTIONS(1896), [anon_sym_U_DQUOTE] = ACTIONS(1896), [anon_sym_u8_DQUOTE] = ACTIONS(1896), [anon_sym_DQUOTE] = ACTIONS(1896), [sym_true] = ACTIONS(1894), [sym_false] = ACTIONS(1894), [sym_null] = ACTIONS(1894), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1894), [anon_sym_virtual] = ACTIONS(1894), [anon_sym_explicit] = ACTIONS(1894), [sym_auto] = ACTIONS(1894), [anon_sym_typename] = ACTIONS(1894), [anon_sym_template] = ACTIONS(1894), [anon_sym_operator] = ACTIONS(1894), [anon_sym_delete] = ACTIONS(1894), [anon_sym_throw] = ACTIONS(1894), [anon_sym_namespace] = ACTIONS(1894), [anon_sym_using] = ACTIONS(1894), [anon_sym_static_assert] = ACTIONS(1894), [anon_sym_co_return] = ACTIONS(1894), [anon_sym_co_yield] = ACTIONS(1894), [anon_sym_try] = ACTIONS(1894), [anon_sym_co_await] = ACTIONS(1894), [anon_sym_new] = ACTIONS(1894), [sym_this] = ACTIONS(1894), [sym_nullptr] = ACTIONS(1894), [sym_raw_string_literal] = ACTIONS(1896), }, [422] = { [ts_builtin_sym_end] = ACTIONS(1838), [sym_identifier] = ACTIONS(1836), [aux_sym_preproc_include_token1] = ACTIONS(1836), [aux_sym_preproc_def_token1] = ACTIONS(1836), [aux_sym_preproc_if_token1] = ACTIONS(1836), [aux_sym_preproc_ifdef_token1] = ACTIONS(1836), [aux_sym_preproc_ifdef_token2] = ACTIONS(1836), [sym_preproc_directive] = ACTIONS(1836), [anon_sym_LPAREN2] = ACTIONS(1838), [anon_sym_BANG] = ACTIONS(1838), [anon_sym_TILDE] = ACTIONS(1838), [anon_sym_DASH] = ACTIONS(1836), [anon_sym_PLUS] = ACTIONS(1836), [anon_sym_STAR] = ACTIONS(1838), [anon_sym_AMP_AMP] = ACTIONS(1838), [anon_sym_AMP] = ACTIONS(1836), [anon_sym_SEMI] = ACTIONS(1838), [anon_sym_typedef] = ACTIONS(1836), [anon_sym_extern] = ACTIONS(1836), [anon_sym___attribute__] = ACTIONS(1836), [anon_sym_COLON_COLON] = ACTIONS(1838), [anon_sym_LBRACK_LBRACK] = ACTIONS(1838), [anon_sym___declspec] = ACTIONS(1836), [anon_sym___based] = ACTIONS(1836), [anon_sym___cdecl] = ACTIONS(1836), [anon_sym___clrcall] = ACTIONS(1836), [anon_sym___stdcall] = ACTIONS(1836), [anon_sym___fastcall] = ACTIONS(1836), [anon_sym___thiscall] = ACTIONS(1836), [anon_sym___vectorcall] = ACTIONS(1836), [anon_sym_LBRACE] = ACTIONS(1838), [anon_sym_LBRACK] = ACTIONS(1836), [anon_sym_static] = ACTIONS(1836), [anon_sym_register] = ACTIONS(1836), [anon_sym_inline] = ACTIONS(1836), [anon_sym_thread_local] = ACTIONS(1836), [anon_sym_const] = ACTIONS(1836), [anon_sym_volatile] = ACTIONS(1836), [anon_sym_restrict] = ACTIONS(1836), [anon_sym__Atomic] = ACTIONS(1836), [anon_sym_mutable] = ACTIONS(1836), [anon_sym_constexpr] = ACTIONS(1836), [anon_sym_signed] = ACTIONS(1836), [anon_sym_unsigned] = ACTIONS(1836), [anon_sym_long] = ACTIONS(1836), [anon_sym_short] = ACTIONS(1836), [sym_primitive_type] = ACTIONS(1836), [anon_sym_enum] = ACTIONS(1836), [anon_sym_class] = ACTIONS(1836), [anon_sym_struct] = ACTIONS(1836), [anon_sym_union] = ACTIONS(1836), [anon_sym_if] = ACTIONS(1836), [anon_sym_else] = ACTIONS(1836), [anon_sym_switch] = ACTIONS(1836), [anon_sym_case] = ACTIONS(1836), [anon_sym_default] = ACTIONS(1836), [anon_sym_while] = ACTIONS(1836), [anon_sym_do] = ACTIONS(1836), [anon_sym_for] = ACTIONS(1836), [anon_sym_return] = ACTIONS(1836), [anon_sym_break] = ACTIONS(1836), [anon_sym_continue] = ACTIONS(1836), [anon_sym_goto] = ACTIONS(1836), [anon_sym_DASH_DASH] = ACTIONS(1838), [anon_sym_PLUS_PLUS] = ACTIONS(1838), [anon_sym_sizeof] = ACTIONS(1836), [sym_number_literal] = ACTIONS(1838), [anon_sym_L_SQUOTE] = ACTIONS(1838), [anon_sym_u_SQUOTE] = ACTIONS(1838), [anon_sym_U_SQUOTE] = ACTIONS(1838), [anon_sym_u8_SQUOTE] = ACTIONS(1838), [anon_sym_SQUOTE] = ACTIONS(1838), [anon_sym_L_DQUOTE] = ACTIONS(1838), [anon_sym_u_DQUOTE] = ACTIONS(1838), [anon_sym_U_DQUOTE] = ACTIONS(1838), [anon_sym_u8_DQUOTE] = ACTIONS(1838), [anon_sym_DQUOTE] = ACTIONS(1838), [sym_true] = ACTIONS(1836), [sym_false] = ACTIONS(1836), [sym_null] = ACTIONS(1836), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1836), [anon_sym_virtual] = ACTIONS(1836), [anon_sym_explicit] = ACTIONS(1836), [sym_auto] = ACTIONS(1836), [anon_sym_typename] = ACTIONS(1836), [anon_sym_template] = ACTIONS(1836), [anon_sym_operator] = ACTIONS(1836), [anon_sym_delete] = ACTIONS(1836), [anon_sym_throw] = ACTIONS(1836), [anon_sym_namespace] = ACTIONS(1836), [anon_sym_using] = ACTIONS(1836), [anon_sym_static_assert] = ACTIONS(1836), [anon_sym_co_return] = ACTIONS(1836), [anon_sym_co_yield] = ACTIONS(1836), [anon_sym_try] = ACTIONS(1836), [anon_sym_co_await] = ACTIONS(1836), [anon_sym_new] = ACTIONS(1836), [sym_this] = ACTIONS(1836), [sym_nullptr] = ACTIONS(1836), [sym_raw_string_literal] = ACTIONS(1838), }, [423] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [424] = { [sym_identifier] = ACTIONS(1840), [aux_sym_preproc_include_token1] = ACTIONS(1840), [aux_sym_preproc_def_token1] = ACTIONS(1840), [aux_sym_preproc_if_token1] = ACTIONS(1840), [aux_sym_preproc_if_token2] = ACTIONS(1840), [aux_sym_preproc_ifdef_token1] = ACTIONS(1840), [aux_sym_preproc_ifdef_token2] = ACTIONS(1840), [sym_preproc_directive] = ACTIONS(1840), [anon_sym_LPAREN2] = ACTIONS(1842), [anon_sym_BANG] = ACTIONS(1842), [anon_sym_TILDE] = ACTIONS(1842), [anon_sym_DASH] = ACTIONS(1840), [anon_sym_PLUS] = ACTIONS(1840), [anon_sym_STAR] = ACTIONS(1842), [anon_sym_AMP_AMP] = ACTIONS(1842), [anon_sym_AMP] = ACTIONS(1840), [anon_sym_SEMI] = ACTIONS(1842), [anon_sym_typedef] = ACTIONS(1840), [anon_sym_extern] = ACTIONS(1840), [anon_sym___attribute__] = ACTIONS(1840), [anon_sym_COLON_COLON] = ACTIONS(1842), [anon_sym_LBRACK_LBRACK] = ACTIONS(1842), [anon_sym___declspec] = ACTIONS(1840), [anon_sym___based] = ACTIONS(1840), [anon_sym___cdecl] = ACTIONS(1840), [anon_sym___clrcall] = ACTIONS(1840), [anon_sym___stdcall] = ACTIONS(1840), [anon_sym___fastcall] = ACTIONS(1840), [anon_sym___thiscall] = ACTIONS(1840), [anon_sym___vectorcall] = ACTIONS(1840), [anon_sym_LBRACE] = ACTIONS(1842), [anon_sym_LBRACK] = ACTIONS(1840), [anon_sym_static] = ACTIONS(1840), [anon_sym_register] = ACTIONS(1840), [anon_sym_inline] = ACTIONS(1840), [anon_sym_thread_local] = ACTIONS(1840), [anon_sym_const] = ACTIONS(1840), [anon_sym_volatile] = ACTIONS(1840), [anon_sym_restrict] = ACTIONS(1840), [anon_sym__Atomic] = ACTIONS(1840), [anon_sym_mutable] = ACTIONS(1840), [anon_sym_constexpr] = ACTIONS(1840), [anon_sym_signed] = ACTIONS(1840), [anon_sym_unsigned] = ACTIONS(1840), [anon_sym_long] = ACTIONS(1840), [anon_sym_short] = ACTIONS(1840), [sym_primitive_type] = ACTIONS(1840), [anon_sym_enum] = ACTIONS(1840), [anon_sym_class] = ACTIONS(1840), [anon_sym_struct] = ACTIONS(1840), [anon_sym_union] = ACTIONS(1840), [anon_sym_if] = ACTIONS(1840), [anon_sym_else] = ACTIONS(1840), [anon_sym_switch] = ACTIONS(1840), [anon_sym_case] = ACTIONS(1840), [anon_sym_default] = ACTIONS(1840), [anon_sym_while] = ACTIONS(1840), [anon_sym_do] = ACTIONS(1840), [anon_sym_for] = ACTIONS(1840), [anon_sym_return] = ACTIONS(1840), [anon_sym_break] = ACTIONS(1840), [anon_sym_continue] = ACTIONS(1840), [anon_sym_goto] = ACTIONS(1840), [anon_sym_DASH_DASH] = ACTIONS(1842), [anon_sym_PLUS_PLUS] = ACTIONS(1842), [anon_sym_sizeof] = ACTIONS(1840), [sym_number_literal] = ACTIONS(1842), [anon_sym_L_SQUOTE] = ACTIONS(1842), [anon_sym_u_SQUOTE] = ACTIONS(1842), [anon_sym_U_SQUOTE] = ACTIONS(1842), [anon_sym_u8_SQUOTE] = ACTIONS(1842), [anon_sym_SQUOTE] = ACTIONS(1842), [anon_sym_L_DQUOTE] = ACTIONS(1842), [anon_sym_u_DQUOTE] = ACTIONS(1842), [anon_sym_U_DQUOTE] = ACTIONS(1842), [anon_sym_u8_DQUOTE] = ACTIONS(1842), [anon_sym_DQUOTE] = ACTIONS(1842), [sym_true] = ACTIONS(1840), [sym_false] = ACTIONS(1840), [sym_null] = ACTIONS(1840), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1840), [anon_sym_virtual] = ACTIONS(1840), [anon_sym_explicit] = ACTIONS(1840), [sym_auto] = ACTIONS(1840), [anon_sym_typename] = ACTIONS(1840), [anon_sym_template] = ACTIONS(1840), [anon_sym_operator] = ACTIONS(1840), [anon_sym_delete] = ACTIONS(1840), [anon_sym_throw] = ACTIONS(1840), [anon_sym_namespace] = ACTIONS(1840), [anon_sym_using] = ACTIONS(1840), [anon_sym_static_assert] = ACTIONS(1840), [anon_sym_co_return] = ACTIONS(1840), [anon_sym_co_yield] = ACTIONS(1840), [anon_sym_try] = ACTIONS(1840), [anon_sym_co_await] = ACTIONS(1840), [anon_sym_new] = ACTIONS(1840), [sym_this] = ACTIONS(1840), [sym_nullptr] = ACTIONS(1840), [sym_raw_string_literal] = ACTIONS(1842), }, [425] = { [sym_identifier] = ACTIONS(1888), [aux_sym_preproc_include_token1] = ACTIONS(1888), [aux_sym_preproc_def_token1] = ACTIONS(1888), [aux_sym_preproc_if_token1] = ACTIONS(1888), [aux_sym_preproc_ifdef_token1] = ACTIONS(1888), [aux_sym_preproc_ifdef_token2] = ACTIONS(1888), [sym_preproc_directive] = ACTIONS(1888), [anon_sym_LPAREN2] = ACTIONS(1890), [anon_sym_BANG] = ACTIONS(1890), [anon_sym_TILDE] = ACTIONS(1890), [anon_sym_DASH] = ACTIONS(1888), [anon_sym_PLUS] = ACTIONS(1888), [anon_sym_STAR] = ACTIONS(1890), [anon_sym_AMP_AMP] = ACTIONS(1890), [anon_sym_AMP] = ACTIONS(1888), [anon_sym_SEMI] = ACTIONS(1890), [anon_sym_typedef] = ACTIONS(1888), [anon_sym_extern] = ACTIONS(1888), [anon_sym___attribute__] = ACTIONS(1888), [anon_sym_COLON_COLON] = ACTIONS(1890), [anon_sym_LBRACK_LBRACK] = ACTIONS(1890), [anon_sym___declspec] = ACTIONS(1888), [anon_sym___based] = ACTIONS(1888), [anon_sym___cdecl] = ACTIONS(1888), [anon_sym___clrcall] = ACTIONS(1888), [anon_sym___stdcall] = ACTIONS(1888), [anon_sym___fastcall] = ACTIONS(1888), [anon_sym___thiscall] = ACTIONS(1888), [anon_sym___vectorcall] = ACTIONS(1888), [anon_sym_LBRACE] = ACTIONS(1890), [anon_sym_RBRACE] = ACTIONS(1890), [anon_sym_LBRACK] = ACTIONS(1888), [anon_sym_static] = ACTIONS(1888), [anon_sym_register] = ACTIONS(1888), [anon_sym_inline] = ACTIONS(1888), [anon_sym_thread_local] = ACTIONS(1888), [anon_sym_const] = ACTIONS(1888), [anon_sym_volatile] = ACTIONS(1888), [anon_sym_restrict] = ACTIONS(1888), [anon_sym__Atomic] = ACTIONS(1888), [anon_sym_mutable] = ACTIONS(1888), [anon_sym_constexpr] = ACTIONS(1888), [anon_sym_signed] = ACTIONS(1888), [anon_sym_unsigned] = ACTIONS(1888), [anon_sym_long] = ACTIONS(1888), [anon_sym_short] = ACTIONS(1888), [sym_primitive_type] = ACTIONS(1888), [anon_sym_enum] = ACTIONS(1888), [anon_sym_class] = ACTIONS(1888), [anon_sym_struct] = ACTIONS(1888), [anon_sym_union] = ACTIONS(1888), [anon_sym_if] = ACTIONS(1888), [anon_sym_else] = ACTIONS(2222), [anon_sym_switch] = ACTIONS(1888), [anon_sym_case] = ACTIONS(1888), [anon_sym_default] = ACTIONS(1888), [anon_sym_while] = ACTIONS(1888), [anon_sym_do] = ACTIONS(1888), [anon_sym_for] = ACTIONS(1888), [anon_sym_return] = ACTIONS(1888), [anon_sym_break] = ACTIONS(1888), [anon_sym_continue] = ACTIONS(1888), [anon_sym_goto] = ACTIONS(1888), [anon_sym_DASH_DASH] = ACTIONS(1890), [anon_sym_PLUS_PLUS] = ACTIONS(1890), [anon_sym_sizeof] = ACTIONS(1888), [sym_number_literal] = ACTIONS(1890), [anon_sym_L_SQUOTE] = ACTIONS(1890), [anon_sym_u_SQUOTE] = ACTIONS(1890), [anon_sym_U_SQUOTE] = ACTIONS(1890), [anon_sym_u8_SQUOTE] = ACTIONS(1890), [anon_sym_SQUOTE] = ACTIONS(1890), [anon_sym_L_DQUOTE] = ACTIONS(1890), [anon_sym_u_DQUOTE] = ACTIONS(1890), [anon_sym_U_DQUOTE] = ACTIONS(1890), [anon_sym_u8_DQUOTE] = ACTIONS(1890), [anon_sym_DQUOTE] = ACTIONS(1890), [sym_true] = ACTIONS(1888), [sym_false] = ACTIONS(1888), [sym_null] = ACTIONS(1888), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1888), [anon_sym_virtual] = ACTIONS(1888), [anon_sym_explicit] = ACTIONS(1888), [sym_auto] = ACTIONS(1888), [anon_sym_typename] = ACTIONS(1888), [anon_sym_template] = ACTIONS(1888), [anon_sym_operator] = ACTIONS(1888), [anon_sym_delete] = ACTIONS(1888), [anon_sym_throw] = ACTIONS(1888), [anon_sym_namespace] = ACTIONS(1888), [anon_sym_using] = ACTIONS(1888), [anon_sym_static_assert] = ACTIONS(1888), [anon_sym_co_return] = ACTIONS(1888), [anon_sym_co_yield] = ACTIONS(1888), [anon_sym_try] = ACTIONS(1888), [anon_sym_co_await] = ACTIONS(1888), [anon_sym_new] = ACTIONS(1888), [sym_this] = ACTIONS(1888), [sym_nullptr] = ACTIONS(1888), [sym_raw_string_literal] = ACTIONS(1890), }, [426] = { [ts_builtin_sym_end] = ACTIONS(1854), [sym_identifier] = ACTIONS(1852), [aux_sym_preproc_include_token1] = ACTIONS(1852), [aux_sym_preproc_def_token1] = ACTIONS(1852), [aux_sym_preproc_if_token1] = ACTIONS(1852), [aux_sym_preproc_ifdef_token1] = ACTIONS(1852), [aux_sym_preproc_ifdef_token2] = ACTIONS(1852), [sym_preproc_directive] = ACTIONS(1852), [anon_sym_LPAREN2] = ACTIONS(1854), [anon_sym_BANG] = ACTIONS(1854), [anon_sym_TILDE] = ACTIONS(1854), [anon_sym_DASH] = ACTIONS(1852), [anon_sym_PLUS] = ACTIONS(1852), [anon_sym_STAR] = ACTIONS(1854), [anon_sym_AMP_AMP] = ACTIONS(1854), [anon_sym_AMP] = ACTIONS(1852), [anon_sym_SEMI] = ACTIONS(1854), [anon_sym_typedef] = ACTIONS(1852), [anon_sym_extern] = ACTIONS(1852), [anon_sym___attribute__] = ACTIONS(1852), [anon_sym_COLON_COLON] = ACTIONS(1854), [anon_sym_LBRACK_LBRACK] = ACTIONS(1854), [anon_sym___declspec] = ACTIONS(1852), [anon_sym___based] = ACTIONS(1852), [anon_sym___cdecl] = ACTIONS(1852), [anon_sym___clrcall] = ACTIONS(1852), [anon_sym___stdcall] = ACTIONS(1852), [anon_sym___fastcall] = ACTIONS(1852), [anon_sym___thiscall] = ACTIONS(1852), [anon_sym___vectorcall] = ACTIONS(1852), [anon_sym_LBRACE] = ACTIONS(1854), [anon_sym_LBRACK] = ACTIONS(1852), [anon_sym_static] = ACTIONS(1852), [anon_sym_register] = ACTIONS(1852), [anon_sym_inline] = ACTIONS(1852), [anon_sym_thread_local] = ACTIONS(1852), [anon_sym_const] = ACTIONS(1852), [anon_sym_volatile] = ACTIONS(1852), [anon_sym_restrict] = ACTIONS(1852), [anon_sym__Atomic] = ACTIONS(1852), [anon_sym_mutable] = ACTIONS(1852), [anon_sym_constexpr] = ACTIONS(1852), [anon_sym_signed] = ACTIONS(1852), [anon_sym_unsigned] = ACTIONS(1852), [anon_sym_long] = ACTIONS(1852), [anon_sym_short] = ACTIONS(1852), [sym_primitive_type] = ACTIONS(1852), [anon_sym_enum] = ACTIONS(1852), [anon_sym_class] = ACTIONS(1852), [anon_sym_struct] = ACTIONS(1852), [anon_sym_union] = ACTIONS(1852), [anon_sym_if] = ACTIONS(1852), [anon_sym_else] = ACTIONS(1852), [anon_sym_switch] = ACTIONS(1852), [anon_sym_case] = ACTIONS(1852), [anon_sym_default] = ACTIONS(1852), [anon_sym_while] = ACTIONS(1852), [anon_sym_do] = ACTIONS(1852), [anon_sym_for] = ACTIONS(1852), [anon_sym_return] = ACTIONS(1852), [anon_sym_break] = ACTIONS(1852), [anon_sym_continue] = ACTIONS(1852), [anon_sym_goto] = ACTIONS(1852), [anon_sym_DASH_DASH] = ACTIONS(1854), [anon_sym_PLUS_PLUS] = ACTIONS(1854), [anon_sym_sizeof] = ACTIONS(1852), [sym_number_literal] = ACTIONS(1854), [anon_sym_L_SQUOTE] = ACTIONS(1854), [anon_sym_u_SQUOTE] = ACTIONS(1854), [anon_sym_U_SQUOTE] = ACTIONS(1854), [anon_sym_u8_SQUOTE] = ACTIONS(1854), [anon_sym_SQUOTE] = ACTIONS(1854), [anon_sym_L_DQUOTE] = ACTIONS(1854), [anon_sym_u_DQUOTE] = ACTIONS(1854), [anon_sym_U_DQUOTE] = ACTIONS(1854), [anon_sym_u8_DQUOTE] = ACTIONS(1854), [anon_sym_DQUOTE] = ACTIONS(1854), [sym_true] = ACTIONS(1852), [sym_false] = ACTIONS(1852), [sym_null] = ACTIONS(1852), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1852), [anon_sym_virtual] = ACTIONS(1852), [anon_sym_explicit] = ACTIONS(1852), [sym_auto] = ACTIONS(1852), [anon_sym_typename] = ACTIONS(1852), [anon_sym_template] = ACTIONS(1852), [anon_sym_operator] = ACTIONS(1852), [anon_sym_delete] = ACTIONS(1852), [anon_sym_throw] = ACTIONS(1852), [anon_sym_namespace] = ACTIONS(1852), [anon_sym_using] = ACTIONS(1852), [anon_sym_static_assert] = ACTIONS(1852), [anon_sym_co_return] = ACTIONS(1852), [anon_sym_co_yield] = ACTIONS(1852), [anon_sym_try] = ACTIONS(1852), [anon_sym_co_await] = ACTIONS(1852), [anon_sym_new] = ACTIONS(1852), [sym_this] = ACTIONS(1852), [sym_nullptr] = ACTIONS(1852), [sym_raw_string_literal] = ACTIONS(1854), }, [427] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [428] = { [sym_identifier] = ACTIONS(1894), [aux_sym_preproc_include_token1] = ACTIONS(1894), [aux_sym_preproc_def_token1] = ACTIONS(1894), [aux_sym_preproc_if_token1] = ACTIONS(1894), [aux_sym_preproc_ifdef_token1] = ACTIONS(1894), [aux_sym_preproc_ifdef_token2] = ACTIONS(1894), [sym_preproc_directive] = ACTIONS(1894), [anon_sym_LPAREN2] = ACTIONS(1896), [anon_sym_BANG] = ACTIONS(1896), [anon_sym_TILDE] = ACTIONS(1896), [anon_sym_DASH] = ACTIONS(1894), [anon_sym_PLUS] = ACTIONS(1894), [anon_sym_STAR] = ACTIONS(1896), [anon_sym_AMP_AMP] = ACTIONS(1896), [anon_sym_AMP] = ACTIONS(1894), [anon_sym_SEMI] = ACTIONS(1896), [anon_sym_typedef] = ACTIONS(1894), [anon_sym_extern] = ACTIONS(1894), [anon_sym___attribute__] = ACTIONS(1894), [anon_sym_COLON_COLON] = ACTIONS(1896), [anon_sym_LBRACK_LBRACK] = ACTIONS(1896), [anon_sym___declspec] = ACTIONS(1894), [anon_sym___based] = ACTIONS(1894), [anon_sym___cdecl] = ACTIONS(1894), [anon_sym___clrcall] = ACTIONS(1894), [anon_sym___stdcall] = ACTIONS(1894), [anon_sym___fastcall] = ACTIONS(1894), [anon_sym___thiscall] = ACTIONS(1894), [anon_sym___vectorcall] = ACTIONS(1894), [anon_sym_LBRACE] = ACTIONS(1896), [anon_sym_RBRACE] = ACTIONS(1896), [anon_sym_LBRACK] = ACTIONS(1894), [anon_sym_static] = ACTIONS(1894), [anon_sym_register] = ACTIONS(1894), [anon_sym_inline] = ACTIONS(1894), [anon_sym_thread_local] = ACTIONS(1894), [anon_sym_const] = ACTIONS(1894), [anon_sym_volatile] = ACTIONS(1894), [anon_sym_restrict] = ACTIONS(1894), [anon_sym__Atomic] = ACTIONS(1894), [anon_sym_mutable] = ACTIONS(1894), [anon_sym_constexpr] = ACTIONS(1894), [anon_sym_signed] = ACTIONS(1894), [anon_sym_unsigned] = ACTIONS(1894), [anon_sym_long] = ACTIONS(1894), [anon_sym_short] = ACTIONS(1894), [sym_primitive_type] = ACTIONS(1894), [anon_sym_enum] = ACTIONS(1894), [anon_sym_class] = ACTIONS(1894), [anon_sym_struct] = ACTIONS(1894), [anon_sym_union] = ACTIONS(1894), [anon_sym_if] = ACTIONS(1894), [anon_sym_else] = ACTIONS(1894), [anon_sym_switch] = ACTIONS(1894), [anon_sym_case] = ACTIONS(1894), [anon_sym_default] = ACTIONS(1894), [anon_sym_while] = ACTIONS(1894), [anon_sym_do] = ACTIONS(1894), [anon_sym_for] = ACTIONS(1894), [anon_sym_return] = ACTIONS(1894), [anon_sym_break] = ACTIONS(1894), [anon_sym_continue] = ACTIONS(1894), [anon_sym_goto] = ACTIONS(1894), [anon_sym_DASH_DASH] = ACTIONS(1896), [anon_sym_PLUS_PLUS] = ACTIONS(1896), [anon_sym_sizeof] = ACTIONS(1894), [sym_number_literal] = ACTIONS(1896), [anon_sym_L_SQUOTE] = ACTIONS(1896), [anon_sym_u_SQUOTE] = ACTIONS(1896), [anon_sym_U_SQUOTE] = ACTIONS(1896), [anon_sym_u8_SQUOTE] = ACTIONS(1896), [anon_sym_SQUOTE] = ACTIONS(1896), [anon_sym_L_DQUOTE] = ACTIONS(1896), [anon_sym_u_DQUOTE] = ACTIONS(1896), [anon_sym_U_DQUOTE] = ACTIONS(1896), [anon_sym_u8_DQUOTE] = ACTIONS(1896), [anon_sym_DQUOTE] = ACTIONS(1896), [sym_true] = ACTIONS(1894), [sym_false] = ACTIONS(1894), [sym_null] = ACTIONS(1894), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1894), [anon_sym_virtual] = ACTIONS(1894), [anon_sym_explicit] = ACTIONS(1894), [sym_auto] = ACTIONS(1894), [anon_sym_typename] = ACTIONS(1894), [anon_sym_template] = ACTIONS(1894), [anon_sym_operator] = ACTIONS(1894), [anon_sym_delete] = ACTIONS(1894), [anon_sym_throw] = ACTIONS(1894), [anon_sym_namespace] = ACTIONS(1894), [anon_sym_using] = ACTIONS(1894), [anon_sym_static_assert] = ACTIONS(1894), [anon_sym_co_return] = ACTIONS(1894), [anon_sym_co_yield] = ACTIONS(1894), [anon_sym_try] = ACTIONS(1894), [anon_sym_co_await] = ACTIONS(1894), [anon_sym_new] = ACTIONS(1894), [sym_this] = ACTIONS(1894), [sym_nullptr] = ACTIONS(1894), [sym_raw_string_literal] = ACTIONS(1896), }, [429] = { [ts_builtin_sym_end] = ACTIONS(1850), [sym_identifier] = ACTIONS(1848), [aux_sym_preproc_include_token1] = ACTIONS(1848), [aux_sym_preproc_def_token1] = ACTIONS(1848), [aux_sym_preproc_if_token1] = ACTIONS(1848), [aux_sym_preproc_ifdef_token1] = ACTIONS(1848), [aux_sym_preproc_ifdef_token2] = ACTIONS(1848), [sym_preproc_directive] = ACTIONS(1848), [anon_sym_LPAREN2] = ACTIONS(1850), [anon_sym_BANG] = ACTIONS(1850), [anon_sym_TILDE] = ACTIONS(1850), [anon_sym_DASH] = ACTIONS(1848), [anon_sym_PLUS] = ACTIONS(1848), [anon_sym_STAR] = ACTIONS(1850), [anon_sym_AMP_AMP] = ACTIONS(1850), [anon_sym_AMP] = ACTIONS(1848), [anon_sym_SEMI] = ACTIONS(1850), [anon_sym_typedef] = ACTIONS(1848), [anon_sym_extern] = ACTIONS(1848), [anon_sym___attribute__] = ACTIONS(1848), [anon_sym_COLON_COLON] = ACTIONS(1850), [anon_sym_LBRACK_LBRACK] = ACTIONS(1850), [anon_sym___declspec] = ACTIONS(1848), [anon_sym___based] = ACTIONS(1848), [anon_sym___cdecl] = ACTIONS(1848), [anon_sym___clrcall] = ACTIONS(1848), [anon_sym___stdcall] = ACTIONS(1848), [anon_sym___fastcall] = ACTIONS(1848), [anon_sym___thiscall] = ACTIONS(1848), [anon_sym___vectorcall] = ACTIONS(1848), [anon_sym_LBRACE] = ACTIONS(1850), [anon_sym_LBRACK] = ACTIONS(1848), [anon_sym_static] = ACTIONS(1848), [anon_sym_register] = ACTIONS(1848), [anon_sym_inline] = ACTIONS(1848), [anon_sym_thread_local] = ACTIONS(1848), [anon_sym_const] = ACTIONS(1848), [anon_sym_volatile] = ACTIONS(1848), [anon_sym_restrict] = ACTIONS(1848), [anon_sym__Atomic] = ACTIONS(1848), [anon_sym_mutable] = ACTIONS(1848), [anon_sym_constexpr] = ACTIONS(1848), [anon_sym_signed] = ACTIONS(1848), [anon_sym_unsigned] = ACTIONS(1848), [anon_sym_long] = ACTIONS(1848), [anon_sym_short] = ACTIONS(1848), [sym_primitive_type] = ACTIONS(1848), [anon_sym_enum] = ACTIONS(1848), [anon_sym_class] = ACTIONS(1848), [anon_sym_struct] = ACTIONS(1848), [anon_sym_union] = ACTIONS(1848), [anon_sym_if] = ACTIONS(1848), [anon_sym_else] = ACTIONS(1848), [anon_sym_switch] = ACTIONS(1848), [anon_sym_case] = ACTIONS(1848), [anon_sym_default] = ACTIONS(1848), [anon_sym_while] = ACTIONS(1848), [anon_sym_do] = ACTIONS(1848), [anon_sym_for] = ACTIONS(1848), [anon_sym_return] = ACTIONS(1848), [anon_sym_break] = ACTIONS(1848), [anon_sym_continue] = ACTIONS(1848), [anon_sym_goto] = ACTIONS(1848), [anon_sym_DASH_DASH] = ACTIONS(1850), [anon_sym_PLUS_PLUS] = ACTIONS(1850), [anon_sym_sizeof] = ACTIONS(1848), [sym_number_literal] = ACTIONS(1850), [anon_sym_L_SQUOTE] = ACTIONS(1850), [anon_sym_u_SQUOTE] = ACTIONS(1850), [anon_sym_U_SQUOTE] = ACTIONS(1850), [anon_sym_u8_SQUOTE] = ACTIONS(1850), [anon_sym_SQUOTE] = ACTIONS(1850), [anon_sym_L_DQUOTE] = ACTIONS(1850), [anon_sym_u_DQUOTE] = ACTIONS(1850), [anon_sym_U_DQUOTE] = ACTIONS(1850), [anon_sym_u8_DQUOTE] = ACTIONS(1850), [anon_sym_DQUOTE] = ACTIONS(1850), [sym_true] = ACTIONS(1848), [sym_false] = ACTIONS(1848), [sym_null] = ACTIONS(1848), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1848), [anon_sym_virtual] = ACTIONS(1848), [anon_sym_explicit] = ACTIONS(1848), [sym_auto] = ACTIONS(1848), [anon_sym_typename] = ACTIONS(1848), [anon_sym_template] = ACTIONS(1848), [anon_sym_operator] = ACTIONS(1848), [anon_sym_delete] = ACTIONS(1848), [anon_sym_throw] = ACTIONS(1848), [anon_sym_namespace] = ACTIONS(1848), [anon_sym_using] = ACTIONS(1848), [anon_sym_static_assert] = ACTIONS(1848), [anon_sym_co_return] = ACTIONS(1848), [anon_sym_co_yield] = ACTIONS(1848), [anon_sym_try] = ACTIONS(1848), [anon_sym_co_await] = ACTIONS(1848), [anon_sym_new] = ACTIONS(1848), [sym_this] = ACTIONS(1848), [sym_nullptr] = ACTIONS(1848), [sym_raw_string_literal] = ACTIONS(1850), }, [430] = { [ts_builtin_sym_end] = ACTIONS(1882), [sym_identifier] = ACTIONS(1880), [aux_sym_preproc_include_token1] = ACTIONS(1880), [aux_sym_preproc_def_token1] = ACTIONS(1880), [aux_sym_preproc_if_token1] = ACTIONS(1880), [aux_sym_preproc_ifdef_token1] = ACTIONS(1880), [aux_sym_preproc_ifdef_token2] = ACTIONS(1880), [sym_preproc_directive] = ACTIONS(1880), [anon_sym_LPAREN2] = ACTIONS(1882), [anon_sym_BANG] = ACTIONS(1882), [anon_sym_TILDE] = ACTIONS(1882), [anon_sym_DASH] = ACTIONS(1880), [anon_sym_PLUS] = ACTIONS(1880), [anon_sym_STAR] = ACTIONS(1882), [anon_sym_AMP_AMP] = ACTIONS(1882), [anon_sym_AMP] = ACTIONS(1880), [anon_sym_SEMI] = ACTIONS(1882), [anon_sym_typedef] = ACTIONS(1880), [anon_sym_extern] = ACTIONS(1880), [anon_sym___attribute__] = ACTIONS(1880), [anon_sym_COLON_COLON] = ACTIONS(1882), [anon_sym_LBRACK_LBRACK] = ACTIONS(1882), [anon_sym___declspec] = ACTIONS(1880), [anon_sym___based] = ACTIONS(1880), [anon_sym___cdecl] = ACTIONS(1880), [anon_sym___clrcall] = ACTIONS(1880), [anon_sym___stdcall] = ACTIONS(1880), [anon_sym___fastcall] = ACTIONS(1880), [anon_sym___thiscall] = ACTIONS(1880), [anon_sym___vectorcall] = ACTIONS(1880), [anon_sym_LBRACE] = ACTIONS(1882), [anon_sym_LBRACK] = ACTIONS(1880), [anon_sym_static] = ACTIONS(1880), [anon_sym_register] = ACTIONS(1880), [anon_sym_inline] = ACTIONS(1880), [anon_sym_thread_local] = ACTIONS(1880), [anon_sym_const] = ACTIONS(1880), [anon_sym_volatile] = ACTIONS(1880), [anon_sym_restrict] = ACTIONS(1880), [anon_sym__Atomic] = ACTIONS(1880), [anon_sym_mutable] = ACTIONS(1880), [anon_sym_constexpr] = ACTIONS(1880), [anon_sym_signed] = ACTIONS(1880), [anon_sym_unsigned] = ACTIONS(1880), [anon_sym_long] = ACTIONS(1880), [anon_sym_short] = ACTIONS(1880), [sym_primitive_type] = ACTIONS(1880), [anon_sym_enum] = ACTIONS(1880), [anon_sym_class] = ACTIONS(1880), [anon_sym_struct] = ACTIONS(1880), [anon_sym_union] = ACTIONS(1880), [anon_sym_if] = ACTIONS(1880), [anon_sym_else] = ACTIONS(1880), [anon_sym_switch] = ACTIONS(1880), [anon_sym_case] = ACTIONS(1880), [anon_sym_default] = ACTIONS(1880), [anon_sym_while] = ACTIONS(1880), [anon_sym_do] = ACTIONS(1880), [anon_sym_for] = ACTIONS(1880), [anon_sym_return] = ACTIONS(1880), [anon_sym_break] = ACTIONS(1880), [anon_sym_continue] = ACTIONS(1880), [anon_sym_goto] = ACTIONS(1880), [anon_sym_DASH_DASH] = ACTIONS(1882), [anon_sym_PLUS_PLUS] = ACTIONS(1882), [anon_sym_sizeof] = ACTIONS(1880), [sym_number_literal] = ACTIONS(1882), [anon_sym_L_SQUOTE] = ACTIONS(1882), [anon_sym_u_SQUOTE] = ACTIONS(1882), [anon_sym_U_SQUOTE] = ACTIONS(1882), [anon_sym_u8_SQUOTE] = ACTIONS(1882), [anon_sym_SQUOTE] = ACTIONS(1882), [anon_sym_L_DQUOTE] = ACTIONS(1882), [anon_sym_u_DQUOTE] = ACTIONS(1882), [anon_sym_U_DQUOTE] = ACTIONS(1882), [anon_sym_u8_DQUOTE] = ACTIONS(1882), [anon_sym_DQUOTE] = ACTIONS(1882), [sym_true] = ACTIONS(1880), [sym_false] = ACTIONS(1880), [sym_null] = ACTIONS(1880), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1880), [anon_sym_virtual] = ACTIONS(1880), [anon_sym_explicit] = ACTIONS(1880), [sym_auto] = ACTIONS(1880), [anon_sym_typename] = ACTIONS(1880), [anon_sym_template] = ACTIONS(1880), [anon_sym_operator] = ACTIONS(1880), [anon_sym_delete] = ACTIONS(1880), [anon_sym_throw] = ACTIONS(1880), [anon_sym_namespace] = ACTIONS(1880), [anon_sym_using] = ACTIONS(1880), [anon_sym_static_assert] = ACTIONS(1880), [anon_sym_co_return] = ACTIONS(1880), [anon_sym_co_yield] = ACTIONS(1880), [anon_sym_try] = ACTIONS(1880), [anon_sym_co_await] = ACTIONS(1880), [anon_sym_new] = ACTIONS(1880), [sym_this] = ACTIONS(1880), [sym_nullptr] = ACTIONS(1880), [sym_raw_string_literal] = ACTIONS(1882), }, [431] = { [sym_identifier] = ACTIONS(1860), [aux_sym_preproc_include_token1] = ACTIONS(1860), [aux_sym_preproc_def_token1] = ACTIONS(1860), [aux_sym_preproc_if_token1] = ACTIONS(1860), [aux_sym_preproc_if_token2] = ACTIONS(1860), [aux_sym_preproc_ifdef_token1] = ACTIONS(1860), [aux_sym_preproc_ifdef_token2] = ACTIONS(1860), [sym_preproc_directive] = ACTIONS(1860), [anon_sym_LPAREN2] = ACTIONS(1862), [anon_sym_BANG] = ACTIONS(1862), [anon_sym_TILDE] = ACTIONS(1862), [anon_sym_DASH] = ACTIONS(1860), [anon_sym_PLUS] = ACTIONS(1860), [anon_sym_STAR] = ACTIONS(1862), [anon_sym_AMP_AMP] = ACTIONS(1862), [anon_sym_AMP] = ACTIONS(1860), [anon_sym_SEMI] = ACTIONS(1862), [anon_sym_typedef] = ACTIONS(1860), [anon_sym_extern] = ACTIONS(1860), [anon_sym___attribute__] = ACTIONS(1860), [anon_sym_COLON_COLON] = ACTIONS(1862), [anon_sym_LBRACK_LBRACK] = ACTIONS(1862), [anon_sym___declspec] = ACTIONS(1860), [anon_sym___based] = ACTIONS(1860), [anon_sym___cdecl] = ACTIONS(1860), [anon_sym___clrcall] = ACTIONS(1860), [anon_sym___stdcall] = ACTIONS(1860), [anon_sym___fastcall] = ACTIONS(1860), [anon_sym___thiscall] = ACTIONS(1860), [anon_sym___vectorcall] = ACTIONS(1860), [anon_sym_LBRACE] = ACTIONS(1862), [anon_sym_LBRACK] = ACTIONS(1860), [anon_sym_static] = ACTIONS(1860), [anon_sym_register] = ACTIONS(1860), [anon_sym_inline] = ACTIONS(1860), [anon_sym_thread_local] = ACTIONS(1860), [anon_sym_const] = ACTIONS(1860), [anon_sym_volatile] = ACTIONS(1860), [anon_sym_restrict] = ACTIONS(1860), [anon_sym__Atomic] = ACTIONS(1860), [anon_sym_mutable] = ACTIONS(1860), [anon_sym_constexpr] = ACTIONS(1860), [anon_sym_signed] = ACTIONS(1860), [anon_sym_unsigned] = ACTIONS(1860), [anon_sym_long] = ACTIONS(1860), [anon_sym_short] = ACTIONS(1860), [sym_primitive_type] = ACTIONS(1860), [anon_sym_enum] = ACTIONS(1860), [anon_sym_class] = ACTIONS(1860), [anon_sym_struct] = ACTIONS(1860), [anon_sym_union] = ACTIONS(1860), [anon_sym_if] = ACTIONS(1860), [anon_sym_else] = ACTIONS(1860), [anon_sym_switch] = ACTIONS(1860), [anon_sym_case] = ACTIONS(1860), [anon_sym_default] = ACTIONS(1860), [anon_sym_while] = ACTIONS(1860), [anon_sym_do] = ACTIONS(1860), [anon_sym_for] = ACTIONS(1860), [anon_sym_return] = ACTIONS(1860), [anon_sym_break] = ACTIONS(1860), [anon_sym_continue] = ACTIONS(1860), [anon_sym_goto] = ACTIONS(1860), [anon_sym_DASH_DASH] = ACTIONS(1862), [anon_sym_PLUS_PLUS] = ACTIONS(1862), [anon_sym_sizeof] = ACTIONS(1860), [sym_number_literal] = ACTIONS(1862), [anon_sym_L_SQUOTE] = ACTIONS(1862), [anon_sym_u_SQUOTE] = ACTIONS(1862), [anon_sym_U_SQUOTE] = ACTIONS(1862), [anon_sym_u8_SQUOTE] = ACTIONS(1862), [anon_sym_SQUOTE] = ACTIONS(1862), [anon_sym_L_DQUOTE] = ACTIONS(1862), [anon_sym_u_DQUOTE] = ACTIONS(1862), [anon_sym_U_DQUOTE] = ACTIONS(1862), [anon_sym_u8_DQUOTE] = ACTIONS(1862), [anon_sym_DQUOTE] = ACTIONS(1862), [sym_true] = ACTIONS(1860), [sym_false] = ACTIONS(1860), [sym_null] = ACTIONS(1860), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1860), [anon_sym_virtual] = ACTIONS(1860), [anon_sym_explicit] = ACTIONS(1860), [sym_auto] = ACTIONS(1860), [anon_sym_typename] = ACTIONS(1860), [anon_sym_template] = ACTIONS(1860), [anon_sym_operator] = ACTIONS(1860), [anon_sym_delete] = ACTIONS(1860), [anon_sym_throw] = ACTIONS(1860), [anon_sym_namespace] = ACTIONS(1860), [anon_sym_using] = ACTIONS(1860), [anon_sym_static_assert] = ACTIONS(1860), [anon_sym_co_return] = ACTIONS(1860), [anon_sym_co_yield] = ACTIONS(1860), [anon_sym_try] = ACTIONS(1860), [anon_sym_co_await] = ACTIONS(1860), [anon_sym_new] = ACTIONS(1860), [sym_this] = ACTIONS(1860), [sym_nullptr] = ACTIONS(1860), [sym_raw_string_literal] = ACTIONS(1862), }, [432] = { [sym_identifier] = ACTIONS(1884), [aux_sym_preproc_include_token1] = ACTIONS(1884), [aux_sym_preproc_def_token1] = ACTIONS(1884), [aux_sym_preproc_if_token1] = ACTIONS(1884), [aux_sym_preproc_if_token2] = ACTIONS(1884), [aux_sym_preproc_ifdef_token1] = ACTIONS(1884), [aux_sym_preproc_ifdef_token2] = ACTIONS(1884), [sym_preproc_directive] = ACTIONS(1884), [anon_sym_LPAREN2] = ACTIONS(1886), [anon_sym_BANG] = ACTIONS(1886), [anon_sym_TILDE] = ACTIONS(1886), [anon_sym_DASH] = ACTIONS(1884), [anon_sym_PLUS] = ACTIONS(1884), [anon_sym_STAR] = ACTIONS(1886), [anon_sym_AMP_AMP] = ACTIONS(1886), [anon_sym_AMP] = ACTIONS(1884), [anon_sym_SEMI] = ACTIONS(1886), [anon_sym_typedef] = ACTIONS(1884), [anon_sym_extern] = ACTIONS(1884), [anon_sym___attribute__] = ACTIONS(1884), [anon_sym_COLON_COLON] = ACTIONS(1886), [anon_sym_LBRACK_LBRACK] = ACTIONS(1886), [anon_sym___declspec] = ACTIONS(1884), [anon_sym___based] = ACTIONS(1884), [anon_sym___cdecl] = ACTIONS(1884), [anon_sym___clrcall] = ACTIONS(1884), [anon_sym___stdcall] = ACTIONS(1884), [anon_sym___fastcall] = ACTIONS(1884), [anon_sym___thiscall] = ACTIONS(1884), [anon_sym___vectorcall] = ACTIONS(1884), [anon_sym_LBRACE] = ACTIONS(1886), [anon_sym_LBRACK] = ACTIONS(1884), [anon_sym_static] = ACTIONS(1884), [anon_sym_register] = ACTIONS(1884), [anon_sym_inline] = ACTIONS(1884), [anon_sym_thread_local] = ACTIONS(1884), [anon_sym_const] = ACTIONS(1884), [anon_sym_volatile] = ACTIONS(1884), [anon_sym_restrict] = ACTIONS(1884), [anon_sym__Atomic] = ACTIONS(1884), [anon_sym_mutable] = ACTIONS(1884), [anon_sym_constexpr] = ACTIONS(1884), [anon_sym_signed] = ACTIONS(1884), [anon_sym_unsigned] = ACTIONS(1884), [anon_sym_long] = ACTIONS(1884), [anon_sym_short] = ACTIONS(1884), [sym_primitive_type] = ACTIONS(1884), [anon_sym_enum] = ACTIONS(1884), [anon_sym_class] = ACTIONS(1884), [anon_sym_struct] = ACTIONS(1884), [anon_sym_union] = ACTIONS(1884), [anon_sym_if] = ACTIONS(1884), [anon_sym_else] = ACTIONS(1884), [anon_sym_switch] = ACTIONS(1884), [anon_sym_case] = ACTIONS(1884), [anon_sym_default] = ACTIONS(1884), [anon_sym_while] = ACTIONS(1884), [anon_sym_do] = ACTIONS(1884), [anon_sym_for] = ACTIONS(1884), [anon_sym_return] = ACTIONS(1884), [anon_sym_break] = ACTIONS(1884), [anon_sym_continue] = ACTIONS(1884), [anon_sym_goto] = ACTIONS(1884), [anon_sym_DASH_DASH] = ACTIONS(1886), [anon_sym_PLUS_PLUS] = ACTIONS(1886), [anon_sym_sizeof] = ACTIONS(1884), [sym_number_literal] = ACTIONS(1886), [anon_sym_L_SQUOTE] = ACTIONS(1886), [anon_sym_u_SQUOTE] = ACTIONS(1886), [anon_sym_U_SQUOTE] = ACTIONS(1886), [anon_sym_u8_SQUOTE] = ACTIONS(1886), [anon_sym_SQUOTE] = ACTIONS(1886), [anon_sym_L_DQUOTE] = ACTIONS(1886), [anon_sym_u_DQUOTE] = ACTIONS(1886), [anon_sym_U_DQUOTE] = ACTIONS(1886), [anon_sym_u8_DQUOTE] = ACTIONS(1886), [anon_sym_DQUOTE] = ACTIONS(1886), [sym_true] = ACTIONS(1884), [sym_false] = ACTIONS(1884), [sym_null] = ACTIONS(1884), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1884), [anon_sym_virtual] = ACTIONS(1884), [anon_sym_explicit] = ACTIONS(1884), [sym_auto] = ACTIONS(1884), [anon_sym_typename] = ACTIONS(1884), [anon_sym_template] = ACTIONS(1884), [anon_sym_operator] = ACTIONS(1884), [anon_sym_delete] = ACTIONS(1884), [anon_sym_throw] = ACTIONS(1884), [anon_sym_namespace] = ACTIONS(1884), [anon_sym_using] = ACTIONS(1884), [anon_sym_static_assert] = ACTIONS(1884), [anon_sym_co_return] = ACTIONS(1884), [anon_sym_co_yield] = ACTIONS(1884), [anon_sym_try] = ACTIONS(1884), [anon_sym_co_await] = ACTIONS(1884), [anon_sym_new] = ACTIONS(1884), [sym_this] = ACTIONS(1884), [sym_nullptr] = ACTIONS(1884), [sym_raw_string_literal] = ACTIONS(1886), }, [433] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [434] = { [sym_identifier] = ACTIONS(1824), [aux_sym_preproc_include_token1] = ACTIONS(1824), [aux_sym_preproc_def_token1] = ACTIONS(1824), [aux_sym_preproc_if_token1] = ACTIONS(1824), [aux_sym_preproc_if_token2] = ACTIONS(1824), [aux_sym_preproc_ifdef_token1] = ACTIONS(1824), [aux_sym_preproc_ifdef_token2] = ACTIONS(1824), [sym_preproc_directive] = ACTIONS(1824), [anon_sym_LPAREN2] = ACTIONS(1826), [anon_sym_BANG] = ACTIONS(1826), [anon_sym_TILDE] = ACTIONS(1826), [anon_sym_DASH] = ACTIONS(1824), [anon_sym_PLUS] = ACTIONS(1824), [anon_sym_STAR] = ACTIONS(1826), [anon_sym_AMP_AMP] = ACTIONS(1826), [anon_sym_AMP] = ACTIONS(1824), [anon_sym_SEMI] = ACTIONS(1826), [anon_sym_typedef] = ACTIONS(1824), [anon_sym_extern] = ACTIONS(1824), [anon_sym___attribute__] = ACTIONS(1824), [anon_sym_COLON_COLON] = ACTIONS(1826), [anon_sym_LBRACK_LBRACK] = ACTIONS(1826), [anon_sym___declspec] = ACTIONS(1824), [anon_sym___based] = ACTIONS(1824), [anon_sym___cdecl] = ACTIONS(1824), [anon_sym___clrcall] = ACTIONS(1824), [anon_sym___stdcall] = ACTIONS(1824), [anon_sym___fastcall] = ACTIONS(1824), [anon_sym___thiscall] = ACTIONS(1824), [anon_sym___vectorcall] = ACTIONS(1824), [anon_sym_LBRACE] = ACTIONS(1826), [anon_sym_LBRACK] = ACTIONS(1824), [anon_sym_static] = ACTIONS(1824), [anon_sym_register] = ACTIONS(1824), [anon_sym_inline] = ACTIONS(1824), [anon_sym_thread_local] = ACTIONS(1824), [anon_sym_const] = ACTIONS(1824), [anon_sym_volatile] = ACTIONS(1824), [anon_sym_restrict] = ACTIONS(1824), [anon_sym__Atomic] = ACTIONS(1824), [anon_sym_mutable] = ACTIONS(1824), [anon_sym_constexpr] = ACTIONS(1824), [anon_sym_signed] = ACTIONS(1824), [anon_sym_unsigned] = ACTIONS(1824), [anon_sym_long] = ACTIONS(1824), [anon_sym_short] = ACTIONS(1824), [sym_primitive_type] = ACTIONS(1824), [anon_sym_enum] = ACTIONS(1824), [anon_sym_class] = ACTIONS(1824), [anon_sym_struct] = ACTIONS(1824), [anon_sym_union] = ACTIONS(1824), [anon_sym_if] = ACTIONS(1824), [anon_sym_else] = ACTIONS(1824), [anon_sym_switch] = ACTIONS(1824), [anon_sym_case] = ACTIONS(1824), [anon_sym_default] = ACTIONS(1824), [anon_sym_while] = ACTIONS(1824), [anon_sym_do] = ACTIONS(1824), [anon_sym_for] = ACTIONS(1824), [anon_sym_return] = ACTIONS(1824), [anon_sym_break] = ACTIONS(1824), [anon_sym_continue] = ACTIONS(1824), [anon_sym_goto] = ACTIONS(1824), [anon_sym_DASH_DASH] = ACTIONS(1826), [anon_sym_PLUS_PLUS] = ACTIONS(1826), [anon_sym_sizeof] = ACTIONS(1824), [sym_number_literal] = ACTIONS(1826), [anon_sym_L_SQUOTE] = ACTIONS(1826), [anon_sym_u_SQUOTE] = ACTIONS(1826), [anon_sym_U_SQUOTE] = ACTIONS(1826), [anon_sym_u8_SQUOTE] = ACTIONS(1826), [anon_sym_SQUOTE] = ACTIONS(1826), [anon_sym_L_DQUOTE] = ACTIONS(1826), [anon_sym_u_DQUOTE] = ACTIONS(1826), [anon_sym_U_DQUOTE] = ACTIONS(1826), [anon_sym_u8_DQUOTE] = ACTIONS(1826), [anon_sym_DQUOTE] = ACTIONS(1826), [sym_true] = ACTIONS(1824), [sym_false] = ACTIONS(1824), [sym_null] = ACTIONS(1824), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1824), [anon_sym_virtual] = ACTIONS(1824), [anon_sym_explicit] = ACTIONS(1824), [sym_auto] = ACTIONS(1824), [anon_sym_typename] = ACTIONS(1824), [anon_sym_template] = ACTIONS(1824), [anon_sym_operator] = ACTIONS(1824), [anon_sym_delete] = ACTIONS(1824), [anon_sym_throw] = ACTIONS(1824), [anon_sym_namespace] = ACTIONS(1824), [anon_sym_using] = ACTIONS(1824), [anon_sym_static_assert] = ACTIONS(1824), [anon_sym_co_return] = ACTIONS(1824), [anon_sym_co_yield] = ACTIONS(1824), [anon_sym_try] = ACTIONS(1824), [anon_sym_co_await] = ACTIONS(1824), [anon_sym_new] = ACTIONS(1824), [sym_this] = ACTIONS(1824), [sym_nullptr] = ACTIONS(1824), [sym_raw_string_literal] = ACTIONS(1826), }, [435] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [436] = { [sym_identifier] = ACTIONS(1756), [aux_sym_preproc_include_token1] = ACTIONS(1756), [aux_sym_preproc_def_token1] = ACTIONS(1756), [anon_sym_COMMA] = ACTIONS(1936), [aux_sym_preproc_if_token1] = ACTIONS(1756), [aux_sym_preproc_ifdef_token1] = ACTIONS(1756), [aux_sym_preproc_ifdef_token2] = ACTIONS(1756), [sym_preproc_directive] = ACTIONS(1756), [anon_sym_LPAREN2] = ACTIONS(1758), [anon_sym_BANG] = ACTIONS(1758), [anon_sym_TILDE] = ACTIONS(1758), [anon_sym_DASH] = ACTIONS(1756), [anon_sym_PLUS] = ACTIONS(1756), [anon_sym_STAR] = ACTIONS(1758), [anon_sym_AMP_AMP] = ACTIONS(1758), [anon_sym_AMP] = ACTIONS(1756), [anon_sym_SEMI] = ACTIONS(1758), [anon_sym_typedef] = ACTIONS(1756), [anon_sym_extern] = ACTIONS(1756), [anon_sym___attribute__] = ACTIONS(1756), [anon_sym_COLON_COLON] = ACTIONS(1758), [anon_sym_LBRACK_LBRACK] = ACTIONS(1758), [anon_sym___declspec] = ACTIONS(1756), [anon_sym___based] = ACTIONS(1756), [anon_sym___cdecl] = ACTIONS(1756), [anon_sym___clrcall] = ACTIONS(1756), [anon_sym___stdcall] = ACTIONS(1756), [anon_sym___fastcall] = ACTIONS(1756), [anon_sym___thiscall] = ACTIONS(1756), [anon_sym___vectorcall] = ACTIONS(1756), [anon_sym_LBRACE] = ACTIONS(1758), [anon_sym_RBRACE] = ACTIONS(1936), [anon_sym_LBRACK] = ACTIONS(1756), [anon_sym_static] = ACTIONS(1756), [anon_sym_register] = ACTIONS(1756), [anon_sym_inline] = ACTIONS(1756), [anon_sym_thread_local] = ACTIONS(1756), [anon_sym_const] = ACTIONS(1756), [anon_sym_volatile] = ACTIONS(1756), [anon_sym_restrict] = ACTIONS(1756), [anon_sym__Atomic] = ACTIONS(1756), [anon_sym_mutable] = ACTIONS(1756), [anon_sym_constexpr] = ACTIONS(1756), [anon_sym_signed] = ACTIONS(1756), [anon_sym_unsigned] = ACTIONS(1756), [anon_sym_long] = ACTIONS(1756), [anon_sym_short] = ACTIONS(1756), [sym_primitive_type] = ACTIONS(1756), [anon_sym_enum] = ACTIONS(1756), [anon_sym_class] = ACTIONS(1756), [anon_sym_struct] = ACTIONS(1756), [anon_sym_union] = ACTIONS(1756), [anon_sym_if] = ACTIONS(1756), [anon_sym_switch] = ACTIONS(1756), [anon_sym_case] = ACTIONS(1756), [anon_sym_default] = ACTIONS(1756), [anon_sym_while] = ACTIONS(1756), [anon_sym_do] = ACTIONS(1756), [anon_sym_for] = ACTIONS(1756), [anon_sym_return] = ACTIONS(1756), [anon_sym_break] = ACTIONS(1756), [anon_sym_continue] = ACTIONS(1756), [anon_sym_goto] = ACTIONS(1756), [anon_sym_DASH_DASH] = ACTIONS(1758), [anon_sym_PLUS_PLUS] = ACTIONS(1758), [anon_sym_sizeof] = ACTIONS(1756), [sym_number_literal] = ACTIONS(1758), [anon_sym_L_SQUOTE] = ACTIONS(1758), [anon_sym_u_SQUOTE] = ACTIONS(1758), [anon_sym_U_SQUOTE] = ACTIONS(1758), [anon_sym_u8_SQUOTE] = ACTIONS(1758), [anon_sym_SQUOTE] = ACTIONS(1758), [anon_sym_L_DQUOTE] = ACTIONS(1758), [anon_sym_u_DQUOTE] = ACTIONS(1758), [anon_sym_U_DQUOTE] = ACTIONS(1758), [anon_sym_u8_DQUOTE] = ACTIONS(1758), [anon_sym_DQUOTE] = ACTIONS(1758), [sym_true] = ACTIONS(1756), [sym_false] = ACTIONS(1756), [sym_null] = ACTIONS(1756), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1756), [anon_sym_virtual] = ACTIONS(1756), [anon_sym_explicit] = ACTIONS(1756), [sym_auto] = ACTIONS(1756), [anon_sym_typename] = ACTIONS(1756), [anon_sym_template] = ACTIONS(1756), [anon_sym_operator] = ACTIONS(1756), [anon_sym_delete] = ACTIONS(1756), [anon_sym_throw] = ACTIONS(1756), [anon_sym_namespace] = ACTIONS(1756), [anon_sym_using] = ACTIONS(1756), [anon_sym_static_assert] = ACTIONS(1756), [anon_sym_co_return] = ACTIONS(1756), [anon_sym_co_yield] = ACTIONS(1756), [anon_sym_try] = ACTIONS(1756), [anon_sym_co_await] = ACTIONS(1756), [anon_sym_new] = ACTIONS(1756), [sym_this] = ACTIONS(1756), [sym_nullptr] = ACTIONS(1756), [sym_raw_string_literal] = ACTIONS(1758), }, [437] = { [ts_builtin_sym_end] = ACTIONS(1878), [sym_identifier] = ACTIONS(1876), [aux_sym_preproc_include_token1] = ACTIONS(1876), [aux_sym_preproc_def_token1] = ACTIONS(1876), [aux_sym_preproc_if_token1] = ACTIONS(1876), [aux_sym_preproc_ifdef_token1] = ACTIONS(1876), [aux_sym_preproc_ifdef_token2] = ACTIONS(1876), [sym_preproc_directive] = ACTIONS(1876), [anon_sym_LPAREN2] = ACTIONS(1878), [anon_sym_BANG] = ACTIONS(1878), [anon_sym_TILDE] = ACTIONS(1878), [anon_sym_DASH] = ACTIONS(1876), [anon_sym_PLUS] = ACTIONS(1876), [anon_sym_STAR] = ACTIONS(1878), [anon_sym_AMP_AMP] = ACTIONS(1878), [anon_sym_AMP] = ACTIONS(1876), [anon_sym_SEMI] = ACTIONS(1878), [anon_sym_typedef] = ACTIONS(1876), [anon_sym_extern] = ACTIONS(1876), [anon_sym___attribute__] = ACTIONS(1876), [anon_sym_COLON_COLON] = ACTIONS(1878), [anon_sym_LBRACK_LBRACK] = ACTIONS(1878), [anon_sym___declspec] = ACTIONS(1876), [anon_sym___based] = ACTIONS(1876), [anon_sym___cdecl] = ACTIONS(1876), [anon_sym___clrcall] = ACTIONS(1876), [anon_sym___stdcall] = ACTIONS(1876), [anon_sym___fastcall] = ACTIONS(1876), [anon_sym___thiscall] = ACTIONS(1876), [anon_sym___vectorcall] = ACTIONS(1876), [anon_sym_LBRACE] = ACTIONS(1878), [anon_sym_LBRACK] = ACTIONS(1876), [anon_sym_static] = ACTIONS(1876), [anon_sym_register] = ACTIONS(1876), [anon_sym_inline] = ACTIONS(1876), [anon_sym_thread_local] = ACTIONS(1876), [anon_sym_const] = ACTIONS(1876), [anon_sym_volatile] = ACTIONS(1876), [anon_sym_restrict] = ACTIONS(1876), [anon_sym__Atomic] = ACTIONS(1876), [anon_sym_mutable] = ACTIONS(1876), [anon_sym_constexpr] = ACTIONS(1876), [anon_sym_signed] = ACTIONS(1876), [anon_sym_unsigned] = ACTIONS(1876), [anon_sym_long] = ACTIONS(1876), [anon_sym_short] = ACTIONS(1876), [sym_primitive_type] = ACTIONS(1876), [anon_sym_enum] = ACTIONS(1876), [anon_sym_class] = ACTIONS(1876), [anon_sym_struct] = ACTIONS(1876), [anon_sym_union] = ACTIONS(1876), [anon_sym_if] = ACTIONS(1876), [anon_sym_else] = ACTIONS(1876), [anon_sym_switch] = ACTIONS(1876), [anon_sym_case] = ACTIONS(1876), [anon_sym_default] = ACTIONS(1876), [anon_sym_while] = ACTIONS(1876), [anon_sym_do] = ACTIONS(1876), [anon_sym_for] = ACTIONS(1876), [anon_sym_return] = ACTIONS(1876), [anon_sym_break] = ACTIONS(1876), [anon_sym_continue] = ACTIONS(1876), [anon_sym_goto] = ACTIONS(1876), [anon_sym_DASH_DASH] = ACTIONS(1878), [anon_sym_PLUS_PLUS] = ACTIONS(1878), [anon_sym_sizeof] = ACTIONS(1876), [sym_number_literal] = ACTIONS(1878), [anon_sym_L_SQUOTE] = ACTIONS(1878), [anon_sym_u_SQUOTE] = ACTIONS(1878), [anon_sym_U_SQUOTE] = ACTIONS(1878), [anon_sym_u8_SQUOTE] = ACTIONS(1878), [anon_sym_SQUOTE] = ACTIONS(1878), [anon_sym_L_DQUOTE] = ACTIONS(1878), [anon_sym_u_DQUOTE] = ACTIONS(1878), [anon_sym_U_DQUOTE] = ACTIONS(1878), [anon_sym_u8_DQUOTE] = ACTIONS(1878), [anon_sym_DQUOTE] = ACTIONS(1878), [sym_true] = ACTIONS(1876), [sym_false] = ACTIONS(1876), [sym_null] = ACTIONS(1876), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1876), [anon_sym_virtual] = ACTIONS(1876), [anon_sym_explicit] = ACTIONS(1876), [sym_auto] = ACTIONS(1876), [anon_sym_typename] = ACTIONS(1876), [anon_sym_template] = ACTIONS(1876), [anon_sym_operator] = ACTIONS(1876), [anon_sym_delete] = ACTIONS(1876), [anon_sym_throw] = ACTIONS(1876), [anon_sym_namespace] = ACTIONS(1876), [anon_sym_using] = ACTIONS(1876), [anon_sym_static_assert] = ACTIONS(1876), [anon_sym_co_return] = ACTIONS(1876), [anon_sym_co_yield] = ACTIONS(1876), [anon_sym_try] = ACTIONS(1876), [anon_sym_co_await] = ACTIONS(1876), [anon_sym_new] = ACTIONS(1876), [sym_this] = ACTIONS(1876), [sym_nullptr] = ACTIONS(1876), [sym_raw_string_literal] = ACTIONS(1878), }, [438] = { [sym_identifier] = ACTIONS(1828), [aux_sym_preproc_include_token1] = ACTIONS(1828), [aux_sym_preproc_def_token1] = ACTIONS(1828), [aux_sym_preproc_if_token1] = ACTIONS(1828), [aux_sym_preproc_if_token2] = ACTIONS(1828), [aux_sym_preproc_ifdef_token1] = ACTIONS(1828), [aux_sym_preproc_ifdef_token2] = ACTIONS(1828), [sym_preproc_directive] = ACTIONS(1828), [anon_sym_LPAREN2] = ACTIONS(1830), [anon_sym_BANG] = ACTIONS(1830), [anon_sym_TILDE] = ACTIONS(1830), [anon_sym_DASH] = ACTIONS(1828), [anon_sym_PLUS] = ACTIONS(1828), [anon_sym_STAR] = ACTIONS(1830), [anon_sym_AMP_AMP] = ACTIONS(1830), [anon_sym_AMP] = ACTIONS(1828), [anon_sym_SEMI] = ACTIONS(1830), [anon_sym_typedef] = ACTIONS(1828), [anon_sym_extern] = ACTIONS(1828), [anon_sym___attribute__] = ACTIONS(1828), [anon_sym_COLON_COLON] = ACTIONS(1830), [anon_sym_LBRACK_LBRACK] = ACTIONS(1830), [anon_sym___declspec] = ACTIONS(1828), [anon_sym___based] = ACTIONS(1828), [anon_sym___cdecl] = ACTIONS(1828), [anon_sym___clrcall] = ACTIONS(1828), [anon_sym___stdcall] = ACTIONS(1828), [anon_sym___fastcall] = ACTIONS(1828), [anon_sym___thiscall] = ACTIONS(1828), [anon_sym___vectorcall] = ACTIONS(1828), [anon_sym_LBRACE] = ACTIONS(1830), [anon_sym_LBRACK] = ACTIONS(1828), [anon_sym_static] = ACTIONS(1828), [anon_sym_register] = ACTIONS(1828), [anon_sym_inline] = ACTIONS(1828), [anon_sym_thread_local] = ACTIONS(1828), [anon_sym_const] = ACTIONS(1828), [anon_sym_volatile] = ACTIONS(1828), [anon_sym_restrict] = ACTIONS(1828), [anon_sym__Atomic] = ACTIONS(1828), [anon_sym_mutable] = ACTIONS(1828), [anon_sym_constexpr] = ACTIONS(1828), [anon_sym_signed] = ACTIONS(1828), [anon_sym_unsigned] = ACTIONS(1828), [anon_sym_long] = ACTIONS(1828), [anon_sym_short] = ACTIONS(1828), [sym_primitive_type] = ACTIONS(1828), [anon_sym_enum] = ACTIONS(1828), [anon_sym_class] = ACTIONS(1828), [anon_sym_struct] = ACTIONS(1828), [anon_sym_union] = ACTIONS(1828), [anon_sym_if] = ACTIONS(1828), [anon_sym_else] = ACTIONS(1828), [anon_sym_switch] = ACTIONS(1828), [anon_sym_case] = ACTIONS(1828), [anon_sym_default] = ACTIONS(1828), [anon_sym_while] = ACTIONS(1828), [anon_sym_do] = ACTIONS(1828), [anon_sym_for] = ACTIONS(1828), [anon_sym_return] = ACTIONS(1828), [anon_sym_break] = ACTIONS(1828), [anon_sym_continue] = ACTIONS(1828), [anon_sym_goto] = ACTIONS(1828), [anon_sym_DASH_DASH] = ACTIONS(1830), [anon_sym_PLUS_PLUS] = ACTIONS(1830), [anon_sym_sizeof] = ACTIONS(1828), [sym_number_literal] = ACTIONS(1830), [anon_sym_L_SQUOTE] = ACTIONS(1830), [anon_sym_u_SQUOTE] = ACTIONS(1830), [anon_sym_U_SQUOTE] = ACTIONS(1830), [anon_sym_u8_SQUOTE] = ACTIONS(1830), [anon_sym_SQUOTE] = ACTIONS(1830), [anon_sym_L_DQUOTE] = ACTIONS(1830), [anon_sym_u_DQUOTE] = ACTIONS(1830), [anon_sym_U_DQUOTE] = ACTIONS(1830), [anon_sym_u8_DQUOTE] = ACTIONS(1830), [anon_sym_DQUOTE] = ACTIONS(1830), [sym_true] = ACTIONS(1828), [sym_false] = ACTIONS(1828), [sym_null] = ACTIONS(1828), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1828), [anon_sym_virtual] = ACTIONS(1828), [anon_sym_explicit] = ACTIONS(1828), [sym_auto] = ACTIONS(1828), [anon_sym_typename] = ACTIONS(1828), [anon_sym_template] = ACTIONS(1828), [anon_sym_operator] = ACTIONS(1828), [anon_sym_delete] = ACTIONS(1828), [anon_sym_throw] = ACTIONS(1828), [anon_sym_namespace] = ACTIONS(1828), [anon_sym_using] = ACTIONS(1828), [anon_sym_static_assert] = ACTIONS(1828), [anon_sym_co_return] = ACTIONS(1828), [anon_sym_co_yield] = ACTIONS(1828), [anon_sym_try] = ACTIONS(1828), [anon_sym_co_await] = ACTIONS(1828), [anon_sym_new] = ACTIONS(1828), [sym_this] = ACTIONS(1828), [sym_nullptr] = ACTIONS(1828), [sym_raw_string_literal] = ACTIONS(1830), }, [439] = { [sym_identifier] = ACTIONS(1836), [aux_sym_preproc_include_token1] = ACTIONS(1836), [aux_sym_preproc_def_token1] = ACTIONS(1836), [aux_sym_preproc_if_token1] = ACTIONS(1836), [aux_sym_preproc_if_token2] = ACTIONS(1836), [aux_sym_preproc_ifdef_token1] = ACTIONS(1836), [aux_sym_preproc_ifdef_token2] = ACTIONS(1836), [sym_preproc_directive] = ACTIONS(1836), [anon_sym_LPAREN2] = ACTIONS(1838), [anon_sym_BANG] = ACTIONS(1838), [anon_sym_TILDE] = ACTIONS(1838), [anon_sym_DASH] = ACTIONS(1836), [anon_sym_PLUS] = ACTIONS(1836), [anon_sym_STAR] = ACTIONS(1838), [anon_sym_AMP_AMP] = ACTIONS(1838), [anon_sym_AMP] = ACTIONS(1836), [anon_sym_SEMI] = ACTIONS(1838), [anon_sym_typedef] = ACTIONS(1836), [anon_sym_extern] = ACTIONS(1836), [anon_sym___attribute__] = ACTIONS(1836), [anon_sym_COLON_COLON] = ACTIONS(1838), [anon_sym_LBRACK_LBRACK] = ACTIONS(1838), [anon_sym___declspec] = ACTIONS(1836), [anon_sym___based] = ACTIONS(1836), [anon_sym___cdecl] = ACTIONS(1836), [anon_sym___clrcall] = ACTIONS(1836), [anon_sym___stdcall] = ACTIONS(1836), [anon_sym___fastcall] = ACTIONS(1836), [anon_sym___thiscall] = ACTIONS(1836), [anon_sym___vectorcall] = ACTIONS(1836), [anon_sym_LBRACE] = ACTIONS(1838), [anon_sym_LBRACK] = ACTIONS(1836), [anon_sym_static] = ACTIONS(1836), [anon_sym_register] = ACTIONS(1836), [anon_sym_inline] = ACTIONS(1836), [anon_sym_thread_local] = ACTIONS(1836), [anon_sym_const] = ACTIONS(1836), [anon_sym_volatile] = ACTIONS(1836), [anon_sym_restrict] = ACTIONS(1836), [anon_sym__Atomic] = ACTIONS(1836), [anon_sym_mutable] = ACTIONS(1836), [anon_sym_constexpr] = ACTIONS(1836), [anon_sym_signed] = ACTIONS(1836), [anon_sym_unsigned] = ACTIONS(1836), [anon_sym_long] = ACTIONS(1836), [anon_sym_short] = ACTIONS(1836), [sym_primitive_type] = ACTIONS(1836), [anon_sym_enum] = ACTIONS(1836), [anon_sym_class] = ACTIONS(1836), [anon_sym_struct] = ACTIONS(1836), [anon_sym_union] = ACTIONS(1836), [anon_sym_if] = ACTIONS(1836), [anon_sym_else] = ACTIONS(1836), [anon_sym_switch] = ACTIONS(1836), [anon_sym_case] = ACTIONS(1836), [anon_sym_default] = ACTIONS(1836), [anon_sym_while] = ACTIONS(1836), [anon_sym_do] = ACTIONS(1836), [anon_sym_for] = ACTIONS(1836), [anon_sym_return] = ACTIONS(1836), [anon_sym_break] = ACTIONS(1836), [anon_sym_continue] = ACTIONS(1836), [anon_sym_goto] = ACTIONS(1836), [anon_sym_DASH_DASH] = ACTIONS(1838), [anon_sym_PLUS_PLUS] = ACTIONS(1838), [anon_sym_sizeof] = ACTIONS(1836), [sym_number_literal] = ACTIONS(1838), [anon_sym_L_SQUOTE] = ACTIONS(1838), [anon_sym_u_SQUOTE] = ACTIONS(1838), [anon_sym_U_SQUOTE] = ACTIONS(1838), [anon_sym_u8_SQUOTE] = ACTIONS(1838), [anon_sym_SQUOTE] = ACTIONS(1838), [anon_sym_L_DQUOTE] = ACTIONS(1838), [anon_sym_u_DQUOTE] = ACTIONS(1838), [anon_sym_U_DQUOTE] = ACTIONS(1838), [anon_sym_u8_DQUOTE] = ACTIONS(1838), [anon_sym_DQUOTE] = ACTIONS(1838), [sym_true] = ACTIONS(1836), [sym_false] = ACTIONS(1836), [sym_null] = ACTIONS(1836), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1836), [anon_sym_virtual] = ACTIONS(1836), [anon_sym_explicit] = ACTIONS(1836), [sym_auto] = ACTIONS(1836), [anon_sym_typename] = ACTIONS(1836), [anon_sym_template] = ACTIONS(1836), [anon_sym_operator] = ACTIONS(1836), [anon_sym_delete] = ACTIONS(1836), [anon_sym_throw] = ACTIONS(1836), [anon_sym_namespace] = ACTIONS(1836), [anon_sym_using] = ACTIONS(1836), [anon_sym_static_assert] = ACTIONS(1836), [anon_sym_co_return] = ACTIONS(1836), [anon_sym_co_yield] = ACTIONS(1836), [anon_sym_try] = ACTIONS(1836), [anon_sym_co_await] = ACTIONS(1836), [anon_sym_new] = ACTIONS(1836), [sym_this] = ACTIONS(1836), [sym_nullptr] = ACTIONS(1836), [sym_raw_string_literal] = ACTIONS(1838), }, [440] = { [sym_identifier] = ACTIONS(1836), [aux_sym_preproc_include_token1] = ACTIONS(1836), [aux_sym_preproc_def_token1] = ACTIONS(1836), [aux_sym_preproc_if_token1] = ACTIONS(1836), [aux_sym_preproc_if_token2] = ACTIONS(1836), [aux_sym_preproc_ifdef_token1] = ACTIONS(1836), [aux_sym_preproc_ifdef_token2] = ACTIONS(1836), [sym_preproc_directive] = ACTIONS(1836), [anon_sym_LPAREN2] = ACTIONS(1838), [anon_sym_BANG] = ACTIONS(1838), [anon_sym_TILDE] = ACTIONS(1838), [anon_sym_DASH] = ACTIONS(1836), [anon_sym_PLUS] = ACTIONS(1836), [anon_sym_STAR] = ACTIONS(1838), [anon_sym_AMP_AMP] = ACTIONS(1838), [anon_sym_AMP] = ACTIONS(1836), [anon_sym_SEMI] = ACTIONS(1838), [anon_sym_typedef] = ACTIONS(1836), [anon_sym_extern] = ACTIONS(1836), [anon_sym___attribute__] = ACTIONS(1836), [anon_sym_COLON_COLON] = ACTIONS(1838), [anon_sym_LBRACK_LBRACK] = ACTIONS(1838), [anon_sym___declspec] = ACTIONS(1836), [anon_sym___based] = ACTIONS(1836), [anon_sym___cdecl] = ACTIONS(1836), [anon_sym___clrcall] = ACTIONS(1836), [anon_sym___stdcall] = ACTIONS(1836), [anon_sym___fastcall] = ACTIONS(1836), [anon_sym___thiscall] = ACTIONS(1836), [anon_sym___vectorcall] = ACTIONS(1836), [anon_sym_LBRACE] = ACTIONS(1838), [anon_sym_LBRACK] = ACTIONS(1836), [anon_sym_static] = ACTIONS(1836), [anon_sym_register] = ACTIONS(1836), [anon_sym_inline] = ACTIONS(1836), [anon_sym_thread_local] = ACTIONS(1836), [anon_sym_const] = ACTIONS(1836), [anon_sym_volatile] = ACTIONS(1836), [anon_sym_restrict] = ACTIONS(1836), [anon_sym__Atomic] = ACTIONS(1836), [anon_sym_mutable] = ACTIONS(1836), [anon_sym_constexpr] = ACTIONS(1836), [anon_sym_signed] = ACTIONS(1836), [anon_sym_unsigned] = ACTIONS(1836), [anon_sym_long] = ACTIONS(1836), [anon_sym_short] = ACTIONS(1836), [sym_primitive_type] = ACTIONS(1836), [anon_sym_enum] = ACTIONS(1836), [anon_sym_class] = ACTIONS(1836), [anon_sym_struct] = ACTIONS(1836), [anon_sym_union] = ACTIONS(1836), [anon_sym_if] = ACTIONS(1836), [anon_sym_else] = ACTIONS(1836), [anon_sym_switch] = ACTIONS(1836), [anon_sym_case] = ACTIONS(1836), [anon_sym_default] = ACTIONS(1836), [anon_sym_while] = ACTIONS(1836), [anon_sym_do] = ACTIONS(1836), [anon_sym_for] = ACTIONS(1836), [anon_sym_return] = ACTIONS(1836), [anon_sym_break] = ACTIONS(1836), [anon_sym_continue] = ACTIONS(1836), [anon_sym_goto] = ACTIONS(1836), [anon_sym_DASH_DASH] = ACTIONS(1838), [anon_sym_PLUS_PLUS] = ACTIONS(1838), [anon_sym_sizeof] = ACTIONS(1836), [sym_number_literal] = ACTIONS(1838), [anon_sym_L_SQUOTE] = ACTIONS(1838), [anon_sym_u_SQUOTE] = ACTIONS(1838), [anon_sym_U_SQUOTE] = ACTIONS(1838), [anon_sym_u8_SQUOTE] = ACTIONS(1838), [anon_sym_SQUOTE] = ACTIONS(1838), [anon_sym_L_DQUOTE] = ACTIONS(1838), [anon_sym_u_DQUOTE] = ACTIONS(1838), [anon_sym_U_DQUOTE] = ACTIONS(1838), [anon_sym_u8_DQUOTE] = ACTIONS(1838), [anon_sym_DQUOTE] = ACTIONS(1838), [sym_true] = ACTIONS(1836), [sym_false] = ACTIONS(1836), [sym_null] = ACTIONS(1836), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1836), [anon_sym_virtual] = ACTIONS(1836), [anon_sym_explicit] = ACTIONS(1836), [sym_auto] = ACTIONS(1836), [anon_sym_typename] = ACTIONS(1836), [anon_sym_template] = ACTIONS(1836), [anon_sym_operator] = ACTIONS(1836), [anon_sym_delete] = ACTIONS(1836), [anon_sym_throw] = ACTIONS(1836), [anon_sym_namespace] = ACTIONS(1836), [anon_sym_using] = ACTIONS(1836), [anon_sym_static_assert] = ACTIONS(1836), [anon_sym_co_return] = ACTIONS(1836), [anon_sym_co_yield] = ACTIONS(1836), [anon_sym_try] = ACTIONS(1836), [anon_sym_co_await] = ACTIONS(1836), [anon_sym_new] = ACTIONS(1836), [sym_this] = ACTIONS(1836), [sym_nullptr] = ACTIONS(1836), [sym_raw_string_literal] = ACTIONS(1838), }, [441] = { [sym_identifier] = ACTIONS(1898), [aux_sym_preproc_include_token1] = ACTIONS(1898), [aux_sym_preproc_def_token1] = ACTIONS(1898), [aux_sym_preproc_if_token1] = ACTIONS(1898), [aux_sym_preproc_ifdef_token1] = ACTIONS(1898), [aux_sym_preproc_ifdef_token2] = ACTIONS(1898), [sym_preproc_directive] = ACTIONS(1898), [anon_sym_LPAREN2] = ACTIONS(1900), [anon_sym_BANG] = ACTIONS(1900), [anon_sym_TILDE] = ACTIONS(1900), [anon_sym_DASH] = ACTIONS(1898), [anon_sym_PLUS] = ACTIONS(1898), [anon_sym_STAR] = ACTIONS(1900), [anon_sym_AMP_AMP] = ACTIONS(1900), [anon_sym_AMP] = ACTIONS(1898), [anon_sym_SEMI] = ACTIONS(1900), [anon_sym_typedef] = ACTIONS(1898), [anon_sym_extern] = ACTIONS(1898), [anon_sym___attribute__] = ACTIONS(1898), [anon_sym_COLON_COLON] = ACTIONS(1900), [anon_sym_LBRACK_LBRACK] = ACTIONS(1900), [anon_sym___declspec] = ACTIONS(1898), [anon_sym___based] = ACTIONS(1898), [anon_sym___cdecl] = ACTIONS(1898), [anon_sym___clrcall] = ACTIONS(1898), [anon_sym___stdcall] = ACTIONS(1898), [anon_sym___fastcall] = ACTIONS(1898), [anon_sym___thiscall] = ACTIONS(1898), [anon_sym___vectorcall] = ACTIONS(1898), [anon_sym_LBRACE] = ACTIONS(1900), [anon_sym_RBRACE] = ACTIONS(1900), [anon_sym_LBRACK] = ACTIONS(1898), [anon_sym_static] = ACTIONS(1898), [anon_sym_register] = ACTIONS(1898), [anon_sym_inline] = ACTIONS(1898), [anon_sym_thread_local] = ACTIONS(1898), [anon_sym_const] = ACTIONS(1898), [anon_sym_volatile] = ACTIONS(1898), [anon_sym_restrict] = ACTIONS(1898), [anon_sym__Atomic] = ACTIONS(1898), [anon_sym_mutable] = ACTIONS(1898), [anon_sym_constexpr] = ACTIONS(1898), [anon_sym_signed] = ACTIONS(1898), [anon_sym_unsigned] = ACTIONS(1898), [anon_sym_long] = ACTIONS(1898), [anon_sym_short] = ACTIONS(1898), [sym_primitive_type] = ACTIONS(1898), [anon_sym_enum] = ACTIONS(1898), [anon_sym_class] = ACTIONS(1898), [anon_sym_struct] = ACTIONS(1898), [anon_sym_union] = ACTIONS(1898), [anon_sym_if] = ACTIONS(1898), [anon_sym_else] = ACTIONS(1898), [anon_sym_switch] = ACTIONS(1898), [anon_sym_case] = ACTIONS(1898), [anon_sym_default] = ACTIONS(1898), [anon_sym_while] = ACTIONS(1898), [anon_sym_do] = ACTIONS(1898), [anon_sym_for] = ACTIONS(1898), [anon_sym_return] = ACTIONS(1898), [anon_sym_break] = ACTIONS(1898), [anon_sym_continue] = ACTIONS(1898), [anon_sym_goto] = ACTIONS(1898), [anon_sym_DASH_DASH] = ACTIONS(1900), [anon_sym_PLUS_PLUS] = ACTIONS(1900), [anon_sym_sizeof] = ACTIONS(1898), [sym_number_literal] = ACTIONS(1900), [anon_sym_L_SQUOTE] = ACTIONS(1900), [anon_sym_u_SQUOTE] = ACTIONS(1900), [anon_sym_U_SQUOTE] = ACTIONS(1900), [anon_sym_u8_SQUOTE] = ACTIONS(1900), [anon_sym_SQUOTE] = ACTIONS(1900), [anon_sym_L_DQUOTE] = ACTIONS(1900), [anon_sym_u_DQUOTE] = ACTIONS(1900), [anon_sym_U_DQUOTE] = ACTIONS(1900), [anon_sym_u8_DQUOTE] = ACTIONS(1900), [anon_sym_DQUOTE] = ACTIONS(1900), [sym_true] = ACTIONS(1898), [sym_false] = ACTIONS(1898), [sym_null] = ACTIONS(1898), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1898), [anon_sym_virtual] = ACTIONS(1898), [anon_sym_explicit] = ACTIONS(1898), [sym_auto] = ACTIONS(1898), [anon_sym_typename] = ACTIONS(1898), [anon_sym_template] = ACTIONS(1898), [anon_sym_operator] = ACTIONS(1898), [anon_sym_delete] = ACTIONS(1898), [anon_sym_throw] = ACTIONS(1898), [anon_sym_namespace] = ACTIONS(1898), [anon_sym_using] = ACTIONS(1898), [anon_sym_static_assert] = ACTIONS(1898), [anon_sym_co_return] = ACTIONS(1898), [anon_sym_co_yield] = ACTIONS(1898), [anon_sym_try] = ACTIONS(1898), [anon_sym_co_await] = ACTIONS(1898), [anon_sym_new] = ACTIONS(1898), [sym_this] = ACTIONS(1898), [sym_nullptr] = ACTIONS(1898), [sym_raw_string_literal] = ACTIONS(1900), }, [442] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [443] = { [sym_identifier] = ACTIONS(1922), [aux_sym_preproc_include_token1] = ACTIONS(1922), [aux_sym_preproc_def_token1] = ACTIONS(1922), [aux_sym_preproc_if_token1] = ACTIONS(1922), [aux_sym_preproc_if_token2] = ACTIONS(1922), [aux_sym_preproc_ifdef_token1] = ACTIONS(1922), [aux_sym_preproc_ifdef_token2] = ACTIONS(1922), [sym_preproc_directive] = ACTIONS(1922), [anon_sym_LPAREN2] = ACTIONS(1924), [anon_sym_BANG] = ACTIONS(1924), [anon_sym_TILDE] = ACTIONS(1924), [anon_sym_DASH] = ACTIONS(1922), [anon_sym_PLUS] = ACTIONS(1922), [anon_sym_STAR] = ACTIONS(1924), [anon_sym_AMP_AMP] = ACTIONS(1924), [anon_sym_AMP] = ACTIONS(1922), [anon_sym_SEMI] = ACTIONS(1924), [anon_sym_typedef] = ACTIONS(1922), [anon_sym_extern] = ACTIONS(1922), [anon_sym___attribute__] = ACTIONS(1922), [anon_sym_COLON_COLON] = ACTIONS(1924), [anon_sym_LBRACK_LBRACK] = ACTIONS(1924), [anon_sym___declspec] = ACTIONS(1922), [anon_sym___based] = ACTIONS(1922), [anon_sym___cdecl] = ACTIONS(1922), [anon_sym___clrcall] = ACTIONS(1922), [anon_sym___stdcall] = ACTIONS(1922), [anon_sym___fastcall] = ACTIONS(1922), [anon_sym___thiscall] = ACTIONS(1922), [anon_sym___vectorcall] = ACTIONS(1922), [anon_sym_LBRACE] = ACTIONS(1924), [anon_sym_LBRACK] = ACTIONS(1922), [anon_sym_static] = ACTIONS(1922), [anon_sym_register] = ACTIONS(1922), [anon_sym_inline] = ACTIONS(1922), [anon_sym_thread_local] = ACTIONS(1922), [anon_sym_const] = ACTIONS(1922), [anon_sym_volatile] = ACTIONS(1922), [anon_sym_restrict] = ACTIONS(1922), [anon_sym__Atomic] = ACTIONS(1922), [anon_sym_mutable] = ACTIONS(1922), [anon_sym_constexpr] = ACTIONS(1922), [anon_sym_signed] = ACTIONS(1922), [anon_sym_unsigned] = ACTIONS(1922), [anon_sym_long] = ACTIONS(1922), [anon_sym_short] = ACTIONS(1922), [sym_primitive_type] = ACTIONS(1922), [anon_sym_enum] = ACTIONS(1922), [anon_sym_class] = ACTIONS(1922), [anon_sym_struct] = ACTIONS(1922), [anon_sym_union] = ACTIONS(1922), [anon_sym_if] = ACTIONS(1922), [anon_sym_else] = ACTIONS(1922), [anon_sym_switch] = ACTIONS(1922), [anon_sym_case] = ACTIONS(1922), [anon_sym_default] = ACTIONS(1922), [anon_sym_while] = ACTIONS(1922), [anon_sym_do] = ACTIONS(1922), [anon_sym_for] = ACTIONS(1922), [anon_sym_return] = ACTIONS(1922), [anon_sym_break] = ACTIONS(1922), [anon_sym_continue] = ACTIONS(1922), [anon_sym_goto] = ACTIONS(1922), [anon_sym_DASH_DASH] = ACTIONS(1924), [anon_sym_PLUS_PLUS] = ACTIONS(1924), [anon_sym_sizeof] = ACTIONS(1922), [sym_number_literal] = ACTIONS(1924), [anon_sym_L_SQUOTE] = ACTIONS(1924), [anon_sym_u_SQUOTE] = ACTIONS(1924), [anon_sym_U_SQUOTE] = ACTIONS(1924), [anon_sym_u8_SQUOTE] = ACTIONS(1924), [anon_sym_SQUOTE] = ACTIONS(1924), [anon_sym_L_DQUOTE] = ACTIONS(1924), [anon_sym_u_DQUOTE] = ACTIONS(1924), [anon_sym_U_DQUOTE] = ACTIONS(1924), [anon_sym_u8_DQUOTE] = ACTIONS(1924), [anon_sym_DQUOTE] = ACTIONS(1924), [sym_true] = ACTIONS(1922), [sym_false] = ACTIONS(1922), [sym_null] = ACTIONS(1922), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1922), [anon_sym_virtual] = ACTIONS(1922), [anon_sym_explicit] = ACTIONS(1922), [sym_auto] = ACTIONS(1922), [anon_sym_typename] = ACTIONS(1922), [anon_sym_template] = ACTIONS(1922), [anon_sym_operator] = ACTIONS(1922), [anon_sym_delete] = ACTIONS(1922), [anon_sym_throw] = ACTIONS(1922), [anon_sym_namespace] = ACTIONS(1922), [anon_sym_using] = ACTIONS(1922), [anon_sym_static_assert] = ACTIONS(1922), [anon_sym_co_return] = ACTIONS(1922), [anon_sym_co_yield] = ACTIONS(1922), [anon_sym_try] = ACTIONS(1922), [anon_sym_co_await] = ACTIONS(1922), [anon_sym_new] = ACTIONS(1922), [sym_this] = ACTIONS(1922), [sym_nullptr] = ACTIONS(1922), [sym_raw_string_literal] = ACTIONS(1924), }, [444] = { [sym_identifier] = ACTIONS(1918), [aux_sym_preproc_include_token1] = ACTIONS(1918), [aux_sym_preproc_def_token1] = ACTIONS(1918), [aux_sym_preproc_if_token1] = ACTIONS(1918), [aux_sym_preproc_if_token2] = ACTIONS(1918), [aux_sym_preproc_ifdef_token1] = ACTIONS(1918), [aux_sym_preproc_ifdef_token2] = ACTIONS(1918), [sym_preproc_directive] = ACTIONS(1918), [anon_sym_LPAREN2] = ACTIONS(1920), [anon_sym_BANG] = ACTIONS(1920), [anon_sym_TILDE] = ACTIONS(1920), [anon_sym_DASH] = ACTIONS(1918), [anon_sym_PLUS] = ACTIONS(1918), [anon_sym_STAR] = ACTIONS(1920), [anon_sym_AMP_AMP] = ACTIONS(1920), [anon_sym_AMP] = ACTIONS(1918), [anon_sym_SEMI] = ACTIONS(1920), [anon_sym_typedef] = ACTIONS(1918), [anon_sym_extern] = ACTIONS(1918), [anon_sym___attribute__] = ACTIONS(1918), [anon_sym_COLON_COLON] = ACTIONS(1920), [anon_sym_LBRACK_LBRACK] = ACTIONS(1920), [anon_sym___declspec] = ACTIONS(1918), [anon_sym___based] = ACTIONS(1918), [anon_sym___cdecl] = ACTIONS(1918), [anon_sym___clrcall] = ACTIONS(1918), [anon_sym___stdcall] = ACTIONS(1918), [anon_sym___fastcall] = ACTIONS(1918), [anon_sym___thiscall] = ACTIONS(1918), [anon_sym___vectorcall] = ACTIONS(1918), [anon_sym_LBRACE] = ACTIONS(1920), [anon_sym_LBRACK] = ACTIONS(1918), [anon_sym_static] = ACTIONS(1918), [anon_sym_register] = ACTIONS(1918), [anon_sym_inline] = ACTIONS(1918), [anon_sym_thread_local] = ACTIONS(1918), [anon_sym_const] = ACTIONS(1918), [anon_sym_volatile] = ACTIONS(1918), [anon_sym_restrict] = ACTIONS(1918), [anon_sym__Atomic] = ACTIONS(1918), [anon_sym_mutable] = ACTIONS(1918), [anon_sym_constexpr] = ACTIONS(1918), [anon_sym_signed] = ACTIONS(1918), [anon_sym_unsigned] = ACTIONS(1918), [anon_sym_long] = ACTIONS(1918), [anon_sym_short] = ACTIONS(1918), [sym_primitive_type] = ACTIONS(1918), [anon_sym_enum] = ACTIONS(1918), [anon_sym_class] = ACTIONS(1918), [anon_sym_struct] = ACTIONS(1918), [anon_sym_union] = ACTIONS(1918), [anon_sym_if] = ACTIONS(1918), [anon_sym_else] = ACTIONS(1918), [anon_sym_switch] = ACTIONS(1918), [anon_sym_case] = ACTIONS(1918), [anon_sym_default] = ACTIONS(1918), [anon_sym_while] = ACTIONS(1918), [anon_sym_do] = ACTIONS(1918), [anon_sym_for] = ACTIONS(1918), [anon_sym_return] = ACTIONS(1918), [anon_sym_break] = ACTIONS(1918), [anon_sym_continue] = ACTIONS(1918), [anon_sym_goto] = ACTIONS(1918), [anon_sym_DASH_DASH] = ACTIONS(1920), [anon_sym_PLUS_PLUS] = ACTIONS(1920), [anon_sym_sizeof] = ACTIONS(1918), [sym_number_literal] = ACTIONS(1920), [anon_sym_L_SQUOTE] = ACTIONS(1920), [anon_sym_u_SQUOTE] = ACTIONS(1920), [anon_sym_U_SQUOTE] = ACTIONS(1920), [anon_sym_u8_SQUOTE] = ACTIONS(1920), [anon_sym_SQUOTE] = ACTIONS(1920), [anon_sym_L_DQUOTE] = ACTIONS(1920), [anon_sym_u_DQUOTE] = ACTIONS(1920), [anon_sym_U_DQUOTE] = ACTIONS(1920), [anon_sym_u8_DQUOTE] = ACTIONS(1920), [anon_sym_DQUOTE] = ACTIONS(1920), [sym_true] = ACTIONS(1918), [sym_false] = ACTIONS(1918), [sym_null] = ACTIONS(1918), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1918), [anon_sym_virtual] = ACTIONS(1918), [anon_sym_explicit] = ACTIONS(1918), [sym_auto] = ACTIONS(1918), [anon_sym_typename] = ACTIONS(1918), [anon_sym_template] = ACTIONS(1918), [anon_sym_operator] = ACTIONS(1918), [anon_sym_delete] = ACTIONS(1918), [anon_sym_throw] = ACTIONS(1918), [anon_sym_namespace] = ACTIONS(1918), [anon_sym_using] = ACTIONS(1918), [anon_sym_static_assert] = ACTIONS(1918), [anon_sym_co_return] = ACTIONS(1918), [anon_sym_co_yield] = ACTIONS(1918), [anon_sym_try] = ACTIONS(1918), [anon_sym_co_await] = ACTIONS(1918), [anon_sym_new] = ACTIONS(1918), [sym_this] = ACTIONS(1918), [sym_nullptr] = ACTIONS(1918), [sym_raw_string_literal] = ACTIONS(1920), }, [445] = { [sym_identifier] = ACTIONS(1902), [aux_sym_preproc_include_token1] = ACTIONS(1902), [aux_sym_preproc_def_token1] = ACTIONS(1902), [aux_sym_preproc_if_token1] = ACTIONS(1902), [aux_sym_preproc_ifdef_token1] = ACTIONS(1902), [aux_sym_preproc_ifdef_token2] = ACTIONS(1902), [sym_preproc_directive] = ACTIONS(1902), [anon_sym_LPAREN2] = ACTIONS(1904), [anon_sym_BANG] = ACTIONS(1904), [anon_sym_TILDE] = ACTIONS(1904), [anon_sym_DASH] = ACTIONS(1902), [anon_sym_PLUS] = ACTIONS(1902), [anon_sym_STAR] = ACTIONS(1904), [anon_sym_AMP_AMP] = ACTIONS(1904), [anon_sym_AMP] = ACTIONS(1902), [anon_sym_SEMI] = ACTIONS(1904), [anon_sym_typedef] = ACTIONS(1902), [anon_sym_extern] = ACTIONS(1902), [anon_sym___attribute__] = ACTIONS(1902), [anon_sym_COLON_COLON] = ACTIONS(1904), [anon_sym_LBRACK_LBRACK] = ACTIONS(1904), [anon_sym___declspec] = ACTIONS(1902), [anon_sym___based] = ACTIONS(1902), [anon_sym___cdecl] = ACTIONS(1902), [anon_sym___clrcall] = ACTIONS(1902), [anon_sym___stdcall] = ACTIONS(1902), [anon_sym___fastcall] = ACTIONS(1902), [anon_sym___thiscall] = ACTIONS(1902), [anon_sym___vectorcall] = ACTIONS(1902), [anon_sym_LBRACE] = ACTIONS(1904), [anon_sym_RBRACE] = ACTIONS(1904), [anon_sym_LBRACK] = ACTIONS(1902), [anon_sym_static] = ACTIONS(1902), [anon_sym_register] = ACTIONS(1902), [anon_sym_inline] = ACTIONS(1902), [anon_sym_thread_local] = ACTIONS(1902), [anon_sym_const] = ACTIONS(1902), [anon_sym_volatile] = ACTIONS(1902), [anon_sym_restrict] = ACTIONS(1902), [anon_sym__Atomic] = ACTIONS(1902), [anon_sym_mutable] = ACTIONS(1902), [anon_sym_constexpr] = ACTIONS(1902), [anon_sym_signed] = ACTIONS(1902), [anon_sym_unsigned] = ACTIONS(1902), [anon_sym_long] = ACTIONS(1902), [anon_sym_short] = ACTIONS(1902), [sym_primitive_type] = ACTIONS(1902), [anon_sym_enum] = ACTIONS(1902), [anon_sym_class] = ACTIONS(1902), [anon_sym_struct] = ACTIONS(1902), [anon_sym_union] = ACTIONS(1902), [anon_sym_if] = ACTIONS(1902), [anon_sym_else] = ACTIONS(1902), [anon_sym_switch] = ACTIONS(1902), [anon_sym_case] = ACTIONS(1902), [anon_sym_default] = ACTIONS(1902), [anon_sym_while] = ACTIONS(1902), [anon_sym_do] = ACTIONS(1902), [anon_sym_for] = ACTIONS(1902), [anon_sym_return] = ACTIONS(1902), [anon_sym_break] = ACTIONS(1902), [anon_sym_continue] = ACTIONS(1902), [anon_sym_goto] = ACTIONS(1902), [anon_sym_DASH_DASH] = ACTIONS(1904), [anon_sym_PLUS_PLUS] = ACTIONS(1904), [anon_sym_sizeof] = ACTIONS(1902), [sym_number_literal] = ACTIONS(1904), [anon_sym_L_SQUOTE] = ACTIONS(1904), [anon_sym_u_SQUOTE] = ACTIONS(1904), [anon_sym_U_SQUOTE] = ACTIONS(1904), [anon_sym_u8_SQUOTE] = ACTIONS(1904), [anon_sym_SQUOTE] = ACTIONS(1904), [anon_sym_L_DQUOTE] = ACTIONS(1904), [anon_sym_u_DQUOTE] = ACTIONS(1904), [anon_sym_U_DQUOTE] = ACTIONS(1904), [anon_sym_u8_DQUOTE] = ACTIONS(1904), [anon_sym_DQUOTE] = ACTIONS(1904), [sym_true] = ACTIONS(1902), [sym_false] = ACTIONS(1902), [sym_null] = ACTIONS(1902), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1902), [anon_sym_virtual] = ACTIONS(1902), [anon_sym_explicit] = ACTIONS(1902), [sym_auto] = ACTIONS(1902), [anon_sym_typename] = ACTIONS(1902), [anon_sym_template] = ACTIONS(1902), [anon_sym_operator] = ACTIONS(1902), [anon_sym_delete] = ACTIONS(1902), [anon_sym_throw] = ACTIONS(1902), [anon_sym_namespace] = ACTIONS(1902), [anon_sym_using] = ACTIONS(1902), [anon_sym_static_assert] = ACTIONS(1902), [anon_sym_co_return] = ACTIONS(1902), [anon_sym_co_yield] = ACTIONS(1902), [anon_sym_try] = ACTIONS(1902), [anon_sym_co_await] = ACTIONS(1902), [anon_sym_new] = ACTIONS(1902), [sym_this] = ACTIONS(1902), [sym_nullptr] = ACTIONS(1902), [sym_raw_string_literal] = ACTIONS(1904), }, [446] = { [ts_builtin_sym_end] = ACTIONS(1874), [sym_identifier] = ACTIONS(1872), [aux_sym_preproc_include_token1] = ACTIONS(1872), [aux_sym_preproc_def_token1] = ACTIONS(1872), [aux_sym_preproc_if_token1] = ACTIONS(1872), [aux_sym_preproc_ifdef_token1] = ACTIONS(1872), [aux_sym_preproc_ifdef_token2] = ACTIONS(1872), [sym_preproc_directive] = ACTIONS(1872), [anon_sym_LPAREN2] = ACTIONS(1874), [anon_sym_BANG] = ACTIONS(1874), [anon_sym_TILDE] = ACTIONS(1874), [anon_sym_DASH] = ACTIONS(1872), [anon_sym_PLUS] = ACTIONS(1872), [anon_sym_STAR] = ACTIONS(1874), [anon_sym_AMP_AMP] = ACTIONS(1874), [anon_sym_AMP] = ACTIONS(1872), [anon_sym_SEMI] = ACTIONS(1874), [anon_sym_typedef] = ACTIONS(1872), [anon_sym_extern] = ACTIONS(1872), [anon_sym___attribute__] = ACTIONS(1872), [anon_sym_COLON_COLON] = ACTIONS(1874), [anon_sym_LBRACK_LBRACK] = ACTIONS(1874), [anon_sym___declspec] = ACTIONS(1872), [anon_sym___based] = ACTIONS(1872), [anon_sym___cdecl] = ACTIONS(1872), [anon_sym___clrcall] = ACTIONS(1872), [anon_sym___stdcall] = ACTIONS(1872), [anon_sym___fastcall] = ACTIONS(1872), [anon_sym___thiscall] = ACTIONS(1872), [anon_sym___vectorcall] = ACTIONS(1872), [anon_sym_LBRACE] = ACTIONS(1874), [anon_sym_LBRACK] = ACTIONS(1872), [anon_sym_static] = ACTIONS(1872), [anon_sym_register] = ACTIONS(1872), [anon_sym_inline] = ACTIONS(1872), [anon_sym_thread_local] = ACTIONS(1872), [anon_sym_const] = ACTIONS(1872), [anon_sym_volatile] = ACTIONS(1872), [anon_sym_restrict] = ACTIONS(1872), [anon_sym__Atomic] = ACTIONS(1872), [anon_sym_mutable] = ACTIONS(1872), [anon_sym_constexpr] = ACTIONS(1872), [anon_sym_signed] = ACTIONS(1872), [anon_sym_unsigned] = ACTIONS(1872), [anon_sym_long] = ACTIONS(1872), [anon_sym_short] = ACTIONS(1872), [sym_primitive_type] = ACTIONS(1872), [anon_sym_enum] = ACTIONS(1872), [anon_sym_class] = ACTIONS(1872), [anon_sym_struct] = ACTIONS(1872), [anon_sym_union] = ACTIONS(1872), [anon_sym_if] = ACTIONS(1872), [anon_sym_else] = ACTIONS(1872), [anon_sym_switch] = ACTIONS(1872), [anon_sym_case] = ACTIONS(1872), [anon_sym_default] = ACTIONS(1872), [anon_sym_while] = ACTIONS(1872), [anon_sym_do] = ACTIONS(1872), [anon_sym_for] = ACTIONS(1872), [anon_sym_return] = ACTIONS(1872), [anon_sym_break] = ACTIONS(1872), [anon_sym_continue] = ACTIONS(1872), [anon_sym_goto] = ACTIONS(1872), [anon_sym_DASH_DASH] = ACTIONS(1874), [anon_sym_PLUS_PLUS] = ACTIONS(1874), [anon_sym_sizeof] = ACTIONS(1872), [sym_number_literal] = ACTIONS(1874), [anon_sym_L_SQUOTE] = ACTIONS(1874), [anon_sym_u_SQUOTE] = ACTIONS(1874), [anon_sym_U_SQUOTE] = ACTIONS(1874), [anon_sym_u8_SQUOTE] = ACTIONS(1874), [anon_sym_SQUOTE] = ACTIONS(1874), [anon_sym_L_DQUOTE] = ACTIONS(1874), [anon_sym_u_DQUOTE] = ACTIONS(1874), [anon_sym_U_DQUOTE] = ACTIONS(1874), [anon_sym_u8_DQUOTE] = ACTIONS(1874), [anon_sym_DQUOTE] = ACTIONS(1874), [sym_true] = ACTIONS(1872), [sym_false] = ACTIONS(1872), [sym_null] = ACTIONS(1872), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1872), [anon_sym_virtual] = ACTIONS(1872), [anon_sym_explicit] = ACTIONS(1872), [sym_auto] = ACTIONS(1872), [anon_sym_typename] = ACTIONS(1872), [anon_sym_template] = ACTIONS(1872), [anon_sym_operator] = ACTIONS(1872), [anon_sym_delete] = ACTIONS(1872), [anon_sym_throw] = ACTIONS(1872), [anon_sym_namespace] = ACTIONS(1872), [anon_sym_using] = ACTIONS(1872), [anon_sym_static_assert] = ACTIONS(1872), [anon_sym_co_return] = ACTIONS(1872), [anon_sym_co_yield] = ACTIONS(1872), [anon_sym_try] = ACTIONS(1872), [anon_sym_co_await] = ACTIONS(1872), [anon_sym_new] = ACTIONS(1872), [sym_this] = ACTIONS(1872), [sym_nullptr] = ACTIONS(1872), [sym_raw_string_literal] = ACTIONS(1874), }, [447] = { [sym_identifier] = ACTIONS(1914), [aux_sym_preproc_include_token1] = ACTIONS(1914), [aux_sym_preproc_def_token1] = ACTIONS(1914), [aux_sym_preproc_if_token1] = ACTIONS(1914), [aux_sym_preproc_if_token2] = ACTIONS(1914), [aux_sym_preproc_ifdef_token1] = ACTIONS(1914), [aux_sym_preproc_ifdef_token2] = ACTIONS(1914), [sym_preproc_directive] = ACTIONS(1914), [anon_sym_LPAREN2] = ACTIONS(1916), [anon_sym_BANG] = ACTIONS(1916), [anon_sym_TILDE] = ACTIONS(1916), [anon_sym_DASH] = ACTIONS(1914), [anon_sym_PLUS] = ACTIONS(1914), [anon_sym_STAR] = ACTIONS(1916), [anon_sym_AMP_AMP] = ACTIONS(1916), [anon_sym_AMP] = ACTIONS(1914), [anon_sym_SEMI] = ACTIONS(1916), [anon_sym_typedef] = ACTIONS(1914), [anon_sym_extern] = ACTIONS(1914), [anon_sym___attribute__] = ACTIONS(1914), [anon_sym_COLON_COLON] = ACTIONS(1916), [anon_sym_LBRACK_LBRACK] = ACTIONS(1916), [anon_sym___declspec] = ACTIONS(1914), [anon_sym___based] = ACTIONS(1914), [anon_sym___cdecl] = ACTIONS(1914), [anon_sym___clrcall] = ACTIONS(1914), [anon_sym___stdcall] = ACTIONS(1914), [anon_sym___fastcall] = ACTIONS(1914), [anon_sym___thiscall] = ACTIONS(1914), [anon_sym___vectorcall] = ACTIONS(1914), [anon_sym_LBRACE] = ACTIONS(1916), [anon_sym_LBRACK] = ACTIONS(1914), [anon_sym_static] = ACTIONS(1914), [anon_sym_register] = ACTIONS(1914), [anon_sym_inline] = ACTIONS(1914), [anon_sym_thread_local] = ACTIONS(1914), [anon_sym_const] = ACTIONS(1914), [anon_sym_volatile] = ACTIONS(1914), [anon_sym_restrict] = ACTIONS(1914), [anon_sym__Atomic] = ACTIONS(1914), [anon_sym_mutable] = ACTIONS(1914), [anon_sym_constexpr] = ACTIONS(1914), [anon_sym_signed] = ACTIONS(1914), [anon_sym_unsigned] = ACTIONS(1914), [anon_sym_long] = ACTIONS(1914), [anon_sym_short] = ACTIONS(1914), [sym_primitive_type] = ACTIONS(1914), [anon_sym_enum] = ACTIONS(1914), [anon_sym_class] = ACTIONS(1914), [anon_sym_struct] = ACTIONS(1914), [anon_sym_union] = ACTIONS(1914), [anon_sym_if] = ACTIONS(1914), [anon_sym_else] = ACTIONS(1914), [anon_sym_switch] = ACTIONS(1914), [anon_sym_case] = ACTIONS(1914), [anon_sym_default] = ACTIONS(1914), [anon_sym_while] = ACTIONS(1914), [anon_sym_do] = ACTIONS(1914), [anon_sym_for] = ACTIONS(1914), [anon_sym_return] = ACTIONS(1914), [anon_sym_break] = ACTIONS(1914), [anon_sym_continue] = ACTIONS(1914), [anon_sym_goto] = ACTIONS(1914), [anon_sym_DASH_DASH] = ACTIONS(1916), [anon_sym_PLUS_PLUS] = ACTIONS(1916), [anon_sym_sizeof] = ACTIONS(1914), [sym_number_literal] = ACTIONS(1916), [anon_sym_L_SQUOTE] = ACTIONS(1916), [anon_sym_u_SQUOTE] = ACTIONS(1916), [anon_sym_U_SQUOTE] = ACTIONS(1916), [anon_sym_u8_SQUOTE] = ACTIONS(1916), [anon_sym_SQUOTE] = ACTIONS(1916), [anon_sym_L_DQUOTE] = ACTIONS(1916), [anon_sym_u_DQUOTE] = ACTIONS(1916), [anon_sym_U_DQUOTE] = ACTIONS(1916), [anon_sym_u8_DQUOTE] = ACTIONS(1916), [anon_sym_DQUOTE] = ACTIONS(1916), [sym_true] = ACTIONS(1914), [sym_false] = ACTIONS(1914), [sym_null] = ACTIONS(1914), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1914), [anon_sym_virtual] = ACTIONS(1914), [anon_sym_explicit] = ACTIONS(1914), [sym_auto] = ACTIONS(1914), [anon_sym_typename] = ACTIONS(1914), [anon_sym_template] = ACTIONS(1914), [anon_sym_operator] = ACTIONS(1914), [anon_sym_delete] = ACTIONS(1914), [anon_sym_throw] = ACTIONS(1914), [anon_sym_namespace] = ACTIONS(1914), [anon_sym_using] = ACTIONS(1914), [anon_sym_static_assert] = ACTIONS(1914), [anon_sym_co_return] = ACTIONS(1914), [anon_sym_co_yield] = ACTIONS(1914), [anon_sym_try] = ACTIONS(1914), [anon_sym_co_await] = ACTIONS(1914), [anon_sym_new] = ACTIONS(1914), [sym_this] = ACTIONS(1914), [sym_nullptr] = ACTIONS(1914), [sym_raw_string_literal] = ACTIONS(1916), }, [448] = { [ts_builtin_sym_end] = ACTIONS(1870), [sym_identifier] = ACTIONS(1868), [aux_sym_preproc_include_token1] = ACTIONS(1868), [aux_sym_preproc_def_token1] = ACTIONS(1868), [aux_sym_preproc_if_token1] = ACTIONS(1868), [aux_sym_preproc_ifdef_token1] = ACTIONS(1868), [aux_sym_preproc_ifdef_token2] = ACTIONS(1868), [sym_preproc_directive] = ACTIONS(1868), [anon_sym_LPAREN2] = ACTIONS(1870), [anon_sym_BANG] = ACTIONS(1870), [anon_sym_TILDE] = ACTIONS(1870), [anon_sym_DASH] = ACTIONS(1868), [anon_sym_PLUS] = ACTIONS(1868), [anon_sym_STAR] = ACTIONS(1870), [anon_sym_AMP_AMP] = ACTIONS(1870), [anon_sym_AMP] = ACTIONS(1868), [anon_sym_SEMI] = ACTIONS(1870), [anon_sym_typedef] = ACTIONS(1868), [anon_sym_extern] = ACTIONS(1868), [anon_sym___attribute__] = ACTIONS(1868), [anon_sym_COLON_COLON] = ACTIONS(1870), [anon_sym_LBRACK_LBRACK] = ACTIONS(1870), [anon_sym___declspec] = ACTIONS(1868), [anon_sym___based] = ACTIONS(1868), [anon_sym___cdecl] = ACTIONS(1868), [anon_sym___clrcall] = ACTIONS(1868), [anon_sym___stdcall] = ACTIONS(1868), [anon_sym___fastcall] = ACTIONS(1868), [anon_sym___thiscall] = ACTIONS(1868), [anon_sym___vectorcall] = ACTIONS(1868), [anon_sym_LBRACE] = ACTIONS(1870), [anon_sym_LBRACK] = ACTIONS(1868), [anon_sym_static] = ACTIONS(1868), [anon_sym_register] = ACTIONS(1868), [anon_sym_inline] = ACTIONS(1868), [anon_sym_thread_local] = ACTIONS(1868), [anon_sym_const] = ACTIONS(1868), [anon_sym_volatile] = ACTIONS(1868), [anon_sym_restrict] = ACTIONS(1868), [anon_sym__Atomic] = ACTIONS(1868), [anon_sym_mutable] = ACTIONS(1868), [anon_sym_constexpr] = ACTIONS(1868), [anon_sym_signed] = ACTIONS(1868), [anon_sym_unsigned] = ACTIONS(1868), [anon_sym_long] = ACTIONS(1868), [anon_sym_short] = ACTIONS(1868), [sym_primitive_type] = ACTIONS(1868), [anon_sym_enum] = ACTIONS(1868), [anon_sym_class] = ACTIONS(1868), [anon_sym_struct] = ACTIONS(1868), [anon_sym_union] = ACTIONS(1868), [anon_sym_if] = ACTIONS(1868), [anon_sym_else] = ACTIONS(1868), [anon_sym_switch] = ACTIONS(1868), [anon_sym_case] = ACTIONS(1868), [anon_sym_default] = ACTIONS(1868), [anon_sym_while] = ACTIONS(1868), [anon_sym_do] = ACTIONS(1868), [anon_sym_for] = ACTIONS(1868), [anon_sym_return] = ACTIONS(1868), [anon_sym_break] = ACTIONS(1868), [anon_sym_continue] = ACTIONS(1868), [anon_sym_goto] = ACTIONS(1868), [anon_sym_DASH_DASH] = ACTIONS(1870), [anon_sym_PLUS_PLUS] = ACTIONS(1870), [anon_sym_sizeof] = ACTIONS(1868), [sym_number_literal] = ACTIONS(1870), [anon_sym_L_SQUOTE] = ACTIONS(1870), [anon_sym_u_SQUOTE] = ACTIONS(1870), [anon_sym_U_SQUOTE] = ACTIONS(1870), [anon_sym_u8_SQUOTE] = ACTIONS(1870), [anon_sym_SQUOTE] = ACTIONS(1870), [anon_sym_L_DQUOTE] = ACTIONS(1870), [anon_sym_u_DQUOTE] = ACTIONS(1870), [anon_sym_U_DQUOTE] = ACTIONS(1870), [anon_sym_u8_DQUOTE] = ACTIONS(1870), [anon_sym_DQUOTE] = ACTIONS(1870), [sym_true] = ACTIONS(1868), [sym_false] = ACTIONS(1868), [sym_null] = ACTIONS(1868), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1868), [anon_sym_virtual] = ACTIONS(1868), [anon_sym_explicit] = ACTIONS(1868), [sym_auto] = ACTIONS(1868), [anon_sym_typename] = ACTIONS(1868), [anon_sym_template] = ACTIONS(1868), [anon_sym_operator] = ACTIONS(1868), [anon_sym_delete] = ACTIONS(1868), [anon_sym_throw] = ACTIONS(1868), [anon_sym_namespace] = ACTIONS(1868), [anon_sym_using] = ACTIONS(1868), [anon_sym_static_assert] = ACTIONS(1868), [anon_sym_co_return] = ACTIONS(1868), [anon_sym_co_yield] = ACTIONS(1868), [anon_sym_try] = ACTIONS(1868), [anon_sym_co_await] = ACTIONS(1868), [anon_sym_new] = ACTIONS(1868), [sym_this] = ACTIONS(1868), [sym_nullptr] = ACTIONS(1868), [sym_raw_string_literal] = ACTIONS(1870), }, [449] = { [sym_identifier] = ACTIONS(1906), [aux_sym_preproc_include_token1] = ACTIONS(1906), [aux_sym_preproc_def_token1] = ACTIONS(1906), [aux_sym_preproc_if_token1] = ACTIONS(1906), [aux_sym_preproc_ifdef_token1] = ACTIONS(1906), [aux_sym_preproc_ifdef_token2] = ACTIONS(1906), [sym_preproc_directive] = ACTIONS(1906), [anon_sym_LPAREN2] = ACTIONS(1908), [anon_sym_BANG] = ACTIONS(1908), [anon_sym_TILDE] = ACTIONS(1908), [anon_sym_DASH] = ACTIONS(1906), [anon_sym_PLUS] = ACTIONS(1906), [anon_sym_STAR] = ACTIONS(1908), [anon_sym_AMP_AMP] = ACTIONS(1908), [anon_sym_AMP] = ACTIONS(1906), [anon_sym_SEMI] = ACTIONS(1908), [anon_sym_typedef] = ACTIONS(1906), [anon_sym_extern] = ACTIONS(1906), [anon_sym___attribute__] = ACTIONS(1906), [anon_sym_COLON_COLON] = ACTIONS(1908), [anon_sym_LBRACK_LBRACK] = ACTIONS(1908), [anon_sym___declspec] = ACTIONS(1906), [anon_sym___based] = ACTIONS(1906), [anon_sym___cdecl] = ACTIONS(1906), [anon_sym___clrcall] = ACTIONS(1906), [anon_sym___stdcall] = ACTIONS(1906), [anon_sym___fastcall] = ACTIONS(1906), [anon_sym___thiscall] = ACTIONS(1906), [anon_sym___vectorcall] = ACTIONS(1906), [anon_sym_LBRACE] = ACTIONS(1908), [anon_sym_RBRACE] = ACTIONS(1908), [anon_sym_LBRACK] = ACTIONS(1906), [anon_sym_static] = ACTIONS(1906), [anon_sym_register] = ACTIONS(1906), [anon_sym_inline] = ACTIONS(1906), [anon_sym_thread_local] = ACTIONS(1906), [anon_sym_const] = ACTIONS(1906), [anon_sym_volatile] = ACTIONS(1906), [anon_sym_restrict] = ACTIONS(1906), [anon_sym__Atomic] = ACTIONS(1906), [anon_sym_mutable] = ACTIONS(1906), [anon_sym_constexpr] = ACTIONS(1906), [anon_sym_signed] = ACTIONS(1906), [anon_sym_unsigned] = ACTIONS(1906), [anon_sym_long] = ACTIONS(1906), [anon_sym_short] = ACTIONS(1906), [sym_primitive_type] = ACTIONS(1906), [anon_sym_enum] = ACTIONS(1906), [anon_sym_class] = ACTIONS(1906), [anon_sym_struct] = ACTIONS(1906), [anon_sym_union] = ACTIONS(1906), [anon_sym_if] = ACTIONS(1906), [anon_sym_else] = ACTIONS(1906), [anon_sym_switch] = ACTIONS(1906), [anon_sym_case] = ACTIONS(1906), [anon_sym_default] = ACTIONS(1906), [anon_sym_while] = ACTIONS(1906), [anon_sym_do] = ACTIONS(1906), [anon_sym_for] = ACTIONS(1906), [anon_sym_return] = ACTIONS(1906), [anon_sym_break] = ACTIONS(1906), [anon_sym_continue] = ACTIONS(1906), [anon_sym_goto] = ACTIONS(1906), [anon_sym_DASH_DASH] = ACTIONS(1908), [anon_sym_PLUS_PLUS] = ACTIONS(1908), [anon_sym_sizeof] = ACTIONS(1906), [sym_number_literal] = ACTIONS(1908), [anon_sym_L_SQUOTE] = ACTIONS(1908), [anon_sym_u_SQUOTE] = ACTIONS(1908), [anon_sym_U_SQUOTE] = ACTIONS(1908), [anon_sym_u8_SQUOTE] = ACTIONS(1908), [anon_sym_SQUOTE] = ACTIONS(1908), [anon_sym_L_DQUOTE] = ACTIONS(1908), [anon_sym_u_DQUOTE] = ACTIONS(1908), [anon_sym_U_DQUOTE] = ACTIONS(1908), [anon_sym_u8_DQUOTE] = ACTIONS(1908), [anon_sym_DQUOTE] = ACTIONS(1908), [sym_true] = ACTIONS(1906), [sym_false] = ACTIONS(1906), [sym_null] = ACTIONS(1906), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1906), [anon_sym_virtual] = ACTIONS(1906), [anon_sym_explicit] = ACTIONS(1906), [sym_auto] = ACTIONS(1906), [anon_sym_typename] = ACTIONS(1906), [anon_sym_template] = ACTIONS(1906), [anon_sym_operator] = ACTIONS(1906), [anon_sym_delete] = ACTIONS(1906), [anon_sym_throw] = ACTIONS(1906), [anon_sym_namespace] = ACTIONS(1906), [anon_sym_using] = ACTIONS(1906), [anon_sym_static_assert] = ACTIONS(1906), [anon_sym_co_return] = ACTIONS(1906), [anon_sym_co_yield] = ACTIONS(1906), [anon_sym_try] = ACTIONS(1906), [anon_sym_co_await] = ACTIONS(1906), [anon_sym_new] = ACTIONS(1906), [sym_this] = ACTIONS(1906), [sym_nullptr] = ACTIONS(1906), [sym_raw_string_literal] = ACTIONS(1908), }, [450] = { [sym_identifier] = ACTIONS(1910), [aux_sym_preproc_include_token1] = ACTIONS(1910), [aux_sym_preproc_def_token1] = ACTIONS(1910), [aux_sym_preproc_if_token1] = ACTIONS(1910), [aux_sym_preproc_if_token2] = ACTIONS(1910), [aux_sym_preproc_ifdef_token1] = ACTIONS(1910), [aux_sym_preproc_ifdef_token2] = ACTIONS(1910), [sym_preproc_directive] = ACTIONS(1910), [anon_sym_LPAREN2] = ACTIONS(1912), [anon_sym_BANG] = ACTIONS(1912), [anon_sym_TILDE] = ACTIONS(1912), [anon_sym_DASH] = ACTIONS(1910), [anon_sym_PLUS] = ACTIONS(1910), [anon_sym_STAR] = ACTIONS(1912), [anon_sym_AMP_AMP] = ACTIONS(1912), [anon_sym_AMP] = ACTIONS(1910), [anon_sym_SEMI] = ACTIONS(1912), [anon_sym_typedef] = ACTIONS(1910), [anon_sym_extern] = ACTIONS(1910), [anon_sym___attribute__] = ACTIONS(1910), [anon_sym_COLON_COLON] = ACTIONS(1912), [anon_sym_LBRACK_LBRACK] = ACTIONS(1912), [anon_sym___declspec] = ACTIONS(1910), [anon_sym___based] = ACTIONS(1910), [anon_sym___cdecl] = ACTIONS(1910), [anon_sym___clrcall] = ACTIONS(1910), [anon_sym___stdcall] = ACTIONS(1910), [anon_sym___fastcall] = ACTIONS(1910), [anon_sym___thiscall] = ACTIONS(1910), [anon_sym___vectorcall] = ACTIONS(1910), [anon_sym_LBRACE] = ACTIONS(1912), [anon_sym_LBRACK] = ACTIONS(1910), [anon_sym_static] = ACTIONS(1910), [anon_sym_register] = ACTIONS(1910), [anon_sym_inline] = ACTIONS(1910), [anon_sym_thread_local] = ACTIONS(1910), [anon_sym_const] = ACTIONS(1910), [anon_sym_volatile] = ACTIONS(1910), [anon_sym_restrict] = ACTIONS(1910), [anon_sym__Atomic] = ACTIONS(1910), [anon_sym_mutable] = ACTIONS(1910), [anon_sym_constexpr] = ACTIONS(1910), [anon_sym_signed] = ACTIONS(1910), [anon_sym_unsigned] = ACTIONS(1910), [anon_sym_long] = ACTIONS(1910), [anon_sym_short] = ACTIONS(1910), [sym_primitive_type] = ACTIONS(1910), [anon_sym_enum] = ACTIONS(1910), [anon_sym_class] = ACTIONS(1910), [anon_sym_struct] = ACTIONS(1910), [anon_sym_union] = ACTIONS(1910), [anon_sym_if] = ACTIONS(1910), [anon_sym_else] = ACTIONS(1910), [anon_sym_switch] = ACTIONS(1910), [anon_sym_case] = ACTIONS(1910), [anon_sym_default] = ACTIONS(1910), [anon_sym_while] = ACTIONS(1910), [anon_sym_do] = ACTIONS(1910), [anon_sym_for] = ACTIONS(1910), [anon_sym_return] = ACTIONS(1910), [anon_sym_break] = ACTIONS(1910), [anon_sym_continue] = ACTIONS(1910), [anon_sym_goto] = ACTIONS(1910), [anon_sym_DASH_DASH] = ACTIONS(1912), [anon_sym_PLUS_PLUS] = ACTIONS(1912), [anon_sym_sizeof] = ACTIONS(1910), [sym_number_literal] = ACTIONS(1912), [anon_sym_L_SQUOTE] = ACTIONS(1912), [anon_sym_u_SQUOTE] = ACTIONS(1912), [anon_sym_U_SQUOTE] = ACTIONS(1912), [anon_sym_u8_SQUOTE] = ACTIONS(1912), [anon_sym_SQUOTE] = ACTIONS(1912), [anon_sym_L_DQUOTE] = ACTIONS(1912), [anon_sym_u_DQUOTE] = ACTIONS(1912), [anon_sym_U_DQUOTE] = ACTIONS(1912), [anon_sym_u8_DQUOTE] = ACTIONS(1912), [anon_sym_DQUOTE] = ACTIONS(1912), [sym_true] = ACTIONS(1910), [sym_false] = ACTIONS(1910), [sym_null] = ACTIONS(1910), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1910), [anon_sym_virtual] = ACTIONS(1910), [anon_sym_explicit] = ACTIONS(1910), [sym_auto] = ACTIONS(1910), [anon_sym_typename] = ACTIONS(1910), [anon_sym_template] = ACTIONS(1910), [anon_sym_operator] = ACTIONS(1910), [anon_sym_delete] = ACTIONS(1910), [anon_sym_throw] = ACTIONS(1910), [anon_sym_namespace] = ACTIONS(1910), [anon_sym_using] = ACTIONS(1910), [anon_sym_static_assert] = ACTIONS(1910), [anon_sym_co_return] = ACTIONS(1910), [anon_sym_co_yield] = ACTIONS(1910), [anon_sym_try] = ACTIONS(1910), [anon_sym_co_await] = ACTIONS(1910), [anon_sym_new] = ACTIONS(1910), [sym_this] = ACTIONS(1910), [sym_nullptr] = ACTIONS(1910), [sym_raw_string_literal] = ACTIONS(1912), }, [451] = { [sym_identifier] = ACTIONS(1906), [aux_sym_preproc_include_token1] = ACTIONS(1906), [aux_sym_preproc_def_token1] = ACTIONS(1906), [aux_sym_preproc_if_token1] = ACTIONS(1906), [aux_sym_preproc_if_token2] = ACTIONS(1906), [aux_sym_preproc_ifdef_token1] = ACTIONS(1906), [aux_sym_preproc_ifdef_token2] = ACTIONS(1906), [sym_preproc_directive] = ACTIONS(1906), [anon_sym_LPAREN2] = ACTIONS(1908), [anon_sym_BANG] = ACTIONS(1908), [anon_sym_TILDE] = ACTIONS(1908), [anon_sym_DASH] = ACTIONS(1906), [anon_sym_PLUS] = ACTIONS(1906), [anon_sym_STAR] = ACTIONS(1908), [anon_sym_AMP_AMP] = ACTIONS(1908), [anon_sym_AMP] = ACTIONS(1906), [anon_sym_SEMI] = ACTIONS(1908), [anon_sym_typedef] = ACTIONS(1906), [anon_sym_extern] = ACTIONS(1906), [anon_sym___attribute__] = ACTIONS(1906), [anon_sym_COLON_COLON] = ACTIONS(1908), [anon_sym_LBRACK_LBRACK] = ACTIONS(1908), [anon_sym___declspec] = ACTIONS(1906), [anon_sym___based] = ACTIONS(1906), [anon_sym___cdecl] = ACTIONS(1906), [anon_sym___clrcall] = ACTIONS(1906), [anon_sym___stdcall] = ACTIONS(1906), [anon_sym___fastcall] = ACTIONS(1906), [anon_sym___thiscall] = ACTIONS(1906), [anon_sym___vectorcall] = ACTIONS(1906), [anon_sym_LBRACE] = ACTIONS(1908), [anon_sym_LBRACK] = ACTIONS(1906), [anon_sym_static] = ACTIONS(1906), [anon_sym_register] = ACTIONS(1906), [anon_sym_inline] = ACTIONS(1906), [anon_sym_thread_local] = ACTIONS(1906), [anon_sym_const] = ACTIONS(1906), [anon_sym_volatile] = ACTIONS(1906), [anon_sym_restrict] = ACTIONS(1906), [anon_sym__Atomic] = ACTIONS(1906), [anon_sym_mutable] = ACTIONS(1906), [anon_sym_constexpr] = ACTIONS(1906), [anon_sym_signed] = ACTIONS(1906), [anon_sym_unsigned] = ACTIONS(1906), [anon_sym_long] = ACTIONS(1906), [anon_sym_short] = ACTIONS(1906), [sym_primitive_type] = ACTIONS(1906), [anon_sym_enum] = ACTIONS(1906), [anon_sym_class] = ACTIONS(1906), [anon_sym_struct] = ACTIONS(1906), [anon_sym_union] = ACTIONS(1906), [anon_sym_if] = ACTIONS(1906), [anon_sym_else] = ACTIONS(1906), [anon_sym_switch] = ACTIONS(1906), [anon_sym_case] = ACTIONS(1906), [anon_sym_default] = ACTIONS(1906), [anon_sym_while] = ACTIONS(1906), [anon_sym_do] = ACTIONS(1906), [anon_sym_for] = ACTIONS(1906), [anon_sym_return] = ACTIONS(1906), [anon_sym_break] = ACTIONS(1906), [anon_sym_continue] = ACTIONS(1906), [anon_sym_goto] = ACTIONS(1906), [anon_sym_DASH_DASH] = ACTIONS(1908), [anon_sym_PLUS_PLUS] = ACTIONS(1908), [anon_sym_sizeof] = ACTIONS(1906), [sym_number_literal] = ACTIONS(1908), [anon_sym_L_SQUOTE] = ACTIONS(1908), [anon_sym_u_SQUOTE] = ACTIONS(1908), [anon_sym_U_SQUOTE] = ACTIONS(1908), [anon_sym_u8_SQUOTE] = ACTIONS(1908), [anon_sym_SQUOTE] = ACTIONS(1908), [anon_sym_L_DQUOTE] = ACTIONS(1908), [anon_sym_u_DQUOTE] = ACTIONS(1908), [anon_sym_U_DQUOTE] = ACTIONS(1908), [anon_sym_u8_DQUOTE] = ACTIONS(1908), [anon_sym_DQUOTE] = ACTIONS(1908), [sym_true] = ACTIONS(1906), [sym_false] = ACTIONS(1906), [sym_null] = ACTIONS(1906), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1906), [anon_sym_virtual] = ACTIONS(1906), [anon_sym_explicit] = ACTIONS(1906), [sym_auto] = ACTIONS(1906), [anon_sym_typename] = ACTIONS(1906), [anon_sym_template] = ACTIONS(1906), [anon_sym_operator] = ACTIONS(1906), [anon_sym_delete] = ACTIONS(1906), [anon_sym_throw] = ACTIONS(1906), [anon_sym_namespace] = ACTIONS(1906), [anon_sym_using] = ACTIONS(1906), [anon_sym_static_assert] = ACTIONS(1906), [anon_sym_co_return] = ACTIONS(1906), [anon_sym_co_yield] = ACTIONS(1906), [anon_sym_try] = ACTIONS(1906), [anon_sym_co_await] = ACTIONS(1906), [anon_sym_new] = ACTIONS(1906), [sym_this] = ACTIONS(1906), [sym_nullptr] = ACTIONS(1906), [sym_raw_string_literal] = ACTIONS(1908), }, [452] = { [sym_identifier] = ACTIONS(1902), [aux_sym_preproc_include_token1] = ACTIONS(1902), [aux_sym_preproc_def_token1] = ACTIONS(1902), [aux_sym_preproc_if_token1] = ACTIONS(1902), [aux_sym_preproc_if_token2] = ACTIONS(1902), [aux_sym_preproc_ifdef_token1] = ACTIONS(1902), [aux_sym_preproc_ifdef_token2] = ACTIONS(1902), [sym_preproc_directive] = ACTIONS(1902), [anon_sym_LPAREN2] = ACTIONS(1904), [anon_sym_BANG] = ACTIONS(1904), [anon_sym_TILDE] = ACTIONS(1904), [anon_sym_DASH] = ACTIONS(1902), [anon_sym_PLUS] = ACTIONS(1902), [anon_sym_STAR] = ACTIONS(1904), [anon_sym_AMP_AMP] = ACTIONS(1904), [anon_sym_AMP] = ACTIONS(1902), [anon_sym_SEMI] = ACTIONS(1904), [anon_sym_typedef] = ACTIONS(1902), [anon_sym_extern] = ACTIONS(1902), [anon_sym___attribute__] = ACTIONS(1902), [anon_sym_COLON_COLON] = ACTIONS(1904), [anon_sym_LBRACK_LBRACK] = ACTIONS(1904), [anon_sym___declspec] = ACTIONS(1902), [anon_sym___based] = ACTIONS(1902), [anon_sym___cdecl] = ACTIONS(1902), [anon_sym___clrcall] = ACTIONS(1902), [anon_sym___stdcall] = ACTIONS(1902), [anon_sym___fastcall] = ACTIONS(1902), [anon_sym___thiscall] = ACTIONS(1902), [anon_sym___vectorcall] = ACTIONS(1902), [anon_sym_LBRACE] = ACTIONS(1904), [anon_sym_LBRACK] = ACTIONS(1902), [anon_sym_static] = ACTIONS(1902), [anon_sym_register] = ACTIONS(1902), [anon_sym_inline] = ACTIONS(1902), [anon_sym_thread_local] = ACTIONS(1902), [anon_sym_const] = ACTIONS(1902), [anon_sym_volatile] = ACTIONS(1902), [anon_sym_restrict] = ACTIONS(1902), [anon_sym__Atomic] = ACTIONS(1902), [anon_sym_mutable] = ACTIONS(1902), [anon_sym_constexpr] = ACTIONS(1902), [anon_sym_signed] = ACTIONS(1902), [anon_sym_unsigned] = ACTIONS(1902), [anon_sym_long] = ACTIONS(1902), [anon_sym_short] = ACTIONS(1902), [sym_primitive_type] = ACTIONS(1902), [anon_sym_enum] = ACTIONS(1902), [anon_sym_class] = ACTIONS(1902), [anon_sym_struct] = ACTIONS(1902), [anon_sym_union] = ACTIONS(1902), [anon_sym_if] = ACTIONS(1902), [anon_sym_else] = ACTIONS(1902), [anon_sym_switch] = ACTIONS(1902), [anon_sym_case] = ACTIONS(1902), [anon_sym_default] = ACTIONS(1902), [anon_sym_while] = ACTIONS(1902), [anon_sym_do] = ACTIONS(1902), [anon_sym_for] = ACTIONS(1902), [anon_sym_return] = ACTIONS(1902), [anon_sym_break] = ACTIONS(1902), [anon_sym_continue] = ACTIONS(1902), [anon_sym_goto] = ACTIONS(1902), [anon_sym_DASH_DASH] = ACTIONS(1904), [anon_sym_PLUS_PLUS] = ACTIONS(1904), [anon_sym_sizeof] = ACTIONS(1902), [sym_number_literal] = ACTIONS(1904), [anon_sym_L_SQUOTE] = ACTIONS(1904), [anon_sym_u_SQUOTE] = ACTIONS(1904), [anon_sym_U_SQUOTE] = ACTIONS(1904), [anon_sym_u8_SQUOTE] = ACTIONS(1904), [anon_sym_SQUOTE] = ACTIONS(1904), [anon_sym_L_DQUOTE] = ACTIONS(1904), [anon_sym_u_DQUOTE] = ACTIONS(1904), [anon_sym_U_DQUOTE] = ACTIONS(1904), [anon_sym_u8_DQUOTE] = ACTIONS(1904), [anon_sym_DQUOTE] = ACTIONS(1904), [sym_true] = ACTIONS(1902), [sym_false] = ACTIONS(1902), [sym_null] = ACTIONS(1902), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1902), [anon_sym_virtual] = ACTIONS(1902), [anon_sym_explicit] = ACTIONS(1902), [sym_auto] = ACTIONS(1902), [anon_sym_typename] = ACTIONS(1902), [anon_sym_template] = ACTIONS(1902), [anon_sym_operator] = ACTIONS(1902), [anon_sym_delete] = ACTIONS(1902), [anon_sym_throw] = ACTIONS(1902), [anon_sym_namespace] = ACTIONS(1902), [anon_sym_using] = ACTIONS(1902), [anon_sym_static_assert] = ACTIONS(1902), [anon_sym_co_return] = ACTIONS(1902), [anon_sym_co_yield] = ACTIONS(1902), [anon_sym_try] = ACTIONS(1902), [anon_sym_co_await] = ACTIONS(1902), [anon_sym_new] = ACTIONS(1902), [sym_this] = ACTIONS(1902), [sym_nullptr] = ACTIONS(1902), [sym_raw_string_literal] = ACTIONS(1904), }, [453] = { [sym_identifier] = ACTIONS(1910), [aux_sym_preproc_include_token1] = ACTIONS(1910), [aux_sym_preproc_def_token1] = ACTIONS(1910), [aux_sym_preproc_if_token1] = ACTIONS(1910), [aux_sym_preproc_ifdef_token1] = ACTIONS(1910), [aux_sym_preproc_ifdef_token2] = ACTIONS(1910), [sym_preproc_directive] = ACTIONS(1910), [anon_sym_LPAREN2] = ACTIONS(1912), [anon_sym_BANG] = ACTIONS(1912), [anon_sym_TILDE] = ACTIONS(1912), [anon_sym_DASH] = ACTIONS(1910), [anon_sym_PLUS] = ACTIONS(1910), [anon_sym_STAR] = ACTIONS(1912), [anon_sym_AMP_AMP] = ACTIONS(1912), [anon_sym_AMP] = ACTIONS(1910), [anon_sym_SEMI] = ACTIONS(1912), [anon_sym_typedef] = ACTIONS(1910), [anon_sym_extern] = ACTIONS(1910), [anon_sym___attribute__] = ACTIONS(1910), [anon_sym_COLON_COLON] = ACTIONS(1912), [anon_sym_LBRACK_LBRACK] = ACTIONS(1912), [anon_sym___declspec] = ACTIONS(1910), [anon_sym___based] = ACTIONS(1910), [anon_sym___cdecl] = ACTIONS(1910), [anon_sym___clrcall] = ACTIONS(1910), [anon_sym___stdcall] = ACTIONS(1910), [anon_sym___fastcall] = ACTIONS(1910), [anon_sym___thiscall] = ACTIONS(1910), [anon_sym___vectorcall] = ACTIONS(1910), [anon_sym_LBRACE] = ACTIONS(1912), [anon_sym_RBRACE] = ACTIONS(1912), [anon_sym_LBRACK] = ACTIONS(1910), [anon_sym_static] = ACTIONS(1910), [anon_sym_register] = ACTIONS(1910), [anon_sym_inline] = ACTIONS(1910), [anon_sym_thread_local] = ACTIONS(1910), [anon_sym_const] = ACTIONS(1910), [anon_sym_volatile] = ACTIONS(1910), [anon_sym_restrict] = ACTIONS(1910), [anon_sym__Atomic] = ACTIONS(1910), [anon_sym_mutable] = ACTIONS(1910), [anon_sym_constexpr] = ACTIONS(1910), [anon_sym_signed] = ACTIONS(1910), [anon_sym_unsigned] = ACTIONS(1910), [anon_sym_long] = ACTIONS(1910), [anon_sym_short] = ACTIONS(1910), [sym_primitive_type] = ACTIONS(1910), [anon_sym_enum] = ACTIONS(1910), [anon_sym_class] = ACTIONS(1910), [anon_sym_struct] = ACTIONS(1910), [anon_sym_union] = ACTIONS(1910), [anon_sym_if] = ACTIONS(1910), [anon_sym_else] = ACTIONS(1910), [anon_sym_switch] = ACTIONS(1910), [anon_sym_case] = ACTIONS(1910), [anon_sym_default] = ACTIONS(1910), [anon_sym_while] = ACTIONS(1910), [anon_sym_do] = ACTIONS(1910), [anon_sym_for] = ACTIONS(1910), [anon_sym_return] = ACTIONS(1910), [anon_sym_break] = ACTIONS(1910), [anon_sym_continue] = ACTIONS(1910), [anon_sym_goto] = ACTIONS(1910), [anon_sym_DASH_DASH] = ACTIONS(1912), [anon_sym_PLUS_PLUS] = ACTIONS(1912), [anon_sym_sizeof] = ACTIONS(1910), [sym_number_literal] = ACTIONS(1912), [anon_sym_L_SQUOTE] = ACTIONS(1912), [anon_sym_u_SQUOTE] = ACTIONS(1912), [anon_sym_U_SQUOTE] = ACTIONS(1912), [anon_sym_u8_SQUOTE] = ACTIONS(1912), [anon_sym_SQUOTE] = ACTIONS(1912), [anon_sym_L_DQUOTE] = ACTIONS(1912), [anon_sym_u_DQUOTE] = ACTIONS(1912), [anon_sym_U_DQUOTE] = ACTIONS(1912), [anon_sym_u8_DQUOTE] = ACTIONS(1912), [anon_sym_DQUOTE] = ACTIONS(1912), [sym_true] = ACTIONS(1910), [sym_false] = ACTIONS(1910), [sym_null] = ACTIONS(1910), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1910), [anon_sym_virtual] = ACTIONS(1910), [anon_sym_explicit] = ACTIONS(1910), [sym_auto] = ACTIONS(1910), [anon_sym_typename] = ACTIONS(1910), [anon_sym_template] = ACTIONS(1910), [anon_sym_operator] = ACTIONS(1910), [anon_sym_delete] = ACTIONS(1910), [anon_sym_throw] = ACTIONS(1910), [anon_sym_namespace] = ACTIONS(1910), [anon_sym_using] = ACTIONS(1910), [anon_sym_static_assert] = ACTIONS(1910), [anon_sym_co_return] = ACTIONS(1910), [anon_sym_co_yield] = ACTIONS(1910), [anon_sym_try] = ACTIONS(1910), [anon_sym_co_await] = ACTIONS(1910), [anon_sym_new] = ACTIONS(1910), [sym_this] = ACTIONS(1910), [sym_nullptr] = ACTIONS(1910), [sym_raw_string_literal] = ACTIONS(1912), }, [454] = { [ts_builtin_sym_end] = ACTIONS(1940), [sym_identifier] = ACTIONS(1938), [aux_sym_preproc_include_token1] = ACTIONS(1938), [aux_sym_preproc_def_token1] = ACTIONS(1938), [aux_sym_preproc_if_token1] = ACTIONS(1938), [aux_sym_preproc_ifdef_token1] = ACTIONS(1938), [aux_sym_preproc_ifdef_token2] = ACTIONS(1938), [sym_preproc_directive] = ACTIONS(1938), [anon_sym_LPAREN2] = ACTIONS(1940), [anon_sym_BANG] = ACTIONS(1940), [anon_sym_TILDE] = ACTIONS(1940), [anon_sym_DASH] = ACTIONS(1938), [anon_sym_PLUS] = ACTIONS(1938), [anon_sym_STAR] = ACTIONS(1940), [anon_sym_AMP_AMP] = ACTIONS(1940), [anon_sym_AMP] = ACTIONS(1938), [anon_sym_SEMI] = ACTIONS(1940), [anon_sym_typedef] = ACTIONS(1938), [anon_sym_extern] = ACTIONS(1938), [anon_sym___attribute__] = ACTIONS(1938), [anon_sym_COLON_COLON] = ACTIONS(1940), [anon_sym_LBRACK_LBRACK] = ACTIONS(1940), [anon_sym___declspec] = ACTIONS(1938), [anon_sym___based] = ACTIONS(1938), [anon_sym___cdecl] = ACTIONS(1938), [anon_sym___clrcall] = ACTIONS(1938), [anon_sym___stdcall] = ACTIONS(1938), [anon_sym___fastcall] = ACTIONS(1938), [anon_sym___thiscall] = ACTIONS(1938), [anon_sym___vectorcall] = ACTIONS(1938), [anon_sym_LBRACE] = ACTIONS(1940), [anon_sym_LBRACK] = ACTIONS(1938), [anon_sym_static] = ACTIONS(1938), [anon_sym_register] = ACTIONS(1938), [anon_sym_inline] = ACTIONS(1938), [anon_sym_thread_local] = ACTIONS(1938), [anon_sym_const] = ACTIONS(1938), [anon_sym_volatile] = ACTIONS(1938), [anon_sym_restrict] = ACTIONS(1938), [anon_sym__Atomic] = ACTIONS(1938), [anon_sym_mutable] = ACTIONS(1938), [anon_sym_constexpr] = ACTIONS(1938), [anon_sym_signed] = ACTIONS(1938), [anon_sym_unsigned] = ACTIONS(1938), [anon_sym_long] = ACTIONS(1938), [anon_sym_short] = ACTIONS(1938), [sym_primitive_type] = ACTIONS(1938), [anon_sym_enum] = ACTIONS(1938), [anon_sym_class] = ACTIONS(1938), [anon_sym_struct] = ACTIONS(1938), [anon_sym_union] = ACTIONS(1938), [anon_sym_if] = ACTIONS(1938), [anon_sym_else] = ACTIONS(1938), [anon_sym_switch] = ACTIONS(1938), [anon_sym_case] = ACTIONS(1938), [anon_sym_default] = ACTIONS(1938), [anon_sym_while] = ACTIONS(1938), [anon_sym_do] = ACTIONS(1938), [anon_sym_for] = ACTIONS(1938), [anon_sym_return] = ACTIONS(1938), [anon_sym_break] = ACTIONS(1938), [anon_sym_continue] = ACTIONS(1938), [anon_sym_goto] = ACTIONS(1938), [anon_sym_DASH_DASH] = ACTIONS(1940), [anon_sym_PLUS_PLUS] = ACTIONS(1940), [anon_sym_sizeof] = ACTIONS(1938), [sym_number_literal] = ACTIONS(1940), [anon_sym_L_SQUOTE] = ACTIONS(1940), [anon_sym_u_SQUOTE] = ACTIONS(1940), [anon_sym_U_SQUOTE] = ACTIONS(1940), [anon_sym_u8_SQUOTE] = ACTIONS(1940), [anon_sym_SQUOTE] = ACTIONS(1940), [anon_sym_L_DQUOTE] = ACTIONS(1940), [anon_sym_u_DQUOTE] = ACTIONS(1940), [anon_sym_U_DQUOTE] = ACTIONS(1940), [anon_sym_u8_DQUOTE] = ACTIONS(1940), [anon_sym_DQUOTE] = ACTIONS(1940), [sym_true] = ACTIONS(1938), [sym_false] = ACTIONS(1938), [sym_null] = ACTIONS(1938), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1938), [anon_sym_virtual] = ACTIONS(1938), [anon_sym_explicit] = ACTIONS(1938), [sym_auto] = ACTIONS(1938), [anon_sym_typename] = ACTIONS(1938), [anon_sym_template] = ACTIONS(1938), [anon_sym_operator] = ACTIONS(1938), [anon_sym_delete] = ACTIONS(1938), [anon_sym_throw] = ACTIONS(1938), [anon_sym_namespace] = ACTIONS(1938), [anon_sym_using] = ACTIONS(1938), [anon_sym_static_assert] = ACTIONS(1938), [anon_sym_co_return] = ACTIONS(1938), [anon_sym_co_yield] = ACTIONS(1938), [anon_sym_try] = ACTIONS(1938), [anon_sym_co_await] = ACTIONS(1938), [anon_sym_new] = ACTIONS(1938), [sym_this] = ACTIONS(1938), [sym_nullptr] = ACTIONS(1938), [sym_raw_string_literal] = ACTIONS(1940), }, [455] = { [sym_identifier] = ACTIONS(1898), [aux_sym_preproc_include_token1] = ACTIONS(1898), [aux_sym_preproc_def_token1] = ACTIONS(1898), [aux_sym_preproc_if_token1] = ACTIONS(1898), [aux_sym_preproc_if_token2] = ACTIONS(1898), [aux_sym_preproc_ifdef_token1] = ACTIONS(1898), [aux_sym_preproc_ifdef_token2] = ACTIONS(1898), [sym_preproc_directive] = ACTIONS(1898), [anon_sym_LPAREN2] = ACTIONS(1900), [anon_sym_BANG] = ACTIONS(1900), [anon_sym_TILDE] = ACTIONS(1900), [anon_sym_DASH] = ACTIONS(1898), [anon_sym_PLUS] = ACTIONS(1898), [anon_sym_STAR] = ACTIONS(1900), [anon_sym_AMP_AMP] = ACTIONS(1900), [anon_sym_AMP] = ACTIONS(1898), [anon_sym_SEMI] = ACTIONS(1900), [anon_sym_typedef] = ACTIONS(1898), [anon_sym_extern] = ACTIONS(1898), [anon_sym___attribute__] = ACTIONS(1898), [anon_sym_COLON_COLON] = ACTIONS(1900), [anon_sym_LBRACK_LBRACK] = ACTIONS(1900), [anon_sym___declspec] = ACTIONS(1898), [anon_sym___based] = ACTIONS(1898), [anon_sym___cdecl] = ACTIONS(1898), [anon_sym___clrcall] = ACTIONS(1898), [anon_sym___stdcall] = ACTIONS(1898), [anon_sym___fastcall] = ACTIONS(1898), [anon_sym___thiscall] = ACTIONS(1898), [anon_sym___vectorcall] = ACTIONS(1898), [anon_sym_LBRACE] = ACTIONS(1900), [anon_sym_LBRACK] = ACTIONS(1898), [anon_sym_static] = ACTIONS(1898), [anon_sym_register] = ACTIONS(1898), [anon_sym_inline] = ACTIONS(1898), [anon_sym_thread_local] = ACTIONS(1898), [anon_sym_const] = ACTIONS(1898), [anon_sym_volatile] = ACTIONS(1898), [anon_sym_restrict] = ACTIONS(1898), [anon_sym__Atomic] = ACTIONS(1898), [anon_sym_mutable] = ACTIONS(1898), [anon_sym_constexpr] = ACTIONS(1898), [anon_sym_signed] = ACTIONS(1898), [anon_sym_unsigned] = ACTIONS(1898), [anon_sym_long] = ACTIONS(1898), [anon_sym_short] = ACTIONS(1898), [sym_primitive_type] = ACTIONS(1898), [anon_sym_enum] = ACTIONS(1898), [anon_sym_class] = ACTIONS(1898), [anon_sym_struct] = ACTIONS(1898), [anon_sym_union] = ACTIONS(1898), [anon_sym_if] = ACTIONS(1898), [anon_sym_else] = ACTIONS(1898), [anon_sym_switch] = ACTIONS(1898), [anon_sym_case] = ACTIONS(1898), [anon_sym_default] = ACTIONS(1898), [anon_sym_while] = ACTIONS(1898), [anon_sym_do] = ACTIONS(1898), [anon_sym_for] = ACTIONS(1898), [anon_sym_return] = ACTIONS(1898), [anon_sym_break] = ACTIONS(1898), [anon_sym_continue] = ACTIONS(1898), [anon_sym_goto] = ACTIONS(1898), [anon_sym_DASH_DASH] = ACTIONS(1900), [anon_sym_PLUS_PLUS] = ACTIONS(1900), [anon_sym_sizeof] = ACTIONS(1898), [sym_number_literal] = ACTIONS(1900), [anon_sym_L_SQUOTE] = ACTIONS(1900), [anon_sym_u_SQUOTE] = ACTIONS(1900), [anon_sym_U_SQUOTE] = ACTIONS(1900), [anon_sym_u8_SQUOTE] = ACTIONS(1900), [anon_sym_SQUOTE] = ACTIONS(1900), [anon_sym_L_DQUOTE] = ACTIONS(1900), [anon_sym_u_DQUOTE] = ACTIONS(1900), [anon_sym_U_DQUOTE] = ACTIONS(1900), [anon_sym_u8_DQUOTE] = ACTIONS(1900), [anon_sym_DQUOTE] = ACTIONS(1900), [sym_true] = ACTIONS(1898), [sym_false] = ACTIONS(1898), [sym_null] = ACTIONS(1898), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1898), [anon_sym_virtual] = ACTIONS(1898), [anon_sym_explicit] = ACTIONS(1898), [sym_auto] = ACTIONS(1898), [anon_sym_typename] = ACTIONS(1898), [anon_sym_template] = ACTIONS(1898), [anon_sym_operator] = ACTIONS(1898), [anon_sym_delete] = ACTIONS(1898), [anon_sym_throw] = ACTIONS(1898), [anon_sym_namespace] = ACTIONS(1898), [anon_sym_using] = ACTIONS(1898), [anon_sym_static_assert] = ACTIONS(1898), [anon_sym_co_return] = ACTIONS(1898), [anon_sym_co_yield] = ACTIONS(1898), [anon_sym_try] = ACTIONS(1898), [anon_sym_co_await] = ACTIONS(1898), [anon_sym_new] = ACTIONS(1898), [sym_this] = ACTIONS(1898), [sym_nullptr] = ACTIONS(1898), [sym_raw_string_literal] = ACTIONS(1900), }, [456] = { [ts_builtin_sym_end] = ACTIONS(1944), [sym_identifier] = ACTIONS(1942), [aux_sym_preproc_include_token1] = ACTIONS(1942), [aux_sym_preproc_def_token1] = ACTIONS(1942), [aux_sym_preproc_if_token1] = ACTIONS(1942), [aux_sym_preproc_ifdef_token1] = ACTIONS(1942), [aux_sym_preproc_ifdef_token2] = ACTIONS(1942), [sym_preproc_directive] = ACTIONS(1942), [anon_sym_LPAREN2] = ACTIONS(1944), [anon_sym_BANG] = ACTIONS(1944), [anon_sym_TILDE] = ACTIONS(1944), [anon_sym_DASH] = ACTIONS(1942), [anon_sym_PLUS] = ACTIONS(1942), [anon_sym_STAR] = ACTIONS(1944), [anon_sym_AMP_AMP] = ACTIONS(1944), [anon_sym_AMP] = ACTIONS(1942), [anon_sym_SEMI] = ACTIONS(1944), [anon_sym_typedef] = ACTIONS(1942), [anon_sym_extern] = ACTIONS(1942), [anon_sym___attribute__] = ACTIONS(1942), [anon_sym_COLON_COLON] = ACTIONS(1944), [anon_sym_LBRACK_LBRACK] = ACTIONS(1944), [anon_sym___declspec] = ACTIONS(1942), [anon_sym___based] = ACTIONS(1942), [anon_sym___cdecl] = ACTIONS(1942), [anon_sym___clrcall] = ACTIONS(1942), [anon_sym___stdcall] = ACTIONS(1942), [anon_sym___fastcall] = ACTIONS(1942), [anon_sym___thiscall] = ACTIONS(1942), [anon_sym___vectorcall] = ACTIONS(1942), [anon_sym_LBRACE] = ACTIONS(1944), [anon_sym_LBRACK] = ACTIONS(1942), [anon_sym_static] = ACTIONS(1942), [anon_sym_register] = ACTIONS(1942), [anon_sym_inline] = ACTIONS(1942), [anon_sym_thread_local] = ACTIONS(1942), [anon_sym_const] = ACTIONS(1942), [anon_sym_volatile] = ACTIONS(1942), [anon_sym_restrict] = ACTIONS(1942), [anon_sym__Atomic] = ACTIONS(1942), [anon_sym_mutable] = ACTIONS(1942), [anon_sym_constexpr] = ACTIONS(1942), [anon_sym_signed] = ACTIONS(1942), [anon_sym_unsigned] = ACTIONS(1942), [anon_sym_long] = ACTIONS(1942), [anon_sym_short] = ACTIONS(1942), [sym_primitive_type] = ACTIONS(1942), [anon_sym_enum] = ACTIONS(1942), [anon_sym_class] = ACTIONS(1942), [anon_sym_struct] = ACTIONS(1942), [anon_sym_union] = ACTIONS(1942), [anon_sym_if] = ACTIONS(1942), [anon_sym_else] = ACTIONS(1942), [anon_sym_switch] = ACTIONS(1942), [anon_sym_case] = ACTIONS(1942), [anon_sym_default] = ACTIONS(1942), [anon_sym_while] = ACTIONS(1942), [anon_sym_do] = ACTIONS(1942), [anon_sym_for] = ACTIONS(1942), [anon_sym_return] = ACTIONS(1942), [anon_sym_break] = ACTIONS(1942), [anon_sym_continue] = ACTIONS(1942), [anon_sym_goto] = ACTIONS(1942), [anon_sym_DASH_DASH] = ACTIONS(1944), [anon_sym_PLUS_PLUS] = ACTIONS(1944), [anon_sym_sizeof] = ACTIONS(1942), [sym_number_literal] = ACTIONS(1944), [anon_sym_L_SQUOTE] = ACTIONS(1944), [anon_sym_u_SQUOTE] = ACTIONS(1944), [anon_sym_U_SQUOTE] = ACTIONS(1944), [anon_sym_u8_SQUOTE] = ACTIONS(1944), [anon_sym_SQUOTE] = ACTIONS(1944), [anon_sym_L_DQUOTE] = ACTIONS(1944), [anon_sym_u_DQUOTE] = ACTIONS(1944), [anon_sym_U_DQUOTE] = ACTIONS(1944), [anon_sym_u8_DQUOTE] = ACTIONS(1944), [anon_sym_DQUOTE] = ACTIONS(1944), [sym_true] = ACTIONS(1942), [sym_false] = ACTIONS(1942), [sym_null] = ACTIONS(1942), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1942), [anon_sym_virtual] = ACTIONS(1942), [anon_sym_explicit] = ACTIONS(1942), [sym_auto] = ACTIONS(1942), [anon_sym_typename] = ACTIONS(1942), [anon_sym_template] = ACTIONS(1942), [anon_sym_operator] = ACTIONS(1942), [anon_sym_delete] = ACTIONS(1942), [anon_sym_throw] = ACTIONS(1942), [anon_sym_namespace] = ACTIONS(1942), [anon_sym_using] = ACTIONS(1942), [anon_sym_static_assert] = ACTIONS(1942), [anon_sym_co_return] = ACTIONS(1942), [anon_sym_co_yield] = ACTIONS(1942), [anon_sym_try] = ACTIONS(1942), [anon_sym_co_await] = ACTIONS(1942), [anon_sym_new] = ACTIONS(1942), [sym_this] = ACTIONS(1942), [sym_nullptr] = ACTIONS(1942), [sym_raw_string_literal] = ACTIONS(1944), }, [457] = { [ts_builtin_sym_end] = ACTIONS(1886), [sym_identifier] = ACTIONS(1884), [aux_sym_preproc_include_token1] = ACTIONS(1884), [aux_sym_preproc_def_token1] = ACTIONS(1884), [aux_sym_preproc_if_token1] = ACTIONS(1884), [aux_sym_preproc_ifdef_token1] = ACTIONS(1884), [aux_sym_preproc_ifdef_token2] = ACTIONS(1884), [sym_preproc_directive] = ACTIONS(1884), [anon_sym_LPAREN2] = ACTIONS(1886), [anon_sym_BANG] = ACTIONS(1886), [anon_sym_TILDE] = ACTIONS(1886), [anon_sym_DASH] = ACTIONS(1884), [anon_sym_PLUS] = ACTIONS(1884), [anon_sym_STAR] = ACTIONS(1886), [anon_sym_AMP_AMP] = ACTIONS(1886), [anon_sym_AMP] = ACTIONS(1884), [anon_sym_SEMI] = ACTIONS(1886), [anon_sym_typedef] = ACTIONS(1884), [anon_sym_extern] = ACTIONS(1884), [anon_sym___attribute__] = ACTIONS(1884), [anon_sym_COLON_COLON] = ACTIONS(1886), [anon_sym_LBRACK_LBRACK] = ACTIONS(1886), [anon_sym___declspec] = ACTIONS(1884), [anon_sym___based] = ACTIONS(1884), [anon_sym___cdecl] = ACTIONS(1884), [anon_sym___clrcall] = ACTIONS(1884), [anon_sym___stdcall] = ACTIONS(1884), [anon_sym___fastcall] = ACTIONS(1884), [anon_sym___thiscall] = ACTIONS(1884), [anon_sym___vectorcall] = ACTIONS(1884), [anon_sym_LBRACE] = ACTIONS(1886), [anon_sym_LBRACK] = ACTIONS(1884), [anon_sym_static] = ACTIONS(1884), [anon_sym_register] = ACTIONS(1884), [anon_sym_inline] = ACTIONS(1884), [anon_sym_thread_local] = ACTIONS(1884), [anon_sym_const] = ACTIONS(1884), [anon_sym_volatile] = ACTIONS(1884), [anon_sym_restrict] = ACTIONS(1884), [anon_sym__Atomic] = ACTIONS(1884), [anon_sym_mutable] = ACTIONS(1884), [anon_sym_constexpr] = ACTIONS(1884), [anon_sym_signed] = ACTIONS(1884), [anon_sym_unsigned] = ACTIONS(1884), [anon_sym_long] = ACTIONS(1884), [anon_sym_short] = ACTIONS(1884), [sym_primitive_type] = ACTIONS(1884), [anon_sym_enum] = ACTIONS(1884), [anon_sym_class] = ACTIONS(1884), [anon_sym_struct] = ACTIONS(1884), [anon_sym_union] = ACTIONS(1884), [anon_sym_if] = ACTIONS(1884), [anon_sym_else] = ACTIONS(1884), [anon_sym_switch] = ACTIONS(1884), [anon_sym_case] = ACTIONS(1884), [anon_sym_default] = ACTIONS(1884), [anon_sym_while] = ACTIONS(1884), [anon_sym_do] = ACTIONS(1884), [anon_sym_for] = ACTIONS(1884), [anon_sym_return] = ACTIONS(1884), [anon_sym_break] = ACTIONS(1884), [anon_sym_continue] = ACTIONS(1884), [anon_sym_goto] = ACTIONS(1884), [anon_sym_DASH_DASH] = ACTIONS(1886), [anon_sym_PLUS_PLUS] = ACTIONS(1886), [anon_sym_sizeof] = ACTIONS(1884), [sym_number_literal] = ACTIONS(1886), [anon_sym_L_SQUOTE] = ACTIONS(1886), [anon_sym_u_SQUOTE] = ACTIONS(1886), [anon_sym_U_SQUOTE] = ACTIONS(1886), [anon_sym_u8_SQUOTE] = ACTIONS(1886), [anon_sym_SQUOTE] = ACTIONS(1886), [anon_sym_L_DQUOTE] = ACTIONS(1886), [anon_sym_u_DQUOTE] = ACTIONS(1886), [anon_sym_U_DQUOTE] = ACTIONS(1886), [anon_sym_u8_DQUOTE] = ACTIONS(1886), [anon_sym_DQUOTE] = ACTIONS(1886), [sym_true] = ACTIONS(1884), [sym_false] = ACTIONS(1884), [sym_null] = ACTIONS(1884), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1884), [anon_sym_virtual] = ACTIONS(1884), [anon_sym_explicit] = ACTIONS(1884), [sym_auto] = ACTIONS(1884), [anon_sym_typename] = ACTIONS(1884), [anon_sym_template] = ACTIONS(1884), [anon_sym_operator] = ACTIONS(1884), [anon_sym_delete] = ACTIONS(1884), [anon_sym_throw] = ACTIONS(1884), [anon_sym_namespace] = ACTIONS(1884), [anon_sym_using] = ACTIONS(1884), [anon_sym_static_assert] = ACTIONS(1884), [anon_sym_co_return] = ACTIONS(1884), [anon_sym_co_yield] = ACTIONS(1884), [anon_sym_try] = ACTIONS(1884), [anon_sym_co_await] = ACTIONS(1884), [anon_sym_new] = ACTIONS(1884), [sym_this] = ACTIONS(1884), [sym_nullptr] = ACTIONS(1884), [sym_raw_string_literal] = ACTIONS(1886), }, [458] = { [ts_builtin_sym_end] = ACTIONS(1890), [sym_identifier] = ACTIONS(1888), [aux_sym_preproc_include_token1] = ACTIONS(1888), [aux_sym_preproc_def_token1] = ACTIONS(1888), [aux_sym_preproc_if_token1] = ACTIONS(1888), [aux_sym_preproc_ifdef_token1] = ACTIONS(1888), [aux_sym_preproc_ifdef_token2] = ACTIONS(1888), [sym_preproc_directive] = ACTIONS(1888), [anon_sym_LPAREN2] = ACTIONS(1890), [anon_sym_BANG] = ACTIONS(1890), [anon_sym_TILDE] = ACTIONS(1890), [anon_sym_DASH] = ACTIONS(1888), [anon_sym_PLUS] = ACTIONS(1888), [anon_sym_STAR] = ACTIONS(1890), [anon_sym_AMP_AMP] = ACTIONS(1890), [anon_sym_AMP] = ACTIONS(1888), [anon_sym_SEMI] = ACTIONS(1890), [anon_sym_typedef] = ACTIONS(1888), [anon_sym_extern] = ACTIONS(1888), [anon_sym___attribute__] = ACTIONS(1888), [anon_sym_COLON_COLON] = ACTIONS(1890), [anon_sym_LBRACK_LBRACK] = ACTIONS(1890), [anon_sym___declspec] = ACTIONS(1888), [anon_sym___based] = ACTIONS(1888), [anon_sym___cdecl] = ACTIONS(1888), [anon_sym___clrcall] = ACTIONS(1888), [anon_sym___stdcall] = ACTIONS(1888), [anon_sym___fastcall] = ACTIONS(1888), [anon_sym___thiscall] = ACTIONS(1888), [anon_sym___vectorcall] = ACTIONS(1888), [anon_sym_LBRACE] = ACTIONS(1890), [anon_sym_LBRACK] = ACTIONS(1888), [anon_sym_static] = ACTIONS(1888), [anon_sym_register] = ACTIONS(1888), [anon_sym_inline] = ACTIONS(1888), [anon_sym_thread_local] = ACTIONS(1888), [anon_sym_const] = ACTIONS(1888), [anon_sym_volatile] = ACTIONS(1888), [anon_sym_restrict] = ACTIONS(1888), [anon_sym__Atomic] = ACTIONS(1888), [anon_sym_mutable] = ACTIONS(1888), [anon_sym_constexpr] = ACTIONS(1888), [anon_sym_signed] = ACTIONS(1888), [anon_sym_unsigned] = ACTIONS(1888), [anon_sym_long] = ACTIONS(1888), [anon_sym_short] = ACTIONS(1888), [sym_primitive_type] = ACTIONS(1888), [anon_sym_enum] = ACTIONS(1888), [anon_sym_class] = ACTIONS(1888), [anon_sym_struct] = ACTIONS(1888), [anon_sym_union] = ACTIONS(1888), [anon_sym_if] = ACTIONS(1888), [anon_sym_else] = ACTIONS(2224), [anon_sym_switch] = ACTIONS(1888), [anon_sym_case] = ACTIONS(1888), [anon_sym_default] = ACTIONS(1888), [anon_sym_while] = ACTIONS(1888), [anon_sym_do] = ACTIONS(1888), [anon_sym_for] = ACTIONS(1888), [anon_sym_return] = ACTIONS(1888), [anon_sym_break] = ACTIONS(1888), [anon_sym_continue] = ACTIONS(1888), [anon_sym_goto] = ACTIONS(1888), [anon_sym_DASH_DASH] = ACTIONS(1890), [anon_sym_PLUS_PLUS] = ACTIONS(1890), [anon_sym_sizeof] = ACTIONS(1888), [sym_number_literal] = ACTIONS(1890), [anon_sym_L_SQUOTE] = ACTIONS(1890), [anon_sym_u_SQUOTE] = ACTIONS(1890), [anon_sym_U_SQUOTE] = ACTIONS(1890), [anon_sym_u8_SQUOTE] = ACTIONS(1890), [anon_sym_SQUOTE] = ACTIONS(1890), [anon_sym_L_DQUOTE] = ACTIONS(1890), [anon_sym_u_DQUOTE] = ACTIONS(1890), [anon_sym_U_DQUOTE] = ACTIONS(1890), [anon_sym_u8_DQUOTE] = ACTIONS(1890), [anon_sym_DQUOTE] = ACTIONS(1890), [sym_true] = ACTIONS(1888), [sym_false] = ACTIONS(1888), [sym_null] = ACTIONS(1888), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1888), [anon_sym_virtual] = ACTIONS(1888), [anon_sym_explicit] = ACTIONS(1888), [sym_auto] = ACTIONS(1888), [anon_sym_typename] = ACTIONS(1888), [anon_sym_template] = ACTIONS(1888), [anon_sym_operator] = ACTIONS(1888), [anon_sym_delete] = ACTIONS(1888), [anon_sym_throw] = ACTIONS(1888), [anon_sym_namespace] = ACTIONS(1888), [anon_sym_using] = ACTIONS(1888), [anon_sym_static_assert] = ACTIONS(1888), [anon_sym_co_return] = ACTIONS(1888), [anon_sym_co_yield] = ACTIONS(1888), [anon_sym_try] = ACTIONS(1888), [anon_sym_co_await] = ACTIONS(1888), [anon_sym_new] = ACTIONS(1888), [sym_this] = ACTIONS(1888), [sym_nullptr] = ACTIONS(1888), [sym_raw_string_literal] = ACTIONS(1890), }, [459] = { [ts_builtin_sym_end] = ACTIONS(1866), [sym_identifier] = ACTIONS(1864), [aux_sym_preproc_include_token1] = ACTIONS(1864), [aux_sym_preproc_def_token1] = ACTIONS(1864), [aux_sym_preproc_if_token1] = ACTIONS(1864), [aux_sym_preproc_ifdef_token1] = ACTIONS(1864), [aux_sym_preproc_ifdef_token2] = ACTIONS(1864), [sym_preproc_directive] = ACTIONS(1864), [anon_sym_LPAREN2] = ACTIONS(1866), [anon_sym_BANG] = ACTIONS(1866), [anon_sym_TILDE] = ACTIONS(1866), [anon_sym_DASH] = ACTIONS(1864), [anon_sym_PLUS] = ACTIONS(1864), [anon_sym_STAR] = ACTIONS(1866), [anon_sym_AMP_AMP] = ACTIONS(1866), [anon_sym_AMP] = ACTIONS(1864), [anon_sym_SEMI] = ACTIONS(1866), [anon_sym_typedef] = ACTIONS(1864), [anon_sym_extern] = ACTIONS(1864), [anon_sym___attribute__] = ACTIONS(1864), [anon_sym_COLON_COLON] = ACTIONS(1866), [anon_sym_LBRACK_LBRACK] = ACTIONS(1866), [anon_sym___declspec] = ACTIONS(1864), [anon_sym___based] = ACTIONS(1864), [anon_sym___cdecl] = ACTIONS(1864), [anon_sym___clrcall] = ACTIONS(1864), [anon_sym___stdcall] = ACTIONS(1864), [anon_sym___fastcall] = ACTIONS(1864), [anon_sym___thiscall] = ACTIONS(1864), [anon_sym___vectorcall] = ACTIONS(1864), [anon_sym_LBRACE] = ACTIONS(1866), [anon_sym_LBRACK] = ACTIONS(1864), [anon_sym_static] = ACTIONS(1864), [anon_sym_register] = ACTIONS(1864), [anon_sym_inline] = ACTIONS(1864), [anon_sym_thread_local] = ACTIONS(1864), [anon_sym_const] = ACTIONS(1864), [anon_sym_volatile] = ACTIONS(1864), [anon_sym_restrict] = ACTIONS(1864), [anon_sym__Atomic] = ACTIONS(1864), [anon_sym_mutable] = ACTIONS(1864), [anon_sym_constexpr] = ACTIONS(1864), [anon_sym_signed] = ACTIONS(1864), [anon_sym_unsigned] = ACTIONS(1864), [anon_sym_long] = ACTIONS(1864), [anon_sym_short] = ACTIONS(1864), [sym_primitive_type] = ACTIONS(1864), [anon_sym_enum] = ACTIONS(1864), [anon_sym_class] = ACTIONS(1864), [anon_sym_struct] = ACTIONS(1864), [anon_sym_union] = ACTIONS(1864), [anon_sym_if] = ACTIONS(1864), [anon_sym_else] = ACTIONS(1864), [anon_sym_switch] = ACTIONS(1864), [anon_sym_case] = ACTIONS(1864), [anon_sym_default] = ACTIONS(1864), [anon_sym_while] = ACTIONS(1864), [anon_sym_do] = ACTIONS(1864), [anon_sym_for] = ACTIONS(1864), [anon_sym_return] = ACTIONS(1864), [anon_sym_break] = ACTIONS(1864), [anon_sym_continue] = ACTIONS(1864), [anon_sym_goto] = ACTIONS(1864), [anon_sym_DASH_DASH] = ACTIONS(1866), [anon_sym_PLUS_PLUS] = ACTIONS(1866), [anon_sym_sizeof] = ACTIONS(1864), [sym_number_literal] = ACTIONS(1866), [anon_sym_L_SQUOTE] = ACTIONS(1866), [anon_sym_u_SQUOTE] = ACTIONS(1866), [anon_sym_U_SQUOTE] = ACTIONS(1866), [anon_sym_u8_SQUOTE] = ACTIONS(1866), [anon_sym_SQUOTE] = ACTIONS(1866), [anon_sym_L_DQUOTE] = ACTIONS(1866), [anon_sym_u_DQUOTE] = ACTIONS(1866), [anon_sym_U_DQUOTE] = ACTIONS(1866), [anon_sym_u8_DQUOTE] = ACTIONS(1866), [anon_sym_DQUOTE] = ACTIONS(1866), [sym_true] = ACTIONS(1864), [sym_false] = ACTIONS(1864), [sym_null] = ACTIONS(1864), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1864), [anon_sym_virtual] = ACTIONS(1864), [anon_sym_explicit] = ACTIONS(1864), [sym_auto] = ACTIONS(1864), [anon_sym_typename] = ACTIONS(1864), [anon_sym_template] = ACTIONS(1864), [anon_sym_operator] = ACTIONS(1864), [anon_sym_delete] = ACTIONS(1864), [anon_sym_throw] = ACTIONS(1864), [anon_sym_namespace] = ACTIONS(1864), [anon_sym_using] = ACTIONS(1864), [anon_sym_static_assert] = ACTIONS(1864), [anon_sym_co_return] = ACTIONS(1864), [anon_sym_co_yield] = ACTIONS(1864), [anon_sym_try] = ACTIONS(1864), [anon_sym_co_await] = ACTIONS(1864), [anon_sym_new] = ACTIONS(1864), [sym_this] = ACTIONS(1864), [sym_nullptr] = ACTIONS(1864), [sym_raw_string_literal] = ACTIONS(1866), }, [460] = { [ts_builtin_sym_end] = ACTIONS(1846), [sym_identifier] = ACTIONS(1844), [aux_sym_preproc_include_token1] = ACTIONS(1844), [aux_sym_preproc_def_token1] = ACTIONS(1844), [aux_sym_preproc_if_token1] = ACTIONS(1844), [aux_sym_preproc_ifdef_token1] = ACTIONS(1844), [aux_sym_preproc_ifdef_token2] = ACTIONS(1844), [sym_preproc_directive] = ACTIONS(1844), [anon_sym_LPAREN2] = ACTIONS(1846), [anon_sym_BANG] = ACTIONS(1846), [anon_sym_TILDE] = ACTIONS(1846), [anon_sym_DASH] = ACTIONS(1844), [anon_sym_PLUS] = ACTIONS(1844), [anon_sym_STAR] = ACTIONS(1846), [anon_sym_AMP_AMP] = ACTIONS(1846), [anon_sym_AMP] = ACTIONS(1844), [anon_sym_SEMI] = ACTIONS(1846), [anon_sym_typedef] = ACTIONS(1844), [anon_sym_extern] = ACTIONS(1844), [anon_sym___attribute__] = ACTIONS(1844), [anon_sym_COLON_COLON] = ACTIONS(1846), [anon_sym_LBRACK_LBRACK] = ACTIONS(1846), [anon_sym___declspec] = ACTIONS(1844), [anon_sym___based] = ACTIONS(1844), [anon_sym___cdecl] = ACTIONS(1844), [anon_sym___clrcall] = ACTIONS(1844), [anon_sym___stdcall] = ACTIONS(1844), [anon_sym___fastcall] = ACTIONS(1844), [anon_sym___thiscall] = ACTIONS(1844), [anon_sym___vectorcall] = ACTIONS(1844), [anon_sym_LBRACE] = ACTIONS(1846), [anon_sym_LBRACK] = ACTIONS(1844), [anon_sym_static] = ACTIONS(1844), [anon_sym_register] = ACTIONS(1844), [anon_sym_inline] = ACTIONS(1844), [anon_sym_thread_local] = ACTIONS(1844), [anon_sym_const] = ACTIONS(1844), [anon_sym_volatile] = ACTIONS(1844), [anon_sym_restrict] = ACTIONS(1844), [anon_sym__Atomic] = ACTIONS(1844), [anon_sym_mutable] = ACTIONS(1844), [anon_sym_constexpr] = ACTIONS(1844), [anon_sym_signed] = ACTIONS(1844), [anon_sym_unsigned] = ACTIONS(1844), [anon_sym_long] = ACTIONS(1844), [anon_sym_short] = ACTIONS(1844), [sym_primitive_type] = ACTIONS(1844), [anon_sym_enum] = ACTIONS(1844), [anon_sym_class] = ACTIONS(1844), [anon_sym_struct] = ACTIONS(1844), [anon_sym_union] = ACTIONS(1844), [anon_sym_if] = ACTIONS(1844), [anon_sym_else] = ACTIONS(1844), [anon_sym_switch] = ACTIONS(1844), [anon_sym_case] = ACTIONS(1844), [anon_sym_default] = ACTIONS(1844), [anon_sym_while] = ACTIONS(1844), [anon_sym_do] = ACTIONS(1844), [anon_sym_for] = ACTIONS(1844), [anon_sym_return] = ACTIONS(1844), [anon_sym_break] = ACTIONS(1844), [anon_sym_continue] = ACTIONS(1844), [anon_sym_goto] = ACTIONS(1844), [anon_sym_DASH_DASH] = ACTIONS(1846), [anon_sym_PLUS_PLUS] = ACTIONS(1846), [anon_sym_sizeof] = ACTIONS(1844), [sym_number_literal] = ACTIONS(1846), [anon_sym_L_SQUOTE] = ACTIONS(1846), [anon_sym_u_SQUOTE] = ACTIONS(1846), [anon_sym_U_SQUOTE] = ACTIONS(1846), [anon_sym_u8_SQUOTE] = ACTIONS(1846), [anon_sym_SQUOTE] = ACTIONS(1846), [anon_sym_L_DQUOTE] = ACTIONS(1846), [anon_sym_u_DQUOTE] = ACTIONS(1846), [anon_sym_U_DQUOTE] = ACTIONS(1846), [anon_sym_u8_DQUOTE] = ACTIONS(1846), [anon_sym_DQUOTE] = ACTIONS(1846), [sym_true] = ACTIONS(1844), [sym_false] = ACTIONS(1844), [sym_null] = ACTIONS(1844), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1844), [anon_sym_virtual] = ACTIONS(1844), [anon_sym_explicit] = ACTIONS(1844), [sym_auto] = ACTIONS(1844), [anon_sym_typename] = ACTIONS(1844), [anon_sym_template] = ACTIONS(1844), [anon_sym_operator] = ACTIONS(1844), [anon_sym_delete] = ACTIONS(1844), [anon_sym_throw] = ACTIONS(1844), [anon_sym_namespace] = ACTIONS(1844), [anon_sym_using] = ACTIONS(1844), [anon_sym_static_assert] = ACTIONS(1844), [anon_sym_co_return] = ACTIONS(1844), [anon_sym_co_yield] = ACTIONS(1844), [anon_sym_try] = ACTIONS(1844), [anon_sym_co_await] = ACTIONS(1844), [anon_sym_new] = ACTIONS(1844), [sym_this] = ACTIONS(1844), [sym_nullptr] = ACTIONS(1844), [sym_raw_string_literal] = ACTIONS(1846), }, [461] = { [sym_identifier] = ACTIONS(1914), [aux_sym_preproc_include_token1] = ACTIONS(1914), [aux_sym_preproc_def_token1] = ACTIONS(1914), [aux_sym_preproc_if_token1] = ACTIONS(1914), [aux_sym_preproc_ifdef_token1] = ACTIONS(1914), [aux_sym_preproc_ifdef_token2] = ACTIONS(1914), [sym_preproc_directive] = ACTIONS(1914), [anon_sym_LPAREN2] = ACTIONS(1916), [anon_sym_BANG] = ACTIONS(1916), [anon_sym_TILDE] = ACTIONS(1916), [anon_sym_DASH] = ACTIONS(1914), [anon_sym_PLUS] = ACTIONS(1914), [anon_sym_STAR] = ACTIONS(1916), [anon_sym_AMP_AMP] = ACTIONS(1916), [anon_sym_AMP] = ACTIONS(1914), [anon_sym_SEMI] = ACTIONS(1916), [anon_sym_typedef] = ACTIONS(1914), [anon_sym_extern] = ACTIONS(1914), [anon_sym___attribute__] = ACTIONS(1914), [anon_sym_COLON_COLON] = ACTIONS(1916), [anon_sym_LBRACK_LBRACK] = ACTIONS(1916), [anon_sym___declspec] = ACTIONS(1914), [anon_sym___based] = ACTIONS(1914), [anon_sym___cdecl] = ACTIONS(1914), [anon_sym___clrcall] = ACTIONS(1914), [anon_sym___stdcall] = ACTIONS(1914), [anon_sym___fastcall] = ACTIONS(1914), [anon_sym___thiscall] = ACTIONS(1914), [anon_sym___vectorcall] = ACTIONS(1914), [anon_sym_LBRACE] = ACTIONS(1916), [anon_sym_RBRACE] = ACTIONS(1916), [anon_sym_LBRACK] = ACTIONS(1914), [anon_sym_static] = ACTIONS(1914), [anon_sym_register] = ACTIONS(1914), [anon_sym_inline] = ACTIONS(1914), [anon_sym_thread_local] = ACTIONS(1914), [anon_sym_const] = ACTIONS(1914), [anon_sym_volatile] = ACTIONS(1914), [anon_sym_restrict] = ACTIONS(1914), [anon_sym__Atomic] = ACTIONS(1914), [anon_sym_mutable] = ACTIONS(1914), [anon_sym_constexpr] = ACTIONS(1914), [anon_sym_signed] = ACTIONS(1914), [anon_sym_unsigned] = ACTIONS(1914), [anon_sym_long] = ACTIONS(1914), [anon_sym_short] = ACTIONS(1914), [sym_primitive_type] = ACTIONS(1914), [anon_sym_enum] = ACTIONS(1914), [anon_sym_class] = ACTIONS(1914), [anon_sym_struct] = ACTIONS(1914), [anon_sym_union] = ACTIONS(1914), [anon_sym_if] = ACTIONS(1914), [anon_sym_else] = ACTIONS(1914), [anon_sym_switch] = ACTIONS(1914), [anon_sym_case] = ACTIONS(1914), [anon_sym_default] = ACTIONS(1914), [anon_sym_while] = ACTIONS(1914), [anon_sym_do] = ACTIONS(1914), [anon_sym_for] = ACTIONS(1914), [anon_sym_return] = ACTIONS(1914), [anon_sym_break] = ACTIONS(1914), [anon_sym_continue] = ACTIONS(1914), [anon_sym_goto] = ACTIONS(1914), [anon_sym_DASH_DASH] = ACTIONS(1916), [anon_sym_PLUS_PLUS] = ACTIONS(1916), [anon_sym_sizeof] = ACTIONS(1914), [sym_number_literal] = ACTIONS(1916), [anon_sym_L_SQUOTE] = ACTIONS(1916), [anon_sym_u_SQUOTE] = ACTIONS(1916), [anon_sym_U_SQUOTE] = ACTIONS(1916), [anon_sym_u8_SQUOTE] = ACTIONS(1916), [anon_sym_SQUOTE] = ACTIONS(1916), [anon_sym_L_DQUOTE] = ACTIONS(1916), [anon_sym_u_DQUOTE] = ACTIONS(1916), [anon_sym_U_DQUOTE] = ACTIONS(1916), [anon_sym_u8_DQUOTE] = ACTIONS(1916), [anon_sym_DQUOTE] = ACTIONS(1916), [sym_true] = ACTIONS(1914), [sym_false] = ACTIONS(1914), [sym_null] = ACTIONS(1914), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1914), [anon_sym_virtual] = ACTIONS(1914), [anon_sym_explicit] = ACTIONS(1914), [sym_auto] = ACTIONS(1914), [anon_sym_typename] = ACTIONS(1914), [anon_sym_template] = ACTIONS(1914), [anon_sym_operator] = ACTIONS(1914), [anon_sym_delete] = ACTIONS(1914), [anon_sym_throw] = ACTIONS(1914), [anon_sym_namespace] = ACTIONS(1914), [anon_sym_using] = ACTIONS(1914), [anon_sym_static_assert] = ACTIONS(1914), [anon_sym_co_return] = ACTIONS(1914), [anon_sym_co_yield] = ACTIONS(1914), [anon_sym_try] = ACTIONS(1914), [anon_sym_co_await] = ACTIONS(1914), [anon_sym_new] = ACTIONS(1914), [sym_this] = ACTIONS(1914), [sym_nullptr] = ACTIONS(1914), [sym_raw_string_literal] = ACTIONS(1916), }, [462] = { [sym_identifier] = ACTIONS(1894), [aux_sym_preproc_include_token1] = ACTIONS(1894), [aux_sym_preproc_def_token1] = ACTIONS(1894), [aux_sym_preproc_if_token1] = ACTIONS(1894), [aux_sym_preproc_if_token2] = ACTIONS(1894), [aux_sym_preproc_ifdef_token1] = ACTIONS(1894), [aux_sym_preproc_ifdef_token2] = ACTIONS(1894), [sym_preproc_directive] = ACTIONS(1894), [anon_sym_LPAREN2] = ACTIONS(1896), [anon_sym_BANG] = ACTIONS(1896), [anon_sym_TILDE] = ACTIONS(1896), [anon_sym_DASH] = ACTIONS(1894), [anon_sym_PLUS] = ACTIONS(1894), [anon_sym_STAR] = ACTIONS(1896), [anon_sym_AMP_AMP] = ACTIONS(1896), [anon_sym_AMP] = ACTIONS(1894), [anon_sym_SEMI] = ACTIONS(1896), [anon_sym_typedef] = ACTIONS(1894), [anon_sym_extern] = ACTIONS(1894), [anon_sym___attribute__] = ACTIONS(1894), [anon_sym_COLON_COLON] = ACTIONS(1896), [anon_sym_LBRACK_LBRACK] = ACTIONS(1896), [anon_sym___declspec] = ACTIONS(1894), [anon_sym___based] = ACTIONS(1894), [anon_sym___cdecl] = ACTIONS(1894), [anon_sym___clrcall] = ACTIONS(1894), [anon_sym___stdcall] = ACTIONS(1894), [anon_sym___fastcall] = ACTIONS(1894), [anon_sym___thiscall] = ACTIONS(1894), [anon_sym___vectorcall] = ACTIONS(1894), [anon_sym_LBRACE] = ACTIONS(1896), [anon_sym_LBRACK] = ACTIONS(1894), [anon_sym_static] = ACTIONS(1894), [anon_sym_register] = ACTIONS(1894), [anon_sym_inline] = ACTIONS(1894), [anon_sym_thread_local] = ACTIONS(1894), [anon_sym_const] = ACTIONS(1894), [anon_sym_volatile] = ACTIONS(1894), [anon_sym_restrict] = ACTIONS(1894), [anon_sym__Atomic] = ACTIONS(1894), [anon_sym_mutable] = ACTIONS(1894), [anon_sym_constexpr] = ACTIONS(1894), [anon_sym_signed] = ACTIONS(1894), [anon_sym_unsigned] = ACTIONS(1894), [anon_sym_long] = ACTIONS(1894), [anon_sym_short] = ACTIONS(1894), [sym_primitive_type] = ACTIONS(1894), [anon_sym_enum] = ACTIONS(1894), [anon_sym_class] = ACTIONS(1894), [anon_sym_struct] = ACTIONS(1894), [anon_sym_union] = ACTIONS(1894), [anon_sym_if] = ACTIONS(1894), [anon_sym_else] = ACTIONS(1894), [anon_sym_switch] = ACTIONS(1894), [anon_sym_case] = ACTIONS(1894), [anon_sym_default] = ACTIONS(1894), [anon_sym_while] = ACTIONS(1894), [anon_sym_do] = ACTIONS(1894), [anon_sym_for] = ACTIONS(1894), [anon_sym_return] = ACTIONS(1894), [anon_sym_break] = ACTIONS(1894), [anon_sym_continue] = ACTIONS(1894), [anon_sym_goto] = ACTIONS(1894), [anon_sym_DASH_DASH] = ACTIONS(1896), [anon_sym_PLUS_PLUS] = ACTIONS(1896), [anon_sym_sizeof] = ACTIONS(1894), [sym_number_literal] = ACTIONS(1896), [anon_sym_L_SQUOTE] = ACTIONS(1896), [anon_sym_u_SQUOTE] = ACTIONS(1896), [anon_sym_U_SQUOTE] = ACTIONS(1896), [anon_sym_u8_SQUOTE] = ACTIONS(1896), [anon_sym_SQUOTE] = ACTIONS(1896), [anon_sym_L_DQUOTE] = ACTIONS(1896), [anon_sym_u_DQUOTE] = ACTIONS(1896), [anon_sym_U_DQUOTE] = ACTIONS(1896), [anon_sym_u8_DQUOTE] = ACTIONS(1896), [anon_sym_DQUOTE] = ACTIONS(1896), [sym_true] = ACTIONS(1894), [sym_false] = ACTIONS(1894), [sym_null] = ACTIONS(1894), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1894), [anon_sym_virtual] = ACTIONS(1894), [anon_sym_explicit] = ACTIONS(1894), [sym_auto] = ACTIONS(1894), [anon_sym_typename] = ACTIONS(1894), [anon_sym_template] = ACTIONS(1894), [anon_sym_operator] = ACTIONS(1894), [anon_sym_delete] = ACTIONS(1894), [anon_sym_throw] = ACTIONS(1894), [anon_sym_namespace] = ACTIONS(1894), [anon_sym_using] = ACTIONS(1894), [anon_sym_static_assert] = ACTIONS(1894), [anon_sym_co_return] = ACTIONS(1894), [anon_sym_co_yield] = ACTIONS(1894), [anon_sym_try] = ACTIONS(1894), [anon_sym_co_await] = ACTIONS(1894), [anon_sym_new] = ACTIONS(1894), [sym_this] = ACTIONS(1894), [sym_nullptr] = ACTIONS(1894), [sym_raw_string_literal] = ACTIONS(1896), }, [463] = { [ts_builtin_sym_end] = ACTIONS(1846), [sym_identifier] = ACTIONS(1844), [aux_sym_preproc_include_token1] = ACTIONS(1844), [aux_sym_preproc_def_token1] = ACTIONS(1844), [aux_sym_preproc_if_token1] = ACTIONS(1844), [aux_sym_preproc_ifdef_token1] = ACTIONS(1844), [aux_sym_preproc_ifdef_token2] = ACTIONS(1844), [sym_preproc_directive] = ACTIONS(1844), [anon_sym_LPAREN2] = ACTIONS(1846), [anon_sym_BANG] = ACTIONS(1846), [anon_sym_TILDE] = ACTIONS(1846), [anon_sym_DASH] = ACTIONS(1844), [anon_sym_PLUS] = ACTIONS(1844), [anon_sym_STAR] = ACTIONS(1846), [anon_sym_AMP_AMP] = ACTIONS(1846), [anon_sym_AMP] = ACTIONS(1844), [anon_sym_SEMI] = ACTIONS(1846), [anon_sym_typedef] = ACTIONS(1844), [anon_sym_extern] = ACTIONS(1844), [anon_sym___attribute__] = ACTIONS(1844), [anon_sym_COLON_COLON] = ACTIONS(1846), [anon_sym_LBRACK_LBRACK] = ACTIONS(1846), [anon_sym___declspec] = ACTIONS(1844), [anon_sym___based] = ACTIONS(1844), [anon_sym___cdecl] = ACTIONS(1844), [anon_sym___clrcall] = ACTIONS(1844), [anon_sym___stdcall] = ACTIONS(1844), [anon_sym___fastcall] = ACTIONS(1844), [anon_sym___thiscall] = ACTIONS(1844), [anon_sym___vectorcall] = ACTIONS(1844), [anon_sym_LBRACE] = ACTIONS(1846), [anon_sym_LBRACK] = ACTIONS(1844), [anon_sym_static] = ACTIONS(1844), [anon_sym_register] = ACTIONS(1844), [anon_sym_inline] = ACTIONS(1844), [anon_sym_thread_local] = ACTIONS(1844), [anon_sym_const] = ACTIONS(1844), [anon_sym_volatile] = ACTIONS(1844), [anon_sym_restrict] = ACTIONS(1844), [anon_sym__Atomic] = ACTIONS(1844), [anon_sym_mutable] = ACTIONS(1844), [anon_sym_constexpr] = ACTIONS(1844), [anon_sym_signed] = ACTIONS(1844), [anon_sym_unsigned] = ACTIONS(1844), [anon_sym_long] = ACTIONS(1844), [anon_sym_short] = ACTIONS(1844), [sym_primitive_type] = ACTIONS(1844), [anon_sym_enum] = ACTIONS(1844), [anon_sym_class] = ACTIONS(1844), [anon_sym_struct] = ACTIONS(1844), [anon_sym_union] = ACTIONS(1844), [anon_sym_if] = ACTIONS(1844), [anon_sym_else] = ACTIONS(1844), [anon_sym_switch] = ACTIONS(1844), [anon_sym_case] = ACTIONS(1844), [anon_sym_default] = ACTIONS(1844), [anon_sym_while] = ACTIONS(1844), [anon_sym_do] = ACTIONS(1844), [anon_sym_for] = ACTIONS(1844), [anon_sym_return] = ACTIONS(1844), [anon_sym_break] = ACTIONS(1844), [anon_sym_continue] = ACTIONS(1844), [anon_sym_goto] = ACTIONS(1844), [anon_sym_DASH_DASH] = ACTIONS(1846), [anon_sym_PLUS_PLUS] = ACTIONS(1846), [anon_sym_sizeof] = ACTIONS(1844), [sym_number_literal] = ACTIONS(1846), [anon_sym_L_SQUOTE] = ACTIONS(1846), [anon_sym_u_SQUOTE] = ACTIONS(1846), [anon_sym_U_SQUOTE] = ACTIONS(1846), [anon_sym_u8_SQUOTE] = ACTIONS(1846), [anon_sym_SQUOTE] = ACTIONS(1846), [anon_sym_L_DQUOTE] = ACTIONS(1846), [anon_sym_u_DQUOTE] = ACTIONS(1846), [anon_sym_U_DQUOTE] = ACTIONS(1846), [anon_sym_u8_DQUOTE] = ACTIONS(1846), [anon_sym_DQUOTE] = ACTIONS(1846), [sym_true] = ACTIONS(1844), [sym_false] = ACTIONS(1844), [sym_null] = ACTIONS(1844), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1844), [anon_sym_virtual] = ACTIONS(1844), [anon_sym_explicit] = ACTIONS(1844), [sym_auto] = ACTIONS(1844), [anon_sym_typename] = ACTIONS(1844), [anon_sym_template] = ACTIONS(1844), [anon_sym_operator] = ACTIONS(1844), [anon_sym_delete] = ACTIONS(1844), [anon_sym_throw] = ACTIONS(1844), [anon_sym_namespace] = ACTIONS(1844), [anon_sym_using] = ACTIONS(1844), [anon_sym_static_assert] = ACTIONS(1844), [anon_sym_co_return] = ACTIONS(1844), [anon_sym_co_yield] = ACTIONS(1844), [anon_sym_try] = ACTIONS(1844), [anon_sym_co_await] = ACTIONS(1844), [anon_sym_new] = ACTIONS(1844), [sym_this] = ACTIONS(1844), [sym_nullptr] = ACTIONS(1844), [sym_raw_string_literal] = ACTIONS(1846), }, [464] = { [ts_builtin_sym_end] = ACTIONS(1900), [sym_identifier] = ACTIONS(1898), [aux_sym_preproc_include_token1] = ACTIONS(1898), [aux_sym_preproc_def_token1] = ACTIONS(1898), [aux_sym_preproc_if_token1] = ACTIONS(1898), [aux_sym_preproc_ifdef_token1] = ACTIONS(1898), [aux_sym_preproc_ifdef_token2] = ACTIONS(1898), [sym_preproc_directive] = ACTIONS(1898), [anon_sym_LPAREN2] = ACTIONS(1900), [anon_sym_BANG] = ACTIONS(1900), [anon_sym_TILDE] = ACTIONS(1900), [anon_sym_DASH] = ACTIONS(1898), [anon_sym_PLUS] = ACTIONS(1898), [anon_sym_STAR] = ACTIONS(1900), [anon_sym_AMP_AMP] = ACTIONS(1900), [anon_sym_AMP] = ACTIONS(1898), [anon_sym_SEMI] = ACTIONS(1900), [anon_sym_typedef] = ACTIONS(1898), [anon_sym_extern] = ACTIONS(1898), [anon_sym___attribute__] = ACTIONS(1898), [anon_sym_COLON_COLON] = ACTIONS(1900), [anon_sym_LBRACK_LBRACK] = ACTIONS(1900), [anon_sym___declspec] = ACTIONS(1898), [anon_sym___based] = ACTIONS(1898), [anon_sym___cdecl] = ACTIONS(1898), [anon_sym___clrcall] = ACTIONS(1898), [anon_sym___stdcall] = ACTIONS(1898), [anon_sym___fastcall] = ACTIONS(1898), [anon_sym___thiscall] = ACTIONS(1898), [anon_sym___vectorcall] = ACTIONS(1898), [anon_sym_LBRACE] = ACTIONS(1900), [anon_sym_LBRACK] = ACTIONS(1898), [anon_sym_static] = ACTIONS(1898), [anon_sym_register] = ACTIONS(1898), [anon_sym_inline] = ACTIONS(1898), [anon_sym_thread_local] = ACTIONS(1898), [anon_sym_const] = ACTIONS(1898), [anon_sym_volatile] = ACTIONS(1898), [anon_sym_restrict] = ACTIONS(1898), [anon_sym__Atomic] = ACTIONS(1898), [anon_sym_mutable] = ACTIONS(1898), [anon_sym_constexpr] = ACTIONS(1898), [anon_sym_signed] = ACTIONS(1898), [anon_sym_unsigned] = ACTIONS(1898), [anon_sym_long] = ACTIONS(1898), [anon_sym_short] = ACTIONS(1898), [sym_primitive_type] = ACTIONS(1898), [anon_sym_enum] = ACTIONS(1898), [anon_sym_class] = ACTIONS(1898), [anon_sym_struct] = ACTIONS(1898), [anon_sym_union] = ACTIONS(1898), [anon_sym_if] = ACTIONS(1898), [anon_sym_else] = ACTIONS(1898), [anon_sym_switch] = ACTIONS(1898), [anon_sym_case] = ACTIONS(1898), [anon_sym_default] = ACTIONS(1898), [anon_sym_while] = ACTIONS(1898), [anon_sym_do] = ACTIONS(1898), [anon_sym_for] = ACTIONS(1898), [anon_sym_return] = ACTIONS(1898), [anon_sym_break] = ACTIONS(1898), [anon_sym_continue] = ACTIONS(1898), [anon_sym_goto] = ACTIONS(1898), [anon_sym_DASH_DASH] = ACTIONS(1900), [anon_sym_PLUS_PLUS] = ACTIONS(1900), [anon_sym_sizeof] = ACTIONS(1898), [sym_number_literal] = ACTIONS(1900), [anon_sym_L_SQUOTE] = ACTIONS(1900), [anon_sym_u_SQUOTE] = ACTIONS(1900), [anon_sym_U_SQUOTE] = ACTIONS(1900), [anon_sym_u8_SQUOTE] = ACTIONS(1900), [anon_sym_SQUOTE] = ACTIONS(1900), [anon_sym_L_DQUOTE] = ACTIONS(1900), [anon_sym_u_DQUOTE] = ACTIONS(1900), [anon_sym_U_DQUOTE] = ACTIONS(1900), [anon_sym_u8_DQUOTE] = ACTIONS(1900), [anon_sym_DQUOTE] = ACTIONS(1900), [sym_true] = ACTIONS(1898), [sym_false] = ACTIONS(1898), [sym_null] = ACTIONS(1898), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1898), [anon_sym_virtual] = ACTIONS(1898), [anon_sym_explicit] = ACTIONS(1898), [sym_auto] = ACTIONS(1898), [anon_sym_typename] = ACTIONS(1898), [anon_sym_template] = ACTIONS(1898), [anon_sym_operator] = ACTIONS(1898), [anon_sym_delete] = ACTIONS(1898), [anon_sym_throw] = ACTIONS(1898), [anon_sym_namespace] = ACTIONS(1898), [anon_sym_using] = ACTIONS(1898), [anon_sym_static_assert] = ACTIONS(1898), [anon_sym_co_return] = ACTIONS(1898), [anon_sym_co_yield] = ACTIONS(1898), [anon_sym_try] = ACTIONS(1898), [anon_sym_co_await] = ACTIONS(1898), [anon_sym_new] = ACTIONS(1898), [sym_this] = ACTIONS(1898), [sym_nullptr] = ACTIONS(1898), [sym_raw_string_literal] = ACTIONS(1900), }, [465] = { [sym_identifier] = ACTIONS(1888), [aux_sym_preproc_include_token1] = ACTIONS(1888), [aux_sym_preproc_def_token1] = ACTIONS(1888), [aux_sym_preproc_if_token1] = ACTIONS(1888), [aux_sym_preproc_if_token2] = ACTIONS(1888), [aux_sym_preproc_ifdef_token1] = ACTIONS(1888), [aux_sym_preproc_ifdef_token2] = ACTIONS(1888), [sym_preproc_directive] = ACTIONS(1888), [anon_sym_LPAREN2] = ACTIONS(1890), [anon_sym_BANG] = ACTIONS(1890), [anon_sym_TILDE] = ACTIONS(1890), [anon_sym_DASH] = ACTIONS(1888), [anon_sym_PLUS] = ACTIONS(1888), [anon_sym_STAR] = ACTIONS(1890), [anon_sym_AMP_AMP] = ACTIONS(1890), [anon_sym_AMP] = ACTIONS(1888), [anon_sym_SEMI] = ACTIONS(1890), [anon_sym_typedef] = ACTIONS(1888), [anon_sym_extern] = ACTIONS(1888), [anon_sym___attribute__] = ACTIONS(1888), [anon_sym_COLON_COLON] = ACTIONS(1890), [anon_sym_LBRACK_LBRACK] = ACTIONS(1890), [anon_sym___declspec] = ACTIONS(1888), [anon_sym___based] = ACTIONS(1888), [anon_sym___cdecl] = ACTIONS(1888), [anon_sym___clrcall] = ACTIONS(1888), [anon_sym___stdcall] = ACTIONS(1888), [anon_sym___fastcall] = ACTIONS(1888), [anon_sym___thiscall] = ACTIONS(1888), [anon_sym___vectorcall] = ACTIONS(1888), [anon_sym_LBRACE] = ACTIONS(1890), [anon_sym_LBRACK] = ACTIONS(1888), [anon_sym_static] = ACTIONS(1888), [anon_sym_register] = ACTIONS(1888), [anon_sym_inline] = ACTIONS(1888), [anon_sym_thread_local] = ACTIONS(1888), [anon_sym_const] = ACTIONS(1888), [anon_sym_volatile] = ACTIONS(1888), [anon_sym_restrict] = ACTIONS(1888), [anon_sym__Atomic] = ACTIONS(1888), [anon_sym_mutable] = ACTIONS(1888), [anon_sym_constexpr] = ACTIONS(1888), [anon_sym_signed] = ACTIONS(1888), [anon_sym_unsigned] = ACTIONS(1888), [anon_sym_long] = ACTIONS(1888), [anon_sym_short] = ACTIONS(1888), [sym_primitive_type] = ACTIONS(1888), [anon_sym_enum] = ACTIONS(1888), [anon_sym_class] = ACTIONS(1888), [anon_sym_struct] = ACTIONS(1888), [anon_sym_union] = ACTIONS(1888), [anon_sym_if] = ACTIONS(1888), [anon_sym_else] = ACTIONS(2226), [anon_sym_switch] = ACTIONS(1888), [anon_sym_case] = ACTIONS(1888), [anon_sym_default] = ACTIONS(1888), [anon_sym_while] = ACTIONS(1888), [anon_sym_do] = ACTIONS(1888), [anon_sym_for] = ACTIONS(1888), [anon_sym_return] = ACTIONS(1888), [anon_sym_break] = ACTIONS(1888), [anon_sym_continue] = ACTIONS(1888), [anon_sym_goto] = ACTIONS(1888), [anon_sym_DASH_DASH] = ACTIONS(1890), [anon_sym_PLUS_PLUS] = ACTIONS(1890), [anon_sym_sizeof] = ACTIONS(1888), [sym_number_literal] = ACTIONS(1890), [anon_sym_L_SQUOTE] = ACTIONS(1890), [anon_sym_u_SQUOTE] = ACTIONS(1890), [anon_sym_U_SQUOTE] = ACTIONS(1890), [anon_sym_u8_SQUOTE] = ACTIONS(1890), [anon_sym_SQUOTE] = ACTIONS(1890), [anon_sym_L_DQUOTE] = ACTIONS(1890), [anon_sym_u_DQUOTE] = ACTIONS(1890), [anon_sym_U_DQUOTE] = ACTIONS(1890), [anon_sym_u8_DQUOTE] = ACTIONS(1890), [anon_sym_DQUOTE] = ACTIONS(1890), [sym_true] = ACTIONS(1888), [sym_false] = ACTIONS(1888), [sym_null] = ACTIONS(1888), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1888), [anon_sym_virtual] = ACTIONS(1888), [anon_sym_explicit] = ACTIONS(1888), [sym_auto] = ACTIONS(1888), [anon_sym_typename] = ACTIONS(1888), [anon_sym_template] = ACTIONS(1888), [anon_sym_operator] = ACTIONS(1888), [anon_sym_delete] = ACTIONS(1888), [anon_sym_throw] = ACTIONS(1888), [anon_sym_namespace] = ACTIONS(1888), [anon_sym_using] = ACTIONS(1888), [anon_sym_static_assert] = ACTIONS(1888), [anon_sym_co_return] = ACTIONS(1888), [anon_sym_co_yield] = ACTIONS(1888), [anon_sym_try] = ACTIONS(1888), [anon_sym_co_await] = ACTIONS(1888), [anon_sym_new] = ACTIONS(1888), [sym_this] = ACTIONS(1888), [sym_nullptr] = ACTIONS(1888), [sym_raw_string_literal] = ACTIONS(1890), }, [466] = { [ts_builtin_sym_end] = ACTIONS(1758), [sym_identifier] = ACTIONS(1756), [aux_sym_preproc_include_token1] = ACTIONS(1756), [aux_sym_preproc_def_token1] = ACTIONS(1756), [anon_sym_COMMA] = ACTIONS(1936), [aux_sym_preproc_if_token1] = ACTIONS(1756), [aux_sym_preproc_ifdef_token1] = ACTIONS(1756), [aux_sym_preproc_ifdef_token2] = ACTIONS(1756), [sym_preproc_directive] = ACTIONS(1756), [anon_sym_LPAREN2] = ACTIONS(1758), [anon_sym_BANG] = ACTIONS(1758), [anon_sym_TILDE] = ACTIONS(1758), [anon_sym_DASH] = ACTIONS(1756), [anon_sym_PLUS] = ACTIONS(1756), [anon_sym_STAR] = ACTIONS(1758), [anon_sym_AMP_AMP] = ACTIONS(1758), [anon_sym_AMP] = ACTIONS(1756), [anon_sym_SEMI] = ACTIONS(1936), [anon_sym_typedef] = ACTIONS(1756), [anon_sym_extern] = ACTIONS(1756), [anon_sym___attribute__] = ACTIONS(1756), [anon_sym_COLON_COLON] = ACTIONS(1758), [anon_sym_LBRACK_LBRACK] = ACTIONS(1758), [anon_sym___declspec] = ACTIONS(1756), [anon_sym___based] = ACTIONS(1756), [anon_sym___cdecl] = ACTIONS(1756), [anon_sym___clrcall] = ACTIONS(1756), [anon_sym___stdcall] = ACTIONS(1756), [anon_sym___fastcall] = ACTIONS(1756), [anon_sym___thiscall] = ACTIONS(1756), [anon_sym___vectorcall] = ACTIONS(1756), [anon_sym_LBRACE] = ACTIONS(1758), [anon_sym_LBRACK] = ACTIONS(1756), [anon_sym_static] = ACTIONS(1756), [anon_sym_register] = ACTIONS(1756), [anon_sym_inline] = ACTIONS(1756), [anon_sym_thread_local] = ACTIONS(1756), [anon_sym_const] = ACTIONS(1756), [anon_sym_volatile] = ACTIONS(1756), [anon_sym_restrict] = ACTIONS(1756), [anon_sym__Atomic] = ACTIONS(1756), [anon_sym_mutable] = ACTIONS(1756), [anon_sym_constexpr] = ACTIONS(1756), [anon_sym_signed] = ACTIONS(1756), [anon_sym_unsigned] = ACTIONS(1756), [anon_sym_long] = ACTIONS(1756), [anon_sym_short] = ACTIONS(1756), [sym_primitive_type] = ACTIONS(1756), [anon_sym_enum] = ACTIONS(1756), [anon_sym_class] = ACTIONS(1756), [anon_sym_struct] = ACTIONS(1756), [anon_sym_union] = ACTIONS(1756), [anon_sym_if] = ACTIONS(1756), [anon_sym_switch] = ACTIONS(1756), [anon_sym_case] = ACTIONS(1756), [anon_sym_default] = ACTIONS(1756), [anon_sym_while] = ACTIONS(1756), [anon_sym_do] = ACTIONS(1756), [anon_sym_for] = ACTIONS(1756), [anon_sym_return] = ACTIONS(1756), [anon_sym_break] = ACTIONS(1756), [anon_sym_continue] = ACTIONS(1756), [anon_sym_goto] = ACTIONS(1756), [anon_sym_DASH_DASH] = ACTIONS(1758), [anon_sym_PLUS_PLUS] = ACTIONS(1758), [anon_sym_sizeof] = ACTIONS(1756), [sym_number_literal] = ACTIONS(1758), [anon_sym_L_SQUOTE] = ACTIONS(1758), [anon_sym_u_SQUOTE] = ACTIONS(1758), [anon_sym_U_SQUOTE] = ACTIONS(1758), [anon_sym_u8_SQUOTE] = ACTIONS(1758), [anon_sym_SQUOTE] = ACTIONS(1758), [anon_sym_L_DQUOTE] = ACTIONS(1758), [anon_sym_u_DQUOTE] = ACTIONS(1758), [anon_sym_U_DQUOTE] = ACTIONS(1758), [anon_sym_u8_DQUOTE] = ACTIONS(1758), [anon_sym_DQUOTE] = ACTIONS(1758), [sym_true] = ACTIONS(1756), [sym_false] = ACTIONS(1756), [sym_null] = ACTIONS(1756), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1756), [anon_sym_virtual] = ACTIONS(1756), [anon_sym_explicit] = ACTIONS(1756), [sym_auto] = ACTIONS(1756), [anon_sym_typename] = ACTIONS(1756), [anon_sym_template] = ACTIONS(1756), [anon_sym_operator] = ACTIONS(1756), [anon_sym_delete] = ACTIONS(1756), [anon_sym_throw] = ACTIONS(1756), [anon_sym_namespace] = ACTIONS(1756), [anon_sym_using] = ACTIONS(1756), [anon_sym_static_assert] = ACTIONS(1756), [anon_sym_co_return] = ACTIONS(1756), [anon_sym_co_yield] = ACTIONS(1756), [anon_sym_try] = ACTIONS(1756), [anon_sym_co_await] = ACTIONS(1756), [anon_sym_new] = ACTIONS(1756), [sym_this] = ACTIONS(1756), [sym_nullptr] = ACTIONS(1756), [sym_raw_string_literal] = ACTIONS(1758), }, [467] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [468] = { [sym_identifier] = ACTIONS(1918), [aux_sym_preproc_include_token1] = ACTIONS(1918), [aux_sym_preproc_def_token1] = ACTIONS(1918), [aux_sym_preproc_if_token1] = ACTIONS(1918), [aux_sym_preproc_ifdef_token1] = ACTIONS(1918), [aux_sym_preproc_ifdef_token2] = ACTIONS(1918), [sym_preproc_directive] = ACTIONS(1918), [anon_sym_LPAREN2] = ACTIONS(1920), [anon_sym_BANG] = ACTIONS(1920), [anon_sym_TILDE] = ACTIONS(1920), [anon_sym_DASH] = ACTIONS(1918), [anon_sym_PLUS] = ACTIONS(1918), [anon_sym_STAR] = ACTIONS(1920), [anon_sym_AMP_AMP] = ACTIONS(1920), [anon_sym_AMP] = ACTIONS(1918), [anon_sym_SEMI] = ACTIONS(1920), [anon_sym_typedef] = ACTIONS(1918), [anon_sym_extern] = ACTIONS(1918), [anon_sym___attribute__] = ACTIONS(1918), [anon_sym_COLON_COLON] = ACTIONS(1920), [anon_sym_LBRACK_LBRACK] = ACTIONS(1920), [anon_sym___declspec] = ACTIONS(1918), [anon_sym___based] = ACTIONS(1918), [anon_sym___cdecl] = ACTIONS(1918), [anon_sym___clrcall] = ACTIONS(1918), [anon_sym___stdcall] = ACTIONS(1918), [anon_sym___fastcall] = ACTIONS(1918), [anon_sym___thiscall] = ACTIONS(1918), [anon_sym___vectorcall] = ACTIONS(1918), [anon_sym_LBRACE] = ACTIONS(1920), [anon_sym_RBRACE] = ACTIONS(1920), [anon_sym_LBRACK] = ACTIONS(1918), [anon_sym_static] = ACTIONS(1918), [anon_sym_register] = ACTIONS(1918), [anon_sym_inline] = ACTIONS(1918), [anon_sym_thread_local] = ACTIONS(1918), [anon_sym_const] = ACTIONS(1918), [anon_sym_volatile] = ACTIONS(1918), [anon_sym_restrict] = ACTIONS(1918), [anon_sym__Atomic] = ACTIONS(1918), [anon_sym_mutable] = ACTIONS(1918), [anon_sym_constexpr] = ACTIONS(1918), [anon_sym_signed] = ACTIONS(1918), [anon_sym_unsigned] = ACTIONS(1918), [anon_sym_long] = ACTIONS(1918), [anon_sym_short] = ACTIONS(1918), [sym_primitive_type] = ACTIONS(1918), [anon_sym_enum] = ACTIONS(1918), [anon_sym_class] = ACTIONS(1918), [anon_sym_struct] = ACTIONS(1918), [anon_sym_union] = ACTIONS(1918), [anon_sym_if] = ACTIONS(1918), [anon_sym_else] = ACTIONS(1918), [anon_sym_switch] = ACTIONS(1918), [anon_sym_case] = ACTIONS(1918), [anon_sym_default] = ACTIONS(1918), [anon_sym_while] = ACTIONS(1918), [anon_sym_do] = ACTIONS(1918), [anon_sym_for] = ACTIONS(1918), [anon_sym_return] = ACTIONS(1918), [anon_sym_break] = ACTIONS(1918), [anon_sym_continue] = ACTIONS(1918), [anon_sym_goto] = ACTIONS(1918), [anon_sym_DASH_DASH] = ACTIONS(1920), [anon_sym_PLUS_PLUS] = ACTIONS(1920), [anon_sym_sizeof] = ACTIONS(1918), [sym_number_literal] = ACTIONS(1920), [anon_sym_L_SQUOTE] = ACTIONS(1920), [anon_sym_u_SQUOTE] = ACTIONS(1920), [anon_sym_U_SQUOTE] = ACTIONS(1920), [anon_sym_u8_SQUOTE] = ACTIONS(1920), [anon_sym_SQUOTE] = ACTIONS(1920), [anon_sym_L_DQUOTE] = ACTIONS(1920), [anon_sym_u_DQUOTE] = ACTIONS(1920), [anon_sym_U_DQUOTE] = ACTIONS(1920), [anon_sym_u8_DQUOTE] = ACTIONS(1920), [anon_sym_DQUOTE] = ACTIONS(1920), [sym_true] = ACTIONS(1918), [sym_false] = ACTIONS(1918), [sym_null] = ACTIONS(1918), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1918), [anon_sym_virtual] = ACTIONS(1918), [anon_sym_explicit] = ACTIONS(1918), [sym_auto] = ACTIONS(1918), [anon_sym_typename] = ACTIONS(1918), [anon_sym_template] = ACTIONS(1918), [anon_sym_operator] = ACTIONS(1918), [anon_sym_delete] = ACTIONS(1918), [anon_sym_throw] = ACTIONS(1918), [anon_sym_namespace] = ACTIONS(1918), [anon_sym_using] = ACTIONS(1918), [anon_sym_static_assert] = ACTIONS(1918), [anon_sym_co_return] = ACTIONS(1918), [anon_sym_co_yield] = ACTIONS(1918), [anon_sym_try] = ACTIONS(1918), [anon_sym_co_await] = ACTIONS(1918), [anon_sym_new] = ACTIONS(1918), [sym_this] = ACTIONS(1918), [sym_nullptr] = ACTIONS(1918), [sym_raw_string_literal] = ACTIONS(1920), }, [469] = { [sym_identifier] = ACTIONS(1922), [aux_sym_preproc_include_token1] = ACTIONS(1922), [aux_sym_preproc_def_token1] = ACTIONS(1922), [aux_sym_preproc_if_token1] = ACTIONS(1922), [aux_sym_preproc_ifdef_token1] = ACTIONS(1922), [aux_sym_preproc_ifdef_token2] = ACTIONS(1922), [sym_preproc_directive] = ACTIONS(1922), [anon_sym_LPAREN2] = ACTIONS(1924), [anon_sym_BANG] = ACTIONS(1924), [anon_sym_TILDE] = ACTIONS(1924), [anon_sym_DASH] = ACTIONS(1922), [anon_sym_PLUS] = ACTIONS(1922), [anon_sym_STAR] = ACTIONS(1924), [anon_sym_AMP_AMP] = ACTIONS(1924), [anon_sym_AMP] = ACTIONS(1922), [anon_sym_SEMI] = ACTIONS(1924), [anon_sym_typedef] = ACTIONS(1922), [anon_sym_extern] = ACTIONS(1922), [anon_sym___attribute__] = ACTIONS(1922), [anon_sym_COLON_COLON] = ACTIONS(1924), [anon_sym_LBRACK_LBRACK] = ACTIONS(1924), [anon_sym___declspec] = ACTIONS(1922), [anon_sym___based] = ACTIONS(1922), [anon_sym___cdecl] = ACTIONS(1922), [anon_sym___clrcall] = ACTIONS(1922), [anon_sym___stdcall] = ACTIONS(1922), [anon_sym___fastcall] = ACTIONS(1922), [anon_sym___thiscall] = ACTIONS(1922), [anon_sym___vectorcall] = ACTIONS(1922), [anon_sym_LBRACE] = ACTIONS(1924), [anon_sym_RBRACE] = ACTIONS(1924), [anon_sym_LBRACK] = ACTIONS(1922), [anon_sym_static] = ACTIONS(1922), [anon_sym_register] = ACTIONS(1922), [anon_sym_inline] = ACTIONS(1922), [anon_sym_thread_local] = ACTIONS(1922), [anon_sym_const] = ACTIONS(1922), [anon_sym_volatile] = ACTIONS(1922), [anon_sym_restrict] = ACTIONS(1922), [anon_sym__Atomic] = ACTIONS(1922), [anon_sym_mutable] = ACTIONS(1922), [anon_sym_constexpr] = ACTIONS(1922), [anon_sym_signed] = ACTIONS(1922), [anon_sym_unsigned] = ACTIONS(1922), [anon_sym_long] = ACTIONS(1922), [anon_sym_short] = ACTIONS(1922), [sym_primitive_type] = ACTIONS(1922), [anon_sym_enum] = ACTIONS(1922), [anon_sym_class] = ACTIONS(1922), [anon_sym_struct] = ACTIONS(1922), [anon_sym_union] = ACTIONS(1922), [anon_sym_if] = ACTIONS(1922), [anon_sym_else] = ACTIONS(1922), [anon_sym_switch] = ACTIONS(1922), [anon_sym_case] = ACTIONS(1922), [anon_sym_default] = ACTIONS(1922), [anon_sym_while] = ACTIONS(1922), [anon_sym_do] = ACTIONS(1922), [anon_sym_for] = ACTIONS(1922), [anon_sym_return] = ACTIONS(1922), [anon_sym_break] = ACTIONS(1922), [anon_sym_continue] = ACTIONS(1922), [anon_sym_goto] = ACTIONS(1922), [anon_sym_DASH_DASH] = ACTIONS(1924), [anon_sym_PLUS_PLUS] = ACTIONS(1924), [anon_sym_sizeof] = ACTIONS(1922), [sym_number_literal] = ACTIONS(1924), [anon_sym_L_SQUOTE] = ACTIONS(1924), [anon_sym_u_SQUOTE] = ACTIONS(1924), [anon_sym_U_SQUOTE] = ACTIONS(1924), [anon_sym_u8_SQUOTE] = ACTIONS(1924), [anon_sym_SQUOTE] = ACTIONS(1924), [anon_sym_L_DQUOTE] = ACTIONS(1924), [anon_sym_u_DQUOTE] = ACTIONS(1924), [anon_sym_U_DQUOTE] = ACTIONS(1924), [anon_sym_u8_DQUOTE] = ACTIONS(1924), [anon_sym_DQUOTE] = ACTIONS(1924), [sym_true] = ACTIONS(1922), [sym_false] = ACTIONS(1922), [sym_null] = ACTIONS(1922), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1922), [anon_sym_virtual] = ACTIONS(1922), [anon_sym_explicit] = ACTIONS(1922), [sym_auto] = ACTIONS(1922), [anon_sym_typename] = ACTIONS(1922), [anon_sym_template] = ACTIONS(1922), [anon_sym_operator] = ACTIONS(1922), [anon_sym_delete] = ACTIONS(1922), [anon_sym_throw] = ACTIONS(1922), [anon_sym_namespace] = ACTIONS(1922), [anon_sym_using] = ACTIONS(1922), [anon_sym_static_assert] = ACTIONS(1922), [anon_sym_co_return] = ACTIONS(1922), [anon_sym_co_yield] = ACTIONS(1922), [anon_sym_try] = ACTIONS(1922), [anon_sym_co_await] = ACTIONS(1922), [anon_sym_new] = ACTIONS(1922), [sym_this] = ACTIONS(1922), [sym_nullptr] = ACTIONS(1922), [sym_raw_string_literal] = ACTIONS(1924), }, [470] = { [sym_identifier] = ACTIONS(1836), [aux_sym_preproc_include_token1] = ACTIONS(1836), [aux_sym_preproc_def_token1] = ACTIONS(1836), [aux_sym_preproc_if_token1] = ACTIONS(1836), [aux_sym_preproc_ifdef_token1] = ACTIONS(1836), [aux_sym_preproc_ifdef_token2] = ACTIONS(1836), [sym_preproc_directive] = ACTIONS(1836), [anon_sym_LPAREN2] = ACTIONS(1838), [anon_sym_BANG] = ACTIONS(1838), [anon_sym_TILDE] = ACTIONS(1838), [anon_sym_DASH] = ACTIONS(1836), [anon_sym_PLUS] = ACTIONS(1836), [anon_sym_STAR] = ACTIONS(1838), [anon_sym_AMP_AMP] = ACTIONS(1838), [anon_sym_AMP] = ACTIONS(1836), [anon_sym_SEMI] = ACTIONS(1838), [anon_sym_typedef] = ACTIONS(1836), [anon_sym_extern] = ACTIONS(1836), [anon_sym___attribute__] = ACTIONS(1836), [anon_sym_COLON_COLON] = ACTIONS(1838), [anon_sym_LBRACK_LBRACK] = ACTIONS(1838), [anon_sym___declspec] = ACTIONS(1836), [anon_sym___based] = ACTIONS(1836), [anon_sym___cdecl] = ACTIONS(1836), [anon_sym___clrcall] = ACTIONS(1836), [anon_sym___stdcall] = ACTIONS(1836), [anon_sym___fastcall] = ACTIONS(1836), [anon_sym___thiscall] = ACTIONS(1836), [anon_sym___vectorcall] = ACTIONS(1836), [anon_sym_LBRACE] = ACTIONS(1838), [anon_sym_RBRACE] = ACTIONS(1838), [anon_sym_LBRACK] = ACTIONS(1836), [anon_sym_static] = ACTIONS(1836), [anon_sym_register] = ACTIONS(1836), [anon_sym_inline] = ACTIONS(1836), [anon_sym_thread_local] = ACTIONS(1836), [anon_sym_const] = ACTIONS(1836), [anon_sym_volatile] = ACTIONS(1836), [anon_sym_restrict] = ACTIONS(1836), [anon_sym__Atomic] = ACTIONS(1836), [anon_sym_mutable] = ACTIONS(1836), [anon_sym_constexpr] = ACTIONS(1836), [anon_sym_signed] = ACTIONS(1836), [anon_sym_unsigned] = ACTIONS(1836), [anon_sym_long] = ACTIONS(1836), [anon_sym_short] = ACTIONS(1836), [sym_primitive_type] = ACTIONS(1836), [anon_sym_enum] = ACTIONS(1836), [anon_sym_class] = ACTIONS(1836), [anon_sym_struct] = ACTIONS(1836), [anon_sym_union] = ACTIONS(1836), [anon_sym_if] = ACTIONS(1836), [anon_sym_else] = ACTIONS(1836), [anon_sym_switch] = ACTIONS(1836), [anon_sym_case] = ACTIONS(1836), [anon_sym_default] = ACTIONS(1836), [anon_sym_while] = ACTIONS(1836), [anon_sym_do] = ACTIONS(1836), [anon_sym_for] = ACTIONS(1836), [anon_sym_return] = ACTIONS(1836), [anon_sym_break] = ACTIONS(1836), [anon_sym_continue] = ACTIONS(1836), [anon_sym_goto] = ACTIONS(1836), [anon_sym_DASH_DASH] = ACTIONS(1838), [anon_sym_PLUS_PLUS] = ACTIONS(1838), [anon_sym_sizeof] = ACTIONS(1836), [sym_number_literal] = ACTIONS(1838), [anon_sym_L_SQUOTE] = ACTIONS(1838), [anon_sym_u_SQUOTE] = ACTIONS(1838), [anon_sym_U_SQUOTE] = ACTIONS(1838), [anon_sym_u8_SQUOTE] = ACTIONS(1838), [anon_sym_SQUOTE] = ACTIONS(1838), [anon_sym_L_DQUOTE] = ACTIONS(1838), [anon_sym_u_DQUOTE] = ACTIONS(1838), [anon_sym_U_DQUOTE] = ACTIONS(1838), [anon_sym_u8_DQUOTE] = ACTIONS(1838), [anon_sym_DQUOTE] = ACTIONS(1838), [sym_true] = ACTIONS(1836), [sym_false] = ACTIONS(1836), [sym_null] = ACTIONS(1836), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1836), [anon_sym_virtual] = ACTIONS(1836), [anon_sym_explicit] = ACTIONS(1836), [sym_auto] = ACTIONS(1836), [anon_sym_typename] = ACTIONS(1836), [anon_sym_template] = ACTIONS(1836), [anon_sym_operator] = ACTIONS(1836), [anon_sym_delete] = ACTIONS(1836), [anon_sym_throw] = ACTIONS(1836), [anon_sym_namespace] = ACTIONS(1836), [anon_sym_using] = ACTIONS(1836), [anon_sym_static_assert] = ACTIONS(1836), [anon_sym_co_return] = ACTIONS(1836), [anon_sym_co_yield] = ACTIONS(1836), [anon_sym_try] = ACTIONS(1836), [anon_sym_co_await] = ACTIONS(1836), [anon_sym_new] = ACTIONS(1836), [sym_this] = ACTIONS(1836), [sym_nullptr] = ACTIONS(1836), [sym_raw_string_literal] = ACTIONS(1838), }, [471] = { [sym_identifier] = ACTIONS(1756), [aux_sym_preproc_include_token1] = ACTIONS(1756), [aux_sym_preproc_def_token1] = ACTIONS(1756), [anon_sym_COMMA] = ACTIONS(1936), [aux_sym_preproc_if_token1] = ACTIONS(1756), [aux_sym_preproc_if_token2] = ACTIONS(1756), [aux_sym_preproc_ifdef_token1] = ACTIONS(1756), [aux_sym_preproc_ifdef_token2] = ACTIONS(1756), [sym_preproc_directive] = ACTIONS(1756), [anon_sym_LPAREN2] = ACTIONS(1758), [anon_sym_BANG] = ACTIONS(1758), [anon_sym_TILDE] = ACTIONS(1758), [anon_sym_DASH] = ACTIONS(1756), [anon_sym_PLUS] = ACTIONS(1756), [anon_sym_STAR] = ACTIONS(1758), [anon_sym_AMP_AMP] = ACTIONS(1758), [anon_sym_AMP] = ACTIONS(1756), [anon_sym_SEMI] = ACTIONS(1936), [anon_sym_typedef] = ACTIONS(1756), [anon_sym_extern] = ACTIONS(1756), [anon_sym___attribute__] = ACTIONS(1756), [anon_sym_COLON_COLON] = ACTIONS(1758), [anon_sym_LBRACK_LBRACK] = ACTIONS(1758), [anon_sym___declspec] = ACTIONS(1756), [anon_sym___based] = ACTIONS(1756), [anon_sym___cdecl] = ACTIONS(1756), [anon_sym___clrcall] = ACTIONS(1756), [anon_sym___stdcall] = ACTIONS(1756), [anon_sym___fastcall] = ACTIONS(1756), [anon_sym___thiscall] = ACTIONS(1756), [anon_sym___vectorcall] = ACTIONS(1756), [anon_sym_LBRACE] = ACTIONS(1758), [anon_sym_LBRACK] = ACTIONS(1756), [anon_sym_static] = ACTIONS(1756), [anon_sym_register] = ACTIONS(1756), [anon_sym_inline] = ACTIONS(1756), [anon_sym_thread_local] = ACTIONS(1756), [anon_sym_const] = ACTIONS(1756), [anon_sym_volatile] = ACTIONS(1756), [anon_sym_restrict] = ACTIONS(1756), [anon_sym__Atomic] = ACTIONS(1756), [anon_sym_mutable] = ACTIONS(1756), [anon_sym_constexpr] = ACTIONS(1756), [anon_sym_signed] = ACTIONS(1756), [anon_sym_unsigned] = ACTIONS(1756), [anon_sym_long] = ACTIONS(1756), [anon_sym_short] = ACTIONS(1756), [sym_primitive_type] = ACTIONS(1756), [anon_sym_enum] = ACTIONS(1756), [anon_sym_class] = ACTIONS(1756), [anon_sym_struct] = ACTIONS(1756), [anon_sym_union] = ACTIONS(1756), [anon_sym_if] = ACTIONS(1756), [anon_sym_switch] = ACTIONS(1756), [anon_sym_case] = ACTIONS(1756), [anon_sym_default] = ACTIONS(1756), [anon_sym_while] = ACTIONS(1756), [anon_sym_do] = ACTIONS(1756), [anon_sym_for] = ACTIONS(1756), [anon_sym_return] = ACTIONS(1756), [anon_sym_break] = ACTIONS(1756), [anon_sym_continue] = ACTIONS(1756), [anon_sym_goto] = ACTIONS(1756), [anon_sym_DASH_DASH] = ACTIONS(1758), [anon_sym_PLUS_PLUS] = ACTIONS(1758), [anon_sym_sizeof] = ACTIONS(1756), [sym_number_literal] = ACTIONS(1758), [anon_sym_L_SQUOTE] = ACTIONS(1758), [anon_sym_u_SQUOTE] = ACTIONS(1758), [anon_sym_U_SQUOTE] = ACTIONS(1758), [anon_sym_u8_SQUOTE] = ACTIONS(1758), [anon_sym_SQUOTE] = ACTIONS(1758), [anon_sym_L_DQUOTE] = ACTIONS(1758), [anon_sym_u_DQUOTE] = ACTIONS(1758), [anon_sym_U_DQUOTE] = ACTIONS(1758), [anon_sym_u8_DQUOTE] = ACTIONS(1758), [anon_sym_DQUOTE] = ACTIONS(1758), [sym_true] = ACTIONS(1756), [sym_false] = ACTIONS(1756), [sym_null] = ACTIONS(1756), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1756), [anon_sym_virtual] = ACTIONS(1756), [anon_sym_explicit] = ACTIONS(1756), [sym_auto] = ACTIONS(1756), [anon_sym_typename] = ACTIONS(1756), [anon_sym_template] = ACTIONS(1756), [anon_sym_operator] = ACTIONS(1756), [anon_sym_delete] = ACTIONS(1756), [anon_sym_throw] = ACTIONS(1756), [anon_sym_namespace] = ACTIONS(1756), [anon_sym_using] = ACTIONS(1756), [anon_sym_static_assert] = ACTIONS(1756), [anon_sym_co_return] = ACTIONS(1756), [anon_sym_co_yield] = ACTIONS(1756), [anon_sym_try] = ACTIONS(1756), [anon_sym_co_await] = ACTIONS(1756), [anon_sym_new] = ACTIONS(1756), [sym_this] = ACTIONS(1756), [sym_nullptr] = ACTIONS(1756), [sym_raw_string_literal] = ACTIONS(1758), }, [472] = { [ts_builtin_sym_end] = ACTIONS(1904), [sym_identifier] = ACTIONS(1902), [aux_sym_preproc_include_token1] = ACTIONS(1902), [aux_sym_preproc_def_token1] = ACTIONS(1902), [aux_sym_preproc_if_token1] = ACTIONS(1902), [aux_sym_preproc_ifdef_token1] = ACTIONS(1902), [aux_sym_preproc_ifdef_token2] = ACTIONS(1902), [sym_preproc_directive] = ACTIONS(1902), [anon_sym_LPAREN2] = ACTIONS(1904), [anon_sym_BANG] = ACTIONS(1904), [anon_sym_TILDE] = ACTIONS(1904), [anon_sym_DASH] = ACTIONS(1902), [anon_sym_PLUS] = ACTIONS(1902), [anon_sym_STAR] = ACTIONS(1904), [anon_sym_AMP_AMP] = ACTIONS(1904), [anon_sym_AMP] = ACTIONS(1902), [anon_sym_SEMI] = ACTIONS(1904), [anon_sym_typedef] = ACTIONS(1902), [anon_sym_extern] = ACTIONS(1902), [anon_sym___attribute__] = ACTIONS(1902), [anon_sym_COLON_COLON] = ACTIONS(1904), [anon_sym_LBRACK_LBRACK] = ACTIONS(1904), [anon_sym___declspec] = ACTIONS(1902), [anon_sym___based] = ACTIONS(1902), [anon_sym___cdecl] = ACTIONS(1902), [anon_sym___clrcall] = ACTIONS(1902), [anon_sym___stdcall] = ACTIONS(1902), [anon_sym___fastcall] = ACTIONS(1902), [anon_sym___thiscall] = ACTIONS(1902), [anon_sym___vectorcall] = ACTIONS(1902), [anon_sym_LBRACE] = ACTIONS(1904), [anon_sym_LBRACK] = ACTIONS(1902), [anon_sym_static] = ACTIONS(1902), [anon_sym_register] = ACTIONS(1902), [anon_sym_inline] = ACTIONS(1902), [anon_sym_thread_local] = ACTIONS(1902), [anon_sym_const] = ACTIONS(1902), [anon_sym_volatile] = ACTIONS(1902), [anon_sym_restrict] = ACTIONS(1902), [anon_sym__Atomic] = ACTIONS(1902), [anon_sym_mutable] = ACTIONS(1902), [anon_sym_constexpr] = ACTIONS(1902), [anon_sym_signed] = ACTIONS(1902), [anon_sym_unsigned] = ACTIONS(1902), [anon_sym_long] = ACTIONS(1902), [anon_sym_short] = ACTIONS(1902), [sym_primitive_type] = ACTIONS(1902), [anon_sym_enum] = ACTIONS(1902), [anon_sym_class] = ACTIONS(1902), [anon_sym_struct] = ACTIONS(1902), [anon_sym_union] = ACTIONS(1902), [anon_sym_if] = ACTIONS(1902), [anon_sym_else] = ACTIONS(1902), [anon_sym_switch] = ACTIONS(1902), [anon_sym_case] = ACTIONS(1902), [anon_sym_default] = ACTIONS(1902), [anon_sym_while] = ACTIONS(1902), [anon_sym_do] = ACTIONS(1902), [anon_sym_for] = ACTIONS(1902), [anon_sym_return] = ACTIONS(1902), [anon_sym_break] = ACTIONS(1902), [anon_sym_continue] = ACTIONS(1902), [anon_sym_goto] = ACTIONS(1902), [anon_sym_DASH_DASH] = ACTIONS(1904), [anon_sym_PLUS_PLUS] = ACTIONS(1904), [anon_sym_sizeof] = ACTIONS(1902), [sym_number_literal] = ACTIONS(1904), [anon_sym_L_SQUOTE] = ACTIONS(1904), [anon_sym_u_SQUOTE] = ACTIONS(1904), [anon_sym_U_SQUOTE] = ACTIONS(1904), [anon_sym_u8_SQUOTE] = ACTIONS(1904), [anon_sym_SQUOTE] = ACTIONS(1904), [anon_sym_L_DQUOTE] = ACTIONS(1904), [anon_sym_u_DQUOTE] = ACTIONS(1904), [anon_sym_U_DQUOTE] = ACTIONS(1904), [anon_sym_u8_DQUOTE] = ACTIONS(1904), [anon_sym_DQUOTE] = ACTIONS(1904), [sym_true] = ACTIONS(1902), [sym_false] = ACTIONS(1902), [sym_null] = ACTIONS(1902), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1902), [anon_sym_virtual] = ACTIONS(1902), [anon_sym_explicit] = ACTIONS(1902), [sym_auto] = ACTIONS(1902), [anon_sym_typename] = ACTIONS(1902), [anon_sym_template] = ACTIONS(1902), [anon_sym_operator] = ACTIONS(1902), [anon_sym_delete] = ACTIONS(1902), [anon_sym_throw] = ACTIONS(1902), [anon_sym_namespace] = ACTIONS(1902), [anon_sym_using] = ACTIONS(1902), [anon_sym_static_assert] = ACTIONS(1902), [anon_sym_co_return] = ACTIONS(1902), [anon_sym_co_yield] = ACTIONS(1902), [anon_sym_try] = ACTIONS(1902), [anon_sym_co_await] = ACTIONS(1902), [anon_sym_new] = ACTIONS(1902), [sym_this] = ACTIONS(1902), [sym_nullptr] = ACTIONS(1902), [sym_raw_string_literal] = ACTIONS(1904), }, [473] = { [ts_builtin_sym_end] = ACTIONS(1908), [sym_identifier] = ACTIONS(1906), [aux_sym_preproc_include_token1] = ACTIONS(1906), [aux_sym_preproc_def_token1] = ACTIONS(1906), [aux_sym_preproc_if_token1] = ACTIONS(1906), [aux_sym_preproc_ifdef_token1] = ACTIONS(1906), [aux_sym_preproc_ifdef_token2] = ACTIONS(1906), [sym_preproc_directive] = ACTIONS(1906), [anon_sym_LPAREN2] = ACTIONS(1908), [anon_sym_BANG] = ACTIONS(1908), [anon_sym_TILDE] = ACTIONS(1908), [anon_sym_DASH] = ACTIONS(1906), [anon_sym_PLUS] = ACTIONS(1906), [anon_sym_STAR] = ACTIONS(1908), [anon_sym_AMP_AMP] = ACTIONS(1908), [anon_sym_AMP] = ACTIONS(1906), [anon_sym_SEMI] = ACTIONS(1908), [anon_sym_typedef] = ACTIONS(1906), [anon_sym_extern] = ACTIONS(1906), [anon_sym___attribute__] = ACTIONS(1906), [anon_sym_COLON_COLON] = ACTIONS(1908), [anon_sym_LBRACK_LBRACK] = ACTIONS(1908), [anon_sym___declspec] = ACTIONS(1906), [anon_sym___based] = ACTIONS(1906), [anon_sym___cdecl] = ACTIONS(1906), [anon_sym___clrcall] = ACTIONS(1906), [anon_sym___stdcall] = ACTIONS(1906), [anon_sym___fastcall] = ACTIONS(1906), [anon_sym___thiscall] = ACTIONS(1906), [anon_sym___vectorcall] = ACTIONS(1906), [anon_sym_LBRACE] = ACTIONS(1908), [anon_sym_LBRACK] = ACTIONS(1906), [anon_sym_static] = ACTIONS(1906), [anon_sym_register] = ACTIONS(1906), [anon_sym_inline] = ACTIONS(1906), [anon_sym_thread_local] = ACTIONS(1906), [anon_sym_const] = ACTIONS(1906), [anon_sym_volatile] = ACTIONS(1906), [anon_sym_restrict] = ACTIONS(1906), [anon_sym__Atomic] = ACTIONS(1906), [anon_sym_mutable] = ACTIONS(1906), [anon_sym_constexpr] = ACTIONS(1906), [anon_sym_signed] = ACTIONS(1906), [anon_sym_unsigned] = ACTIONS(1906), [anon_sym_long] = ACTIONS(1906), [anon_sym_short] = ACTIONS(1906), [sym_primitive_type] = ACTIONS(1906), [anon_sym_enum] = ACTIONS(1906), [anon_sym_class] = ACTIONS(1906), [anon_sym_struct] = ACTIONS(1906), [anon_sym_union] = ACTIONS(1906), [anon_sym_if] = ACTIONS(1906), [anon_sym_else] = ACTIONS(1906), [anon_sym_switch] = ACTIONS(1906), [anon_sym_case] = ACTIONS(1906), [anon_sym_default] = ACTIONS(1906), [anon_sym_while] = ACTIONS(1906), [anon_sym_do] = ACTIONS(1906), [anon_sym_for] = ACTIONS(1906), [anon_sym_return] = ACTIONS(1906), [anon_sym_break] = ACTIONS(1906), [anon_sym_continue] = ACTIONS(1906), [anon_sym_goto] = ACTIONS(1906), [anon_sym_DASH_DASH] = ACTIONS(1908), [anon_sym_PLUS_PLUS] = ACTIONS(1908), [anon_sym_sizeof] = ACTIONS(1906), [sym_number_literal] = ACTIONS(1908), [anon_sym_L_SQUOTE] = ACTIONS(1908), [anon_sym_u_SQUOTE] = ACTIONS(1908), [anon_sym_U_SQUOTE] = ACTIONS(1908), [anon_sym_u8_SQUOTE] = ACTIONS(1908), [anon_sym_SQUOTE] = ACTIONS(1908), [anon_sym_L_DQUOTE] = ACTIONS(1908), [anon_sym_u_DQUOTE] = ACTIONS(1908), [anon_sym_U_DQUOTE] = ACTIONS(1908), [anon_sym_u8_DQUOTE] = ACTIONS(1908), [anon_sym_DQUOTE] = ACTIONS(1908), [sym_true] = ACTIONS(1906), [sym_false] = ACTIONS(1906), [sym_null] = ACTIONS(1906), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1906), [anon_sym_virtual] = ACTIONS(1906), [anon_sym_explicit] = ACTIONS(1906), [sym_auto] = ACTIONS(1906), [anon_sym_typename] = ACTIONS(1906), [anon_sym_template] = ACTIONS(1906), [anon_sym_operator] = ACTIONS(1906), [anon_sym_delete] = ACTIONS(1906), [anon_sym_throw] = ACTIONS(1906), [anon_sym_namespace] = ACTIONS(1906), [anon_sym_using] = ACTIONS(1906), [anon_sym_static_assert] = ACTIONS(1906), [anon_sym_co_return] = ACTIONS(1906), [anon_sym_co_yield] = ACTIONS(1906), [anon_sym_try] = ACTIONS(1906), [anon_sym_co_await] = ACTIONS(1906), [anon_sym_new] = ACTIONS(1906), [sym_this] = ACTIONS(1906), [sym_nullptr] = ACTIONS(1906), [sym_raw_string_literal] = ACTIONS(1908), }, [474] = { [sym_identifier] = ACTIONS(1836), [aux_sym_preproc_include_token1] = ACTIONS(1836), [aux_sym_preproc_def_token1] = ACTIONS(1836), [aux_sym_preproc_if_token1] = ACTIONS(1836), [aux_sym_preproc_ifdef_token1] = ACTIONS(1836), [aux_sym_preproc_ifdef_token2] = ACTIONS(1836), [sym_preproc_directive] = ACTIONS(1836), [anon_sym_LPAREN2] = ACTIONS(1838), [anon_sym_BANG] = ACTIONS(1838), [anon_sym_TILDE] = ACTIONS(1838), [anon_sym_DASH] = ACTIONS(1836), [anon_sym_PLUS] = ACTIONS(1836), [anon_sym_STAR] = ACTIONS(1838), [anon_sym_AMP_AMP] = ACTIONS(1838), [anon_sym_AMP] = ACTIONS(1836), [anon_sym_SEMI] = ACTIONS(1838), [anon_sym_typedef] = ACTIONS(1836), [anon_sym_extern] = ACTIONS(1836), [anon_sym___attribute__] = ACTIONS(1836), [anon_sym_COLON_COLON] = ACTIONS(1838), [anon_sym_LBRACK_LBRACK] = ACTIONS(1838), [anon_sym___declspec] = ACTIONS(1836), [anon_sym___based] = ACTIONS(1836), [anon_sym___cdecl] = ACTIONS(1836), [anon_sym___clrcall] = ACTIONS(1836), [anon_sym___stdcall] = ACTIONS(1836), [anon_sym___fastcall] = ACTIONS(1836), [anon_sym___thiscall] = ACTIONS(1836), [anon_sym___vectorcall] = ACTIONS(1836), [anon_sym_LBRACE] = ACTIONS(1838), [anon_sym_RBRACE] = ACTIONS(1838), [anon_sym_LBRACK] = ACTIONS(1836), [anon_sym_static] = ACTIONS(1836), [anon_sym_register] = ACTIONS(1836), [anon_sym_inline] = ACTIONS(1836), [anon_sym_thread_local] = ACTIONS(1836), [anon_sym_const] = ACTIONS(1836), [anon_sym_volatile] = ACTIONS(1836), [anon_sym_restrict] = ACTIONS(1836), [anon_sym__Atomic] = ACTIONS(1836), [anon_sym_mutable] = ACTIONS(1836), [anon_sym_constexpr] = ACTIONS(1836), [anon_sym_signed] = ACTIONS(1836), [anon_sym_unsigned] = ACTIONS(1836), [anon_sym_long] = ACTIONS(1836), [anon_sym_short] = ACTIONS(1836), [sym_primitive_type] = ACTIONS(1836), [anon_sym_enum] = ACTIONS(1836), [anon_sym_class] = ACTIONS(1836), [anon_sym_struct] = ACTIONS(1836), [anon_sym_union] = ACTIONS(1836), [anon_sym_if] = ACTIONS(1836), [anon_sym_else] = ACTIONS(1836), [anon_sym_switch] = ACTIONS(1836), [anon_sym_case] = ACTIONS(1836), [anon_sym_default] = ACTIONS(1836), [anon_sym_while] = ACTIONS(1836), [anon_sym_do] = ACTIONS(1836), [anon_sym_for] = ACTIONS(1836), [anon_sym_return] = ACTIONS(1836), [anon_sym_break] = ACTIONS(1836), [anon_sym_continue] = ACTIONS(1836), [anon_sym_goto] = ACTIONS(1836), [anon_sym_DASH_DASH] = ACTIONS(1838), [anon_sym_PLUS_PLUS] = ACTIONS(1838), [anon_sym_sizeof] = ACTIONS(1836), [sym_number_literal] = ACTIONS(1838), [anon_sym_L_SQUOTE] = ACTIONS(1838), [anon_sym_u_SQUOTE] = ACTIONS(1838), [anon_sym_U_SQUOTE] = ACTIONS(1838), [anon_sym_u8_SQUOTE] = ACTIONS(1838), [anon_sym_SQUOTE] = ACTIONS(1838), [anon_sym_L_DQUOTE] = ACTIONS(1838), [anon_sym_u_DQUOTE] = ACTIONS(1838), [anon_sym_U_DQUOTE] = ACTIONS(1838), [anon_sym_u8_DQUOTE] = ACTIONS(1838), [anon_sym_DQUOTE] = ACTIONS(1838), [sym_true] = ACTIONS(1836), [sym_false] = ACTIONS(1836), [sym_null] = ACTIONS(1836), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1836), [anon_sym_virtual] = ACTIONS(1836), [anon_sym_explicit] = ACTIONS(1836), [sym_auto] = ACTIONS(1836), [anon_sym_typename] = ACTIONS(1836), [anon_sym_template] = ACTIONS(1836), [anon_sym_operator] = ACTIONS(1836), [anon_sym_delete] = ACTIONS(1836), [anon_sym_throw] = ACTIONS(1836), [anon_sym_namespace] = ACTIONS(1836), [anon_sym_using] = ACTIONS(1836), [anon_sym_static_assert] = ACTIONS(1836), [anon_sym_co_return] = ACTIONS(1836), [anon_sym_co_yield] = ACTIONS(1836), [anon_sym_try] = ACTIONS(1836), [anon_sym_co_await] = ACTIONS(1836), [anon_sym_new] = ACTIONS(1836), [sym_this] = ACTIONS(1836), [sym_nullptr] = ACTIONS(1836), [sym_raw_string_literal] = ACTIONS(1838), }, [475] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [476] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [477] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [478] = { [ts_builtin_sym_end] = ACTIONS(1858), [sym_identifier] = ACTIONS(1856), [aux_sym_preproc_include_token1] = ACTIONS(1856), [aux_sym_preproc_def_token1] = ACTIONS(1856), [aux_sym_preproc_if_token1] = ACTIONS(1856), [aux_sym_preproc_ifdef_token1] = ACTIONS(1856), [aux_sym_preproc_ifdef_token2] = ACTIONS(1856), [sym_preproc_directive] = ACTIONS(1856), [anon_sym_LPAREN2] = ACTIONS(1858), [anon_sym_BANG] = ACTIONS(1858), [anon_sym_TILDE] = ACTIONS(1858), [anon_sym_DASH] = ACTIONS(1856), [anon_sym_PLUS] = ACTIONS(1856), [anon_sym_STAR] = ACTIONS(1858), [anon_sym_AMP_AMP] = ACTIONS(1858), [anon_sym_AMP] = ACTIONS(1856), [anon_sym_SEMI] = ACTIONS(1858), [anon_sym_typedef] = ACTIONS(1856), [anon_sym_extern] = ACTIONS(1856), [anon_sym___attribute__] = ACTIONS(1856), [anon_sym_COLON_COLON] = ACTIONS(1858), [anon_sym_LBRACK_LBRACK] = ACTIONS(1858), [anon_sym___declspec] = ACTIONS(1856), [anon_sym___based] = ACTIONS(1856), [anon_sym___cdecl] = ACTIONS(1856), [anon_sym___clrcall] = ACTIONS(1856), [anon_sym___stdcall] = ACTIONS(1856), [anon_sym___fastcall] = ACTIONS(1856), [anon_sym___thiscall] = ACTIONS(1856), [anon_sym___vectorcall] = ACTIONS(1856), [anon_sym_LBRACE] = ACTIONS(1858), [anon_sym_LBRACK] = ACTIONS(1856), [anon_sym_static] = ACTIONS(1856), [anon_sym_register] = ACTIONS(1856), [anon_sym_inline] = ACTIONS(1856), [anon_sym_thread_local] = ACTIONS(1856), [anon_sym_const] = ACTIONS(1856), [anon_sym_volatile] = ACTIONS(1856), [anon_sym_restrict] = ACTIONS(1856), [anon_sym__Atomic] = ACTIONS(1856), [anon_sym_mutable] = ACTIONS(1856), [anon_sym_constexpr] = ACTIONS(1856), [anon_sym_signed] = ACTIONS(1856), [anon_sym_unsigned] = ACTIONS(1856), [anon_sym_long] = ACTIONS(1856), [anon_sym_short] = ACTIONS(1856), [sym_primitive_type] = ACTIONS(1856), [anon_sym_enum] = ACTIONS(1856), [anon_sym_class] = ACTIONS(1856), [anon_sym_struct] = ACTIONS(1856), [anon_sym_union] = ACTIONS(1856), [anon_sym_if] = ACTIONS(1856), [anon_sym_else] = ACTIONS(1856), [anon_sym_switch] = ACTIONS(1856), [anon_sym_case] = ACTIONS(1856), [anon_sym_default] = ACTIONS(1856), [anon_sym_while] = ACTIONS(1856), [anon_sym_do] = ACTIONS(1856), [anon_sym_for] = ACTIONS(1856), [anon_sym_return] = ACTIONS(1856), [anon_sym_break] = ACTIONS(1856), [anon_sym_continue] = ACTIONS(1856), [anon_sym_goto] = ACTIONS(1856), [anon_sym_DASH_DASH] = ACTIONS(1858), [anon_sym_PLUS_PLUS] = ACTIONS(1858), [anon_sym_sizeof] = ACTIONS(1856), [sym_number_literal] = ACTIONS(1858), [anon_sym_L_SQUOTE] = ACTIONS(1858), [anon_sym_u_SQUOTE] = ACTIONS(1858), [anon_sym_U_SQUOTE] = ACTIONS(1858), [anon_sym_u8_SQUOTE] = ACTIONS(1858), [anon_sym_SQUOTE] = ACTIONS(1858), [anon_sym_L_DQUOTE] = ACTIONS(1858), [anon_sym_u_DQUOTE] = ACTIONS(1858), [anon_sym_U_DQUOTE] = ACTIONS(1858), [anon_sym_u8_DQUOTE] = ACTIONS(1858), [anon_sym_DQUOTE] = ACTIONS(1858), [sym_true] = ACTIONS(1856), [sym_false] = ACTIONS(1856), [sym_null] = ACTIONS(1856), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1856), [anon_sym_virtual] = ACTIONS(1856), [anon_sym_explicit] = ACTIONS(1856), [sym_auto] = ACTIONS(1856), [anon_sym_typename] = ACTIONS(1856), [anon_sym_template] = ACTIONS(1856), [anon_sym_operator] = ACTIONS(1856), [anon_sym_delete] = ACTIONS(1856), [anon_sym_throw] = ACTIONS(1856), [anon_sym_namespace] = ACTIONS(1856), [anon_sym_using] = ACTIONS(1856), [anon_sym_static_assert] = ACTIONS(1856), [anon_sym_co_return] = ACTIONS(1856), [anon_sym_co_yield] = ACTIONS(1856), [anon_sym_try] = ACTIONS(1856), [anon_sym_co_await] = ACTIONS(1856), [anon_sym_new] = ACTIONS(1856), [sym_this] = ACTIONS(1856), [sym_nullptr] = ACTIONS(1856), [sym_raw_string_literal] = ACTIONS(1858), }, [479] = { [sym_identifier] = ACTIONS(1820), [aux_sym_preproc_include_token1] = ACTIONS(1820), [aux_sym_preproc_def_token1] = ACTIONS(1820), [aux_sym_preproc_if_token1] = ACTIONS(1820), [aux_sym_preproc_ifdef_token1] = ACTIONS(1820), [aux_sym_preproc_ifdef_token2] = ACTIONS(1820), [sym_preproc_directive] = ACTIONS(1820), [anon_sym_LPAREN2] = ACTIONS(1822), [anon_sym_BANG] = ACTIONS(1822), [anon_sym_TILDE] = ACTIONS(1822), [anon_sym_DASH] = ACTIONS(1820), [anon_sym_PLUS] = ACTIONS(1820), [anon_sym_STAR] = ACTIONS(1822), [anon_sym_AMP_AMP] = ACTIONS(1822), [anon_sym_AMP] = ACTIONS(1820), [anon_sym_SEMI] = ACTIONS(1822), [anon_sym_typedef] = ACTIONS(1820), [anon_sym_extern] = ACTIONS(1820), [anon_sym___attribute__] = ACTIONS(1820), [anon_sym_COLON_COLON] = ACTIONS(1822), [anon_sym_LBRACK_LBRACK] = ACTIONS(1822), [anon_sym___declspec] = ACTIONS(1820), [anon_sym___based] = ACTIONS(1820), [anon_sym___cdecl] = ACTIONS(1820), [anon_sym___clrcall] = ACTIONS(1820), [anon_sym___stdcall] = ACTIONS(1820), [anon_sym___fastcall] = ACTIONS(1820), [anon_sym___thiscall] = ACTIONS(1820), [anon_sym___vectorcall] = ACTIONS(1820), [anon_sym_LBRACE] = ACTIONS(1822), [anon_sym_RBRACE] = ACTIONS(1822), [anon_sym_LBRACK] = ACTIONS(1820), [anon_sym_static] = ACTIONS(1820), [anon_sym_register] = ACTIONS(1820), [anon_sym_inline] = ACTIONS(1820), [anon_sym_thread_local] = ACTIONS(1820), [anon_sym_const] = ACTIONS(1820), [anon_sym_volatile] = ACTIONS(1820), [anon_sym_restrict] = ACTIONS(1820), [anon_sym__Atomic] = ACTIONS(1820), [anon_sym_mutable] = ACTIONS(1820), [anon_sym_constexpr] = ACTIONS(1820), [anon_sym_signed] = ACTIONS(1820), [anon_sym_unsigned] = ACTIONS(1820), [anon_sym_long] = ACTIONS(1820), [anon_sym_short] = ACTIONS(1820), [sym_primitive_type] = ACTIONS(1820), [anon_sym_enum] = ACTIONS(1820), [anon_sym_class] = ACTIONS(1820), [anon_sym_struct] = ACTIONS(1820), [anon_sym_union] = ACTIONS(1820), [anon_sym_if] = ACTIONS(1820), [anon_sym_else] = ACTIONS(1820), [anon_sym_switch] = ACTIONS(1820), [anon_sym_case] = ACTIONS(1820), [anon_sym_default] = ACTIONS(1820), [anon_sym_while] = ACTIONS(1820), [anon_sym_do] = ACTIONS(1820), [anon_sym_for] = ACTIONS(1820), [anon_sym_return] = ACTIONS(1820), [anon_sym_break] = ACTIONS(1820), [anon_sym_continue] = ACTIONS(1820), [anon_sym_goto] = ACTIONS(1820), [anon_sym_DASH_DASH] = ACTIONS(1822), [anon_sym_PLUS_PLUS] = ACTIONS(1822), [anon_sym_sizeof] = ACTIONS(1820), [sym_number_literal] = ACTIONS(1822), [anon_sym_L_SQUOTE] = ACTIONS(1822), [anon_sym_u_SQUOTE] = ACTIONS(1822), [anon_sym_U_SQUOTE] = ACTIONS(1822), [anon_sym_u8_SQUOTE] = ACTIONS(1822), [anon_sym_SQUOTE] = ACTIONS(1822), [anon_sym_L_DQUOTE] = ACTIONS(1822), [anon_sym_u_DQUOTE] = ACTIONS(1822), [anon_sym_U_DQUOTE] = ACTIONS(1822), [anon_sym_u8_DQUOTE] = ACTIONS(1822), [anon_sym_DQUOTE] = ACTIONS(1822), [sym_true] = ACTIONS(1820), [sym_false] = ACTIONS(1820), [sym_null] = ACTIONS(1820), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1820), [anon_sym_virtual] = ACTIONS(1820), [anon_sym_explicit] = ACTIONS(1820), [sym_auto] = ACTIONS(1820), [anon_sym_typename] = ACTIONS(1820), [anon_sym_template] = ACTIONS(1820), [anon_sym_operator] = ACTIONS(1820), [anon_sym_delete] = ACTIONS(1820), [anon_sym_throw] = ACTIONS(1820), [anon_sym_namespace] = ACTIONS(1820), [anon_sym_using] = ACTIONS(1820), [anon_sym_static_assert] = ACTIONS(1820), [anon_sym_co_return] = ACTIONS(1820), [anon_sym_co_yield] = ACTIONS(1820), [anon_sym_try] = ACTIONS(1820), [anon_sym_co_await] = ACTIONS(1820), [anon_sym_new] = ACTIONS(1820), [sym_this] = ACTIONS(1820), [sym_nullptr] = ACTIONS(1820), [sym_raw_string_literal] = ACTIONS(1822), }, [480] = { [sym_identifier] = ACTIONS(1824), [aux_sym_preproc_include_token1] = ACTIONS(1824), [aux_sym_preproc_def_token1] = ACTIONS(1824), [aux_sym_preproc_if_token1] = ACTIONS(1824), [aux_sym_preproc_ifdef_token1] = ACTIONS(1824), [aux_sym_preproc_ifdef_token2] = ACTIONS(1824), [sym_preproc_directive] = ACTIONS(1824), [anon_sym_LPAREN2] = ACTIONS(1826), [anon_sym_BANG] = ACTIONS(1826), [anon_sym_TILDE] = ACTIONS(1826), [anon_sym_DASH] = ACTIONS(1824), [anon_sym_PLUS] = ACTIONS(1824), [anon_sym_STAR] = ACTIONS(1826), [anon_sym_AMP_AMP] = ACTIONS(1826), [anon_sym_AMP] = ACTIONS(1824), [anon_sym_SEMI] = ACTIONS(1826), [anon_sym_typedef] = ACTIONS(1824), [anon_sym_extern] = ACTIONS(1824), [anon_sym___attribute__] = ACTIONS(1824), [anon_sym_COLON_COLON] = ACTIONS(1826), [anon_sym_LBRACK_LBRACK] = ACTIONS(1826), [anon_sym___declspec] = ACTIONS(1824), [anon_sym___based] = ACTIONS(1824), [anon_sym___cdecl] = ACTIONS(1824), [anon_sym___clrcall] = ACTIONS(1824), [anon_sym___stdcall] = ACTIONS(1824), [anon_sym___fastcall] = ACTIONS(1824), [anon_sym___thiscall] = ACTIONS(1824), [anon_sym___vectorcall] = ACTIONS(1824), [anon_sym_LBRACE] = ACTIONS(1826), [anon_sym_RBRACE] = ACTIONS(1826), [anon_sym_LBRACK] = ACTIONS(1824), [anon_sym_static] = ACTIONS(1824), [anon_sym_register] = ACTIONS(1824), [anon_sym_inline] = ACTIONS(1824), [anon_sym_thread_local] = ACTIONS(1824), [anon_sym_const] = ACTIONS(1824), [anon_sym_volatile] = ACTIONS(1824), [anon_sym_restrict] = ACTIONS(1824), [anon_sym__Atomic] = ACTIONS(1824), [anon_sym_mutable] = ACTIONS(1824), [anon_sym_constexpr] = ACTIONS(1824), [anon_sym_signed] = ACTIONS(1824), [anon_sym_unsigned] = ACTIONS(1824), [anon_sym_long] = ACTIONS(1824), [anon_sym_short] = ACTIONS(1824), [sym_primitive_type] = ACTIONS(1824), [anon_sym_enum] = ACTIONS(1824), [anon_sym_class] = ACTIONS(1824), [anon_sym_struct] = ACTIONS(1824), [anon_sym_union] = ACTIONS(1824), [anon_sym_if] = ACTIONS(1824), [anon_sym_else] = ACTIONS(1824), [anon_sym_switch] = ACTIONS(1824), [anon_sym_case] = ACTIONS(1824), [anon_sym_default] = ACTIONS(1824), [anon_sym_while] = ACTIONS(1824), [anon_sym_do] = ACTIONS(1824), [anon_sym_for] = ACTIONS(1824), [anon_sym_return] = ACTIONS(1824), [anon_sym_break] = ACTIONS(1824), [anon_sym_continue] = ACTIONS(1824), [anon_sym_goto] = ACTIONS(1824), [anon_sym_DASH_DASH] = ACTIONS(1826), [anon_sym_PLUS_PLUS] = ACTIONS(1826), [anon_sym_sizeof] = ACTIONS(1824), [sym_number_literal] = ACTIONS(1826), [anon_sym_L_SQUOTE] = ACTIONS(1826), [anon_sym_u_SQUOTE] = ACTIONS(1826), [anon_sym_U_SQUOTE] = ACTIONS(1826), [anon_sym_u8_SQUOTE] = ACTIONS(1826), [anon_sym_SQUOTE] = ACTIONS(1826), [anon_sym_L_DQUOTE] = ACTIONS(1826), [anon_sym_u_DQUOTE] = ACTIONS(1826), [anon_sym_U_DQUOTE] = ACTIONS(1826), [anon_sym_u8_DQUOTE] = ACTIONS(1826), [anon_sym_DQUOTE] = ACTIONS(1826), [sym_true] = ACTIONS(1824), [sym_false] = ACTIONS(1824), [sym_null] = ACTIONS(1824), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1824), [anon_sym_virtual] = ACTIONS(1824), [anon_sym_explicit] = ACTIONS(1824), [sym_auto] = ACTIONS(1824), [anon_sym_typename] = ACTIONS(1824), [anon_sym_template] = ACTIONS(1824), [anon_sym_operator] = ACTIONS(1824), [anon_sym_delete] = ACTIONS(1824), [anon_sym_throw] = ACTIONS(1824), [anon_sym_namespace] = ACTIONS(1824), [anon_sym_using] = ACTIONS(1824), [anon_sym_static_assert] = ACTIONS(1824), [anon_sym_co_return] = ACTIONS(1824), [anon_sym_co_yield] = ACTIONS(1824), [anon_sym_try] = ACTIONS(1824), [anon_sym_co_await] = ACTIONS(1824), [anon_sym_new] = ACTIONS(1824), [sym_this] = ACTIONS(1824), [sym_nullptr] = ACTIONS(1824), [sym_raw_string_literal] = ACTIONS(1826), }, [481] = { [sym_identifier] = ACTIONS(1828), [aux_sym_preproc_include_token1] = ACTIONS(1828), [aux_sym_preproc_def_token1] = ACTIONS(1828), [aux_sym_preproc_if_token1] = ACTIONS(1828), [aux_sym_preproc_ifdef_token1] = ACTIONS(1828), [aux_sym_preproc_ifdef_token2] = ACTIONS(1828), [sym_preproc_directive] = ACTIONS(1828), [anon_sym_LPAREN2] = ACTIONS(1830), [anon_sym_BANG] = ACTIONS(1830), [anon_sym_TILDE] = ACTIONS(1830), [anon_sym_DASH] = ACTIONS(1828), [anon_sym_PLUS] = ACTIONS(1828), [anon_sym_STAR] = ACTIONS(1830), [anon_sym_AMP_AMP] = ACTIONS(1830), [anon_sym_AMP] = ACTIONS(1828), [anon_sym_SEMI] = ACTIONS(1830), [anon_sym_typedef] = ACTIONS(1828), [anon_sym_extern] = ACTIONS(1828), [anon_sym___attribute__] = ACTIONS(1828), [anon_sym_COLON_COLON] = ACTIONS(1830), [anon_sym_LBRACK_LBRACK] = ACTIONS(1830), [anon_sym___declspec] = ACTIONS(1828), [anon_sym___based] = ACTIONS(1828), [anon_sym___cdecl] = ACTIONS(1828), [anon_sym___clrcall] = ACTIONS(1828), [anon_sym___stdcall] = ACTIONS(1828), [anon_sym___fastcall] = ACTIONS(1828), [anon_sym___thiscall] = ACTIONS(1828), [anon_sym___vectorcall] = ACTIONS(1828), [anon_sym_LBRACE] = ACTIONS(1830), [anon_sym_RBRACE] = ACTIONS(1830), [anon_sym_LBRACK] = ACTIONS(1828), [anon_sym_static] = ACTIONS(1828), [anon_sym_register] = ACTIONS(1828), [anon_sym_inline] = ACTIONS(1828), [anon_sym_thread_local] = ACTIONS(1828), [anon_sym_const] = ACTIONS(1828), [anon_sym_volatile] = ACTIONS(1828), [anon_sym_restrict] = ACTIONS(1828), [anon_sym__Atomic] = ACTIONS(1828), [anon_sym_mutable] = ACTIONS(1828), [anon_sym_constexpr] = ACTIONS(1828), [anon_sym_signed] = ACTIONS(1828), [anon_sym_unsigned] = ACTIONS(1828), [anon_sym_long] = ACTIONS(1828), [anon_sym_short] = ACTIONS(1828), [sym_primitive_type] = ACTIONS(1828), [anon_sym_enum] = ACTIONS(1828), [anon_sym_class] = ACTIONS(1828), [anon_sym_struct] = ACTIONS(1828), [anon_sym_union] = ACTIONS(1828), [anon_sym_if] = ACTIONS(1828), [anon_sym_else] = ACTIONS(1828), [anon_sym_switch] = ACTIONS(1828), [anon_sym_case] = ACTIONS(1828), [anon_sym_default] = ACTIONS(1828), [anon_sym_while] = ACTIONS(1828), [anon_sym_do] = ACTIONS(1828), [anon_sym_for] = ACTIONS(1828), [anon_sym_return] = ACTIONS(1828), [anon_sym_break] = ACTIONS(1828), [anon_sym_continue] = ACTIONS(1828), [anon_sym_goto] = ACTIONS(1828), [anon_sym_DASH_DASH] = ACTIONS(1830), [anon_sym_PLUS_PLUS] = ACTIONS(1830), [anon_sym_sizeof] = ACTIONS(1828), [sym_number_literal] = ACTIONS(1830), [anon_sym_L_SQUOTE] = ACTIONS(1830), [anon_sym_u_SQUOTE] = ACTIONS(1830), [anon_sym_U_SQUOTE] = ACTIONS(1830), [anon_sym_u8_SQUOTE] = ACTIONS(1830), [anon_sym_SQUOTE] = ACTIONS(1830), [anon_sym_L_DQUOTE] = ACTIONS(1830), [anon_sym_u_DQUOTE] = ACTIONS(1830), [anon_sym_U_DQUOTE] = ACTIONS(1830), [anon_sym_u8_DQUOTE] = ACTIONS(1830), [anon_sym_DQUOTE] = ACTIONS(1830), [sym_true] = ACTIONS(1828), [sym_false] = ACTIONS(1828), [sym_null] = ACTIONS(1828), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1828), [anon_sym_virtual] = ACTIONS(1828), [anon_sym_explicit] = ACTIONS(1828), [sym_auto] = ACTIONS(1828), [anon_sym_typename] = ACTIONS(1828), [anon_sym_template] = ACTIONS(1828), [anon_sym_operator] = ACTIONS(1828), [anon_sym_delete] = ACTIONS(1828), [anon_sym_throw] = ACTIONS(1828), [anon_sym_namespace] = ACTIONS(1828), [anon_sym_using] = ACTIONS(1828), [anon_sym_static_assert] = ACTIONS(1828), [anon_sym_co_return] = ACTIONS(1828), [anon_sym_co_yield] = ACTIONS(1828), [anon_sym_try] = ACTIONS(1828), [anon_sym_co_await] = ACTIONS(1828), [anon_sym_new] = ACTIONS(1828), [sym_this] = ACTIONS(1828), [sym_nullptr] = ACTIONS(1828), [sym_raw_string_literal] = ACTIONS(1830), }, [482] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [483] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [484] = { [ts_builtin_sym_end] = ACTIONS(1912), [sym_identifier] = ACTIONS(1910), [aux_sym_preproc_include_token1] = ACTIONS(1910), [aux_sym_preproc_def_token1] = ACTIONS(1910), [aux_sym_preproc_if_token1] = ACTIONS(1910), [aux_sym_preproc_ifdef_token1] = ACTIONS(1910), [aux_sym_preproc_ifdef_token2] = ACTIONS(1910), [sym_preproc_directive] = ACTIONS(1910), [anon_sym_LPAREN2] = ACTIONS(1912), [anon_sym_BANG] = ACTIONS(1912), [anon_sym_TILDE] = ACTIONS(1912), [anon_sym_DASH] = ACTIONS(1910), [anon_sym_PLUS] = ACTIONS(1910), [anon_sym_STAR] = ACTIONS(1912), [anon_sym_AMP_AMP] = ACTIONS(1912), [anon_sym_AMP] = ACTIONS(1910), [anon_sym_SEMI] = ACTIONS(1912), [anon_sym_typedef] = ACTIONS(1910), [anon_sym_extern] = ACTIONS(1910), [anon_sym___attribute__] = ACTIONS(1910), [anon_sym_COLON_COLON] = ACTIONS(1912), [anon_sym_LBRACK_LBRACK] = ACTIONS(1912), [anon_sym___declspec] = ACTIONS(1910), [anon_sym___based] = ACTIONS(1910), [anon_sym___cdecl] = ACTIONS(1910), [anon_sym___clrcall] = ACTIONS(1910), [anon_sym___stdcall] = ACTIONS(1910), [anon_sym___fastcall] = ACTIONS(1910), [anon_sym___thiscall] = ACTIONS(1910), [anon_sym___vectorcall] = ACTIONS(1910), [anon_sym_LBRACE] = ACTIONS(1912), [anon_sym_LBRACK] = ACTIONS(1910), [anon_sym_static] = ACTIONS(1910), [anon_sym_register] = ACTIONS(1910), [anon_sym_inline] = ACTIONS(1910), [anon_sym_thread_local] = ACTIONS(1910), [anon_sym_const] = ACTIONS(1910), [anon_sym_volatile] = ACTIONS(1910), [anon_sym_restrict] = ACTIONS(1910), [anon_sym__Atomic] = ACTIONS(1910), [anon_sym_mutable] = ACTIONS(1910), [anon_sym_constexpr] = ACTIONS(1910), [anon_sym_signed] = ACTIONS(1910), [anon_sym_unsigned] = ACTIONS(1910), [anon_sym_long] = ACTIONS(1910), [anon_sym_short] = ACTIONS(1910), [sym_primitive_type] = ACTIONS(1910), [anon_sym_enum] = ACTIONS(1910), [anon_sym_class] = ACTIONS(1910), [anon_sym_struct] = ACTIONS(1910), [anon_sym_union] = ACTIONS(1910), [anon_sym_if] = ACTIONS(1910), [anon_sym_else] = ACTIONS(1910), [anon_sym_switch] = ACTIONS(1910), [anon_sym_case] = ACTIONS(1910), [anon_sym_default] = ACTIONS(1910), [anon_sym_while] = ACTIONS(1910), [anon_sym_do] = ACTIONS(1910), [anon_sym_for] = ACTIONS(1910), [anon_sym_return] = ACTIONS(1910), [anon_sym_break] = ACTIONS(1910), [anon_sym_continue] = ACTIONS(1910), [anon_sym_goto] = ACTIONS(1910), [anon_sym_DASH_DASH] = ACTIONS(1912), [anon_sym_PLUS_PLUS] = ACTIONS(1912), [anon_sym_sizeof] = ACTIONS(1910), [sym_number_literal] = ACTIONS(1912), [anon_sym_L_SQUOTE] = ACTIONS(1912), [anon_sym_u_SQUOTE] = ACTIONS(1912), [anon_sym_U_SQUOTE] = ACTIONS(1912), [anon_sym_u8_SQUOTE] = ACTIONS(1912), [anon_sym_SQUOTE] = ACTIONS(1912), [anon_sym_L_DQUOTE] = ACTIONS(1912), [anon_sym_u_DQUOTE] = ACTIONS(1912), [anon_sym_U_DQUOTE] = ACTIONS(1912), [anon_sym_u8_DQUOTE] = ACTIONS(1912), [anon_sym_DQUOTE] = ACTIONS(1912), [sym_true] = ACTIONS(1910), [sym_false] = ACTIONS(1910), [sym_null] = ACTIONS(1910), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1910), [anon_sym_virtual] = ACTIONS(1910), [anon_sym_explicit] = ACTIONS(1910), [sym_auto] = ACTIONS(1910), [anon_sym_typename] = ACTIONS(1910), [anon_sym_template] = ACTIONS(1910), [anon_sym_operator] = ACTIONS(1910), [anon_sym_delete] = ACTIONS(1910), [anon_sym_throw] = ACTIONS(1910), [anon_sym_namespace] = ACTIONS(1910), [anon_sym_using] = ACTIONS(1910), [anon_sym_static_assert] = ACTIONS(1910), [anon_sym_co_return] = ACTIONS(1910), [anon_sym_co_yield] = ACTIONS(1910), [anon_sym_try] = ACTIONS(1910), [anon_sym_co_await] = ACTIONS(1910), [anon_sym_new] = ACTIONS(1910), [sym_this] = ACTIONS(1910), [sym_nullptr] = ACTIONS(1910), [sym_raw_string_literal] = ACTIONS(1912), }, [485] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [486] = { [sym_identifier] = ACTIONS(1880), [aux_sym_preproc_include_token1] = ACTIONS(1880), [aux_sym_preproc_def_token1] = ACTIONS(1880), [aux_sym_preproc_if_token1] = ACTIONS(1880), [aux_sym_preproc_if_token2] = ACTIONS(1880), [aux_sym_preproc_ifdef_token1] = ACTIONS(1880), [aux_sym_preproc_ifdef_token2] = ACTIONS(1880), [sym_preproc_directive] = ACTIONS(1880), [anon_sym_LPAREN2] = ACTIONS(1882), [anon_sym_BANG] = ACTIONS(1882), [anon_sym_TILDE] = ACTIONS(1882), [anon_sym_DASH] = ACTIONS(1880), [anon_sym_PLUS] = ACTIONS(1880), [anon_sym_STAR] = ACTIONS(1882), [anon_sym_AMP_AMP] = ACTIONS(1882), [anon_sym_AMP] = ACTIONS(1880), [anon_sym_SEMI] = ACTIONS(1882), [anon_sym_typedef] = ACTIONS(1880), [anon_sym_extern] = ACTIONS(1880), [anon_sym___attribute__] = ACTIONS(1880), [anon_sym_COLON_COLON] = ACTIONS(1882), [anon_sym_LBRACK_LBRACK] = ACTIONS(1882), [anon_sym___declspec] = ACTIONS(1880), [anon_sym___based] = ACTIONS(1880), [anon_sym___cdecl] = ACTIONS(1880), [anon_sym___clrcall] = ACTIONS(1880), [anon_sym___stdcall] = ACTIONS(1880), [anon_sym___fastcall] = ACTIONS(1880), [anon_sym___thiscall] = ACTIONS(1880), [anon_sym___vectorcall] = ACTIONS(1880), [anon_sym_LBRACE] = ACTIONS(1882), [anon_sym_LBRACK] = ACTIONS(1880), [anon_sym_static] = ACTIONS(1880), [anon_sym_register] = ACTIONS(1880), [anon_sym_inline] = ACTIONS(1880), [anon_sym_thread_local] = ACTIONS(1880), [anon_sym_const] = ACTIONS(1880), [anon_sym_volatile] = ACTIONS(1880), [anon_sym_restrict] = ACTIONS(1880), [anon_sym__Atomic] = ACTIONS(1880), [anon_sym_mutable] = ACTIONS(1880), [anon_sym_constexpr] = ACTIONS(1880), [anon_sym_signed] = ACTIONS(1880), [anon_sym_unsigned] = ACTIONS(1880), [anon_sym_long] = ACTIONS(1880), [anon_sym_short] = ACTIONS(1880), [sym_primitive_type] = ACTIONS(1880), [anon_sym_enum] = ACTIONS(1880), [anon_sym_class] = ACTIONS(1880), [anon_sym_struct] = ACTIONS(1880), [anon_sym_union] = ACTIONS(1880), [anon_sym_if] = ACTIONS(1880), [anon_sym_else] = ACTIONS(1880), [anon_sym_switch] = ACTIONS(1880), [anon_sym_case] = ACTIONS(1880), [anon_sym_default] = ACTIONS(1880), [anon_sym_while] = ACTIONS(1880), [anon_sym_do] = ACTIONS(1880), [anon_sym_for] = ACTIONS(1880), [anon_sym_return] = ACTIONS(1880), [anon_sym_break] = ACTIONS(1880), [anon_sym_continue] = ACTIONS(1880), [anon_sym_goto] = ACTIONS(1880), [anon_sym_DASH_DASH] = ACTIONS(1882), [anon_sym_PLUS_PLUS] = ACTIONS(1882), [anon_sym_sizeof] = ACTIONS(1880), [sym_number_literal] = ACTIONS(1882), [anon_sym_L_SQUOTE] = ACTIONS(1882), [anon_sym_u_SQUOTE] = ACTIONS(1882), [anon_sym_U_SQUOTE] = ACTIONS(1882), [anon_sym_u8_SQUOTE] = ACTIONS(1882), [anon_sym_SQUOTE] = ACTIONS(1882), [anon_sym_L_DQUOTE] = ACTIONS(1882), [anon_sym_u_DQUOTE] = ACTIONS(1882), [anon_sym_U_DQUOTE] = ACTIONS(1882), [anon_sym_u8_DQUOTE] = ACTIONS(1882), [anon_sym_DQUOTE] = ACTIONS(1882), [sym_true] = ACTIONS(1880), [sym_false] = ACTIONS(1880), [sym_null] = ACTIONS(1880), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1880), [anon_sym_virtual] = ACTIONS(1880), [anon_sym_explicit] = ACTIONS(1880), [sym_auto] = ACTIONS(1880), [anon_sym_typename] = ACTIONS(1880), [anon_sym_template] = ACTIONS(1880), [anon_sym_operator] = ACTIONS(1880), [anon_sym_delete] = ACTIONS(1880), [anon_sym_throw] = ACTIONS(1880), [anon_sym_namespace] = ACTIONS(1880), [anon_sym_using] = ACTIONS(1880), [anon_sym_static_assert] = ACTIONS(1880), [anon_sym_co_return] = ACTIONS(1880), [anon_sym_co_yield] = ACTIONS(1880), [anon_sym_try] = ACTIONS(1880), [anon_sym_co_await] = ACTIONS(1880), [anon_sym_new] = ACTIONS(1880), [sym_this] = ACTIONS(1880), [sym_nullptr] = ACTIONS(1880), [sym_raw_string_literal] = ACTIONS(1882), }, [487] = { [sym_identifier] = ACTIONS(1876), [aux_sym_preproc_include_token1] = ACTIONS(1876), [aux_sym_preproc_def_token1] = ACTIONS(1876), [aux_sym_preproc_if_token1] = ACTIONS(1876), [aux_sym_preproc_if_token2] = ACTIONS(1876), [aux_sym_preproc_ifdef_token1] = ACTIONS(1876), [aux_sym_preproc_ifdef_token2] = ACTIONS(1876), [sym_preproc_directive] = ACTIONS(1876), [anon_sym_LPAREN2] = ACTIONS(1878), [anon_sym_BANG] = ACTIONS(1878), [anon_sym_TILDE] = ACTIONS(1878), [anon_sym_DASH] = ACTIONS(1876), [anon_sym_PLUS] = ACTIONS(1876), [anon_sym_STAR] = ACTIONS(1878), [anon_sym_AMP_AMP] = ACTIONS(1878), [anon_sym_AMP] = ACTIONS(1876), [anon_sym_SEMI] = ACTIONS(1878), [anon_sym_typedef] = ACTIONS(1876), [anon_sym_extern] = ACTIONS(1876), [anon_sym___attribute__] = ACTIONS(1876), [anon_sym_COLON_COLON] = ACTIONS(1878), [anon_sym_LBRACK_LBRACK] = ACTIONS(1878), [anon_sym___declspec] = ACTIONS(1876), [anon_sym___based] = ACTIONS(1876), [anon_sym___cdecl] = ACTIONS(1876), [anon_sym___clrcall] = ACTIONS(1876), [anon_sym___stdcall] = ACTIONS(1876), [anon_sym___fastcall] = ACTIONS(1876), [anon_sym___thiscall] = ACTIONS(1876), [anon_sym___vectorcall] = ACTIONS(1876), [anon_sym_LBRACE] = ACTIONS(1878), [anon_sym_LBRACK] = ACTIONS(1876), [anon_sym_static] = ACTIONS(1876), [anon_sym_register] = ACTIONS(1876), [anon_sym_inline] = ACTIONS(1876), [anon_sym_thread_local] = ACTIONS(1876), [anon_sym_const] = ACTIONS(1876), [anon_sym_volatile] = ACTIONS(1876), [anon_sym_restrict] = ACTIONS(1876), [anon_sym__Atomic] = ACTIONS(1876), [anon_sym_mutable] = ACTIONS(1876), [anon_sym_constexpr] = ACTIONS(1876), [anon_sym_signed] = ACTIONS(1876), [anon_sym_unsigned] = ACTIONS(1876), [anon_sym_long] = ACTIONS(1876), [anon_sym_short] = ACTIONS(1876), [sym_primitive_type] = ACTIONS(1876), [anon_sym_enum] = ACTIONS(1876), [anon_sym_class] = ACTIONS(1876), [anon_sym_struct] = ACTIONS(1876), [anon_sym_union] = ACTIONS(1876), [anon_sym_if] = ACTIONS(1876), [anon_sym_else] = ACTIONS(1876), [anon_sym_switch] = ACTIONS(1876), [anon_sym_case] = ACTIONS(1876), [anon_sym_default] = ACTIONS(1876), [anon_sym_while] = ACTIONS(1876), [anon_sym_do] = ACTIONS(1876), [anon_sym_for] = ACTIONS(1876), [anon_sym_return] = ACTIONS(1876), [anon_sym_break] = ACTIONS(1876), [anon_sym_continue] = ACTIONS(1876), [anon_sym_goto] = ACTIONS(1876), [anon_sym_DASH_DASH] = ACTIONS(1878), [anon_sym_PLUS_PLUS] = ACTIONS(1878), [anon_sym_sizeof] = ACTIONS(1876), [sym_number_literal] = ACTIONS(1878), [anon_sym_L_SQUOTE] = ACTIONS(1878), [anon_sym_u_SQUOTE] = ACTIONS(1878), [anon_sym_U_SQUOTE] = ACTIONS(1878), [anon_sym_u8_SQUOTE] = ACTIONS(1878), [anon_sym_SQUOTE] = ACTIONS(1878), [anon_sym_L_DQUOTE] = ACTIONS(1878), [anon_sym_u_DQUOTE] = ACTIONS(1878), [anon_sym_U_DQUOTE] = ACTIONS(1878), [anon_sym_u8_DQUOTE] = ACTIONS(1878), [anon_sym_DQUOTE] = ACTIONS(1878), [sym_true] = ACTIONS(1876), [sym_false] = ACTIONS(1876), [sym_null] = ACTIONS(1876), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1876), [anon_sym_virtual] = ACTIONS(1876), [anon_sym_explicit] = ACTIONS(1876), [sym_auto] = ACTIONS(1876), [anon_sym_typename] = ACTIONS(1876), [anon_sym_template] = ACTIONS(1876), [anon_sym_operator] = ACTIONS(1876), [anon_sym_delete] = ACTIONS(1876), [anon_sym_throw] = ACTIONS(1876), [anon_sym_namespace] = ACTIONS(1876), [anon_sym_using] = ACTIONS(1876), [anon_sym_static_assert] = ACTIONS(1876), [anon_sym_co_return] = ACTIONS(1876), [anon_sym_co_yield] = ACTIONS(1876), [anon_sym_try] = ACTIONS(1876), [anon_sym_co_await] = ACTIONS(1876), [anon_sym_new] = ACTIONS(1876), [sym_this] = ACTIONS(1876), [sym_nullptr] = ACTIONS(1876), [sym_raw_string_literal] = ACTIONS(1878), }, [488] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [489] = { [sym_identifier] = ACTIONS(1872), [aux_sym_preproc_include_token1] = ACTIONS(1872), [aux_sym_preproc_def_token1] = ACTIONS(1872), [aux_sym_preproc_if_token1] = ACTIONS(1872), [aux_sym_preproc_if_token2] = ACTIONS(1872), [aux_sym_preproc_ifdef_token1] = ACTIONS(1872), [aux_sym_preproc_ifdef_token2] = ACTIONS(1872), [sym_preproc_directive] = ACTIONS(1872), [anon_sym_LPAREN2] = ACTIONS(1874), [anon_sym_BANG] = ACTIONS(1874), [anon_sym_TILDE] = ACTIONS(1874), [anon_sym_DASH] = ACTIONS(1872), [anon_sym_PLUS] = ACTIONS(1872), [anon_sym_STAR] = ACTIONS(1874), [anon_sym_AMP_AMP] = ACTIONS(1874), [anon_sym_AMP] = ACTIONS(1872), [anon_sym_SEMI] = ACTIONS(1874), [anon_sym_typedef] = ACTIONS(1872), [anon_sym_extern] = ACTIONS(1872), [anon_sym___attribute__] = ACTIONS(1872), [anon_sym_COLON_COLON] = ACTIONS(1874), [anon_sym_LBRACK_LBRACK] = ACTIONS(1874), [anon_sym___declspec] = ACTIONS(1872), [anon_sym___based] = ACTIONS(1872), [anon_sym___cdecl] = ACTIONS(1872), [anon_sym___clrcall] = ACTIONS(1872), [anon_sym___stdcall] = ACTIONS(1872), [anon_sym___fastcall] = ACTIONS(1872), [anon_sym___thiscall] = ACTIONS(1872), [anon_sym___vectorcall] = ACTIONS(1872), [anon_sym_LBRACE] = ACTIONS(1874), [anon_sym_LBRACK] = ACTIONS(1872), [anon_sym_static] = ACTIONS(1872), [anon_sym_register] = ACTIONS(1872), [anon_sym_inline] = ACTIONS(1872), [anon_sym_thread_local] = ACTIONS(1872), [anon_sym_const] = ACTIONS(1872), [anon_sym_volatile] = ACTIONS(1872), [anon_sym_restrict] = ACTIONS(1872), [anon_sym__Atomic] = ACTIONS(1872), [anon_sym_mutable] = ACTIONS(1872), [anon_sym_constexpr] = ACTIONS(1872), [anon_sym_signed] = ACTIONS(1872), [anon_sym_unsigned] = ACTIONS(1872), [anon_sym_long] = ACTIONS(1872), [anon_sym_short] = ACTIONS(1872), [sym_primitive_type] = ACTIONS(1872), [anon_sym_enum] = ACTIONS(1872), [anon_sym_class] = ACTIONS(1872), [anon_sym_struct] = ACTIONS(1872), [anon_sym_union] = ACTIONS(1872), [anon_sym_if] = ACTIONS(1872), [anon_sym_else] = ACTIONS(1872), [anon_sym_switch] = ACTIONS(1872), [anon_sym_case] = ACTIONS(1872), [anon_sym_default] = ACTIONS(1872), [anon_sym_while] = ACTIONS(1872), [anon_sym_do] = ACTIONS(1872), [anon_sym_for] = ACTIONS(1872), [anon_sym_return] = ACTIONS(1872), [anon_sym_break] = ACTIONS(1872), [anon_sym_continue] = ACTIONS(1872), [anon_sym_goto] = ACTIONS(1872), [anon_sym_DASH_DASH] = ACTIONS(1874), [anon_sym_PLUS_PLUS] = ACTIONS(1874), [anon_sym_sizeof] = ACTIONS(1872), [sym_number_literal] = ACTIONS(1874), [anon_sym_L_SQUOTE] = ACTIONS(1874), [anon_sym_u_SQUOTE] = ACTIONS(1874), [anon_sym_U_SQUOTE] = ACTIONS(1874), [anon_sym_u8_SQUOTE] = ACTIONS(1874), [anon_sym_SQUOTE] = ACTIONS(1874), [anon_sym_L_DQUOTE] = ACTIONS(1874), [anon_sym_u_DQUOTE] = ACTIONS(1874), [anon_sym_U_DQUOTE] = ACTIONS(1874), [anon_sym_u8_DQUOTE] = ACTIONS(1874), [anon_sym_DQUOTE] = ACTIONS(1874), [sym_true] = ACTIONS(1872), [sym_false] = ACTIONS(1872), [sym_null] = ACTIONS(1872), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1872), [anon_sym_virtual] = ACTIONS(1872), [anon_sym_explicit] = ACTIONS(1872), [sym_auto] = ACTIONS(1872), [anon_sym_typename] = ACTIONS(1872), [anon_sym_template] = ACTIONS(1872), [anon_sym_operator] = ACTIONS(1872), [anon_sym_delete] = ACTIONS(1872), [anon_sym_throw] = ACTIONS(1872), [anon_sym_namespace] = ACTIONS(1872), [anon_sym_using] = ACTIONS(1872), [anon_sym_static_assert] = ACTIONS(1872), [anon_sym_co_return] = ACTIONS(1872), [anon_sym_co_yield] = ACTIONS(1872), [anon_sym_try] = ACTIONS(1872), [anon_sym_co_await] = ACTIONS(1872), [anon_sym_new] = ACTIONS(1872), [sym_this] = ACTIONS(1872), [sym_nullptr] = ACTIONS(1872), [sym_raw_string_literal] = ACTIONS(1874), }, [490] = { [sym_identifier] = ACTIONS(1868), [aux_sym_preproc_include_token1] = ACTIONS(1868), [aux_sym_preproc_def_token1] = ACTIONS(1868), [aux_sym_preproc_if_token1] = ACTIONS(1868), [aux_sym_preproc_if_token2] = ACTIONS(1868), [aux_sym_preproc_ifdef_token1] = ACTIONS(1868), [aux_sym_preproc_ifdef_token2] = ACTIONS(1868), [sym_preproc_directive] = ACTIONS(1868), [anon_sym_LPAREN2] = ACTIONS(1870), [anon_sym_BANG] = ACTIONS(1870), [anon_sym_TILDE] = ACTIONS(1870), [anon_sym_DASH] = ACTIONS(1868), [anon_sym_PLUS] = ACTIONS(1868), [anon_sym_STAR] = ACTIONS(1870), [anon_sym_AMP_AMP] = ACTIONS(1870), [anon_sym_AMP] = ACTIONS(1868), [anon_sym_SEMI] = ACTIONS(1870), [anon_sym_typedef] = ACTIONS(1868), [anon_sym_extern] = ACTIONS(1868), [anon_sym___attribute__] = ACTIONS(1868), [anon_sym_COLON_COLON] = ACTIONS(1870), [anon_sym_LBRACK_LBRACK] = ACTIONS(1870), [anon_sym___declspec] = ACTIONS(1868), [anon_sym___based] = ACTIONS(1868), [anon_sym___cdecl] = ACTIONS(1868), [anon_sym___clrcall] = ACTIONS(1868), [anon_sym___stdcall] = ACTIONS(1868), [anon_sym___fastcall] = ACTIONS(1868), [anon_sym___thiscall] = ACTIONS(1868), [anon_sym___vectorcall] = ACTIONS(1868), [anon_sym_LBRACE] = ACTIONS(1870), [anon_sym_LBRACK] = ACTIONS(1868), [anon_sym_static] = ACTIONS(1868), [anon_sym_register] = ACTIONS(1868), [anon_sym_inline] = ACTIONS(1868), [anon_sym_thread_local] = ACTIONS(1868), [anon_sym_const] = ACTIONS(1868), [anon_sym_volatile] = ACTIONS(1868), [anon_sym_restrict] = ACTIONS(1868), [anon_sym__Atomic] = ACTIONS(1868), [anon_sym_mutable] = ACTIONS(1868), [anon_sym_constexpr] = ACTIONS(1868), [anon_sym_signed] = ACTIONS(1868), [anon_sym_unsigned] = ACTIONS(1868), [anon_sym_long] = ACTIONS(1868), [anon_sym_short] = ACTIONS(1868), [sym_primitive_type] = ACTIONS(1868), [anon_sym_enum] = ACTIONS(1868), [anon_sym_class] = ACTIONS(1868), [anon_sym_struct] = ACTIONS(1868), [anon_sym_union] = ACTIONS(1868), [anon_sym_if] = ACTIONS(1868), [anon_sym_else] = ACTIONS(1868), [anon_sym_switch] = ACTIONS(1868), [anon_sym_case] = ACTIONS(1868), [anon_sym_default] = ACTIONS(1868), [anon_sym_while] = ACTIONS(1868), [anon_sym_do] = ACTIONS(1868), [anon_sym_for] = ACTIONS(1868), [anon_sym_return] = ACTIONS(1868), [anon_sym_break] = ACTIONS(1868), [anon_sym_continue] = ACTIONS(1868), [anon_sym_goto] = ACTIONS(1868), [anon_sym_DASH_DASH] = ACTIONS(1870), [anon_sym_PLUS_PLUS] = ACTIONS(1870), [anon_sym_sizeof] = ACTIONS(1868), [sym_number_literal] = ACTIONS(1870), [anon_sym_L_SQUOTE] = ACTIONS(1870), [anon_sym_u_SQUOTE] = ACTIONS(1870), [anon_sym_U_SQUOTE] = ACTIONS(1870), [anon_sym_u8_SQUOTE] = ACTIONS(1870), [anon_sym_SQUOTE] = ACTIONS(1870), [anon_sym_L_DQUOTE] = ACTIONS(1870), [anon_sym_u_DQUOTE] = ACTIONS(1870), [anon_sym_U_DQUOTE] = ACTIONS(1870), [anon_sym_u8_DQUOTE] = ACTIONS(1870), [anon_sym_DQUOTE] = ACTIONS(1870), [sym_true] = ACTIONS(1868), [sym_false] = ACTIONS(1868), [sym_null] = ACTIONS(1868), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1868), [anon_sym_virtual] = ACTIONS(1868), [anon_sym_explicit] = ACTIONS(1868), [sym_auto] = ACTIONS(1868), [anon_sym_typename] = ACTIONS(1868), [anon_sym_template] = ACTIONS(1868), [anon_sym_operator] = ACTIONS(1868), [anon_sym_delete] = ACTIONS(1868), [anon_sym_throw] = ACTIONS(1868), [anon_sym_namespace] = ACTIONS(1868), [anon_sym_using] = ACTIONS(1868), [anon_sym_static_assert] = ACTIONS(1868), [anon_sym_co_return] = ACTIONS(1868), [anon_sym_co_yield] = ACTIONS(1868), [anon_sym_try] = ACTIONS(1868), [anon_sym_co_await] = ACTIONS(1868), [anon_sym_new] = ACTIONS(1868), [sym_this] = ACTIONS(1868), [sym_nullptr] = ACTIONS(1868), [sym_raw_string_literal] = ACTIONS(1870), }, [491] = { [sym_identifier] = ACTIONS(1864), [aux_sym_preproc_include_token1] = ACTIONS(1864), [aux_sym_preproc_def_token1] = ACTIONS(1864), [aux_sym_preproc_if_token1] = ACTIONS(1864), [aux_sym_preproc_if_token2] = ACTIONS(1864), [aux_sym_preproc_ifdef_token1] = ACTIONS(1864), [aux_sym_preproc_ifdef_token2] = ACTIONS(1864), [sym_preproc_directive] = ACTIONS(1864), [anon_sym_LPAREN2] = ACTIONS(1866), [anon_sym_BANG] = ACTIONS(1866), [anon_sym_TILDE] = ACTIONS(1866), [anon_sym_DASH] = ACTIONS(1864), [anon_sym_PLUS] = ACTIONS(1864), [anon_sym_STAR] = ACTIONS(1866), [anon_sym_AMP_AMP] = ACTIONS(1866), [anon_sym_AMP] = ACTIONS(1864), [anon_sym_SEMI] = ACTIONS(1866), [anon_sym_typedef] = ACTIONS(1864), [anon_sym_extern] = ACTIONS(1864), [anon_sym___attribute__] = ACTIONS(1864), [anon_sym_COLON_COLON] = ACTIONS(1866), [anon_sym_LBRACK_LBRACK] = ACTIONS(1866), [anon_sym___declspec] = ACTIONS(1864), [anon_sym___based] = ACTIONS(1864), [anon_sym___cdecl] = ACTIONS(1864), [anon_sym___clrcall] = ACTIONS(1864), [anon_sym___stdcall] = ACTIONS(1864), [anon_sym___fastcall] = ACTIONS(1864), [anon_sym___thiscall] = ACTIONS(1864), [anon_sym___vectorcall] = ACTIONS(1864), [anon_sym_LBRACE] = ACTIONS(1866), [anon_sym_LBRACK] = ACTIONS(1864), [anon_sym_static] = ACTIONS(1864), [anon_sym_register] = ACTIONS(1864), [anon_sym_inline] = ACTIONS(1864), [anon_sym_thread_local] = ACTIONS(1864), [anon_sym_const] = ACTIONS(1864), [anon_sym_volatile] = ACTIONS(1864), [anon_sym_restrict] = ACTIONS(1864), [anon_sym__Atomic] = ACTIONS(1864), [anon_sym_mutable] = ACTIONS(1864), [anon_sym_constexpr] = ACTIONS(1864), [anon_sym_signed] = ACTIONS(1864), [anon_sym_unsigned] = ACTIONS(1864), [anon_sym_long] = ACTIONS(1864), [anon_sym_short] = ACTIONS(1864), [sym_primitive_type] = ACTIONS(1864), [anon_sym_enum] = ACTIONS(1864), [anon_sym_class] = ACTIONS(1864), [anon_sym_struct] = ACTIONS(1864), [anon_sym_union] = ACTIONS(1864), [anon_sym_if] = ACTIONS(1864), [anon_sym_else] = ACTIONS(1864), [anon_sym_switch] = ACTIONS(1864), [anon_sym_case] = ACTIONS(1864), [anon_sym_default] = ACTIONS(1864), [anon_sym_while] = ACTIONS(1864), [anon_sym_do] = ACTIONS(1864), [anon_sym_for] = ACTIONS(1864), [anon_sym_return] = ACTIONS(1864), [anon_sym_break] = ACTIONS(1864), [anon_sym_continue] = ACTIONS(1864), [anon_sym_goto] = ACTIONS(1864), [anon_sym_DASH_DASH] = ACTIONS(1866), [anon_sym_PLUS_PLUS] = ACTIONS(1866), [anon_sym_sizeof] = ACTIONS(1864), [sym_number_literal] = ACTIONS(1866), [anon_sym_L_SQUOTE] = ACTIONS(1866), [anon_sym_u_SQUOTE] = ACTIONS(1866), [anon_sym_U_SQUOTE] = ACTIONS(1866), [anon_sym_u8_SQUOTE] = ACTIONS(1866), [anon_sym_SQUOTE] = ACTIONS(1866), [anon_sym_L_DQUOTE] = ACTIONS(1866), [anon_sym_u_DQUOTE] = ACTIONS(1866), [anon_sym_U_DQUOTE] = ACTIONS(1866), [anon_sym_u8_DQUOTE] = ACTIONS(1866), [anon_sym_DQUOTE] = ACTIONS(1866), [sym_true] = ACTIONS(1864), [sym_false] = ACTIONS(1864), [sym_null] = ACTIONS(1864), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1864), [anon_sym_virtual] = ACTIONS(1864), [anon_sym_explicit] = ACTIONS(1864), [sym_auto] = ACTIONS(1864), [anon_sym_typename] = ACTIONS(1864), [anon_sym_template] = ACTIONS(1864), [anon_sym_operator] = ACTIONS(1864), [anon_sym_delete] = ACTIONS(1864), [anon_sym_throw] = ACTIONS(1864), [anon_sym_namespace] = ACTIONS(1864), [anon_sym_using] = ACTIONS(1864), [anon_sym_static_assert] = ACTIONS(1864), [anon_sym_co_return] = ACTIONS(1864), [anon_sym_co_yield] = ACTIONS(1864), [anon_sym_try] = ACTIONS(1864), [anon_sym_co_await] = ACTIONS(1864), [anon_sym_new] = ACTIONS(1864), [sym_this] = ACTIONS(1864), [sym_nullptr] = ACTIONS(1864), [sym_raw_string_literal] = ACTIONS(1866), }, [492] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [493] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [494] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [495] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [496] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [497] = { [sym_identifier] = ACTIONS(1884), [aux_sym_preproc_include_token1] = ACTIONS(1884), [aux_sym_preproc_def_token1] = ACTIONS(1884), [aux_sym_preproc_if_token1] = ACTIONS(1884), [aux_sym_preproc_ifdef_token1] = ACTIONS(1884), [aux_sym_preproc_ifdef_token2] = ACTIONS(1884), [sym_preproc_directive] = ACTIONS(1884), [anon_sym_LPAREN2] = ACTIONS(1886), [anon_sym_BANG] = ACTIONS(1886), [anon_sym_TILDE] = ACTIONS(1886), [anon_sym_DASH] = ACTIONS(1884), [anon_sym_PLUS] = ACTIONS(1884), [anon_sym_STAR] = ACTIONS(1886), [anon_sym_AMP_AMP] = ACTIONS(1886), [anon_sym_AMP] = ACTIONS(1884), [anon_sym_SEMI] = ACTIONS(1886), [anon_sym_typedef] = ACTIONS(1884), [anon_sym_extern] = ACTIONS(1884), [anon_sym___attribute__] = ACTIONS(1884), [anon_sym_COLON_COLON] = ACTIONS(1886), [anon_sym_LBRACK_LBRACK] = ACTIONS(1886), [anon_sym___declspec] = ACTIONS(1884), [anon_sym___based] = ACTIONS(1884), [anon_sym___cdecl] = ACTIONS(1884), [anon_sym___clrcall] = ACTIONS(1884), [anon_sym___stdcall] = ACTIONS(1884), [anon_sym___fastcall] = ACTIONS(1884), [anon_sym___thiscall] = ACTIONS(1884), [anon_sym___vectorcall] = ACTIONS(1884), [anon_sym_LBRACE] = ACTIONS(1886), [anon_sym_RBRACE] = ACTIONS(1886), [anon_sym_LBRACK] = ACTIONS(1884), [anon_sym_static] = ACTIONS(1884), [anon_sym_register] = ACTIONS(1884), [anon_sym_inline] = ACTIONS(1884), [anon_sym_thread_local] = ACTIONS(1884), [anon_sym_const] = ACTIONS(1884), [anon_sym_volatile] = ACTIONS(1884), [anon_sym_restrict] = ACTIONS(1884), [anon_sym__Atomic] = ACTIONS(1884), [anon_sym_mutable] = ACTIONS(1884), [anon_sym_constexpr] = ACTIONS(1884), [anon_sym_signed] = ACTIONS(1884), [anon_sym_unsigned] = ACTIONS(1884), [anon_sym_long] = ACTIONS(1884), [anon_sym_short] = ACTIONS(1884), [sym_primitive_type] = ACTIONS(1884), [anon_sym_enum] = ACTIONS(1884), [anon_sym_class] = ACTIONS(1884), [anon_sym_struct] = ACTIONS(1884), [anon_sym_union] = ACTIONS(1884), [anon_sym_if] = ACTIONS(1884), [anon_sym_else] = ACTIONS(1884), [anon_sym_switch] = ACTIONS(1884), [anon_sym_case] = ACTIONS(1884), [anon_sym_default] = ACTIONS(1884), [anon_sym_while] = ACTIONS(1884), [anon_sym_do] = ACTIONS(1884), [anon_sym_for] = ACTIONS(1884), [anon_sym_return] = ACTIONS(1884), [anon_sym_break] = ACTIONS(1884), [anon_sym_continue] = ACTIONS(1884), [anon_sym_goto] = ACTIONS(1884), [anon_sym_DASH_DASH] = ACTIONS(1886), [anon_sym_PLUS_PLUS] = ACTIONS(1886), [anon_sym_sizeof] = ACTIONS(1884), [sym_number_literal] = ACTIONS(1886), [anon_sym_L_SQUOTE] = ACTIONS(1886), [anon_sym_u_SQUOTE] = ACTIONS(1886), [anon_sym_U_SQUOTE] = ACTIONS(1886), [anon_sym_u8_SQUOTE] = ACTIONS(1886), [anon_sym_SQUOTE] = ACTIONS(1886), [anon_sym_L_DQUOTE] = ACTIONS(1886), [anon_sym_u_DQUOTE] = ACTIONS(1886), [anon_sym_U_DQUOTE] = ACTIONS(1886), [anon_sym_u8_DQUOTE] = ACTIONS(1886), [anon_sym_DQUOTE] = ACTIONS(1886), [sym_true] = ACTIONS(1884), [sym_false] = ACTIONS(1884), [sym_null] = ACTIONS(1884), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1884), [anon_sym_virtual] = ACTIONS(1884), [anon_sym_explicit] = ACTIONS(1884), [sym_auto] = ACTIONS(1884), [anon_sym_typename] = ACTIONS(1884), [anon_sym_template] = ACTIONS(1884), [anon_sym_operator] = ACTIONS(1884), [anon_sym_delete] = ACTIONS(1884), [anon_sym_throw] = ACTIONS(1884), [anon_sym_namespace] = ACTIONS(1884), [anon_sym_using] = ACTIONS(1884), [anon_sym_static_assert] = ACTIONS(1884), [anon_sym_co_return] = ACTIONS(1884), [anon_sym_co_yield] = ACTIONS(1884), [anon_sym_try] = ACTIONS(1884), [anon_sym_co_await] = ACTIONS(1884), [anon_sym_new] = ACTIONS(1884), [sym_this] = ACTIONS(1884), [sym_nullptr] = ACTIONS(1884), [sym_raw_string_literal] = ACTIONS(1886), }, [498] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [499] = { [ts_builtin_sym_end] = ACTIONS(1916), [sym_identifier] = ACTIONS(1914), [aux_sym_preproc_include_token1] = ACTIONS(1914), [aux_sym_preproc_def_token1] = ACTIONS(1914), [aux_sym_preproc_if_token1] = ACTIONS(1914), [aux_sym_preproc_ifdef_token1] = ACTIONS(1914), [aux_sym_preproc_ifdef_token2] = ACTIONS(1914), [sym_preproc_directive] = ACTIONS(1914), [anon_sym_LPAREN2] = ACTIONS(1916), [anon_sym_BANG] = ACTIONS(1916), [anon_sym_TILDE] = ACTIONS(1916), [anon_sym_DASH] = ACTIONS(1914), [anon_sym_PLUS] = ACTIONS(1914), [anon_sym_STAR] = ACTIONS(1916), [anon_sym_AMP_AMP] = ACTIONS(1916), [anon_sym_AMP] = ACTIONS(1914), [anon_sym_SEMI] = ACTIONS(1916), [anon_sym_typedef] = ACTIONS(1914), [anon_sym_extern] = ACTIONS(1914), [anon_sym___attribute__] = ACTIONS(1914), [anon_sym_COLON_COLON] = ACTIONS(1916), [anon_sym_LBRACK_LBRACK] = ACTIONS(1916), [anon_sym___declspec] = ACTIONS(1914), [anon_sym___based] = ACTIONS(1914), [anon_sym___cdecl] = ACTIONS(1914), [anon_sym___clrcall] = ACTIONS(1914), [anon_sym___stdcall] = ACTIONS(1914), [anon_sym___fastcall] = ACTIONS(1914), [anon_sym___thiscall] = ACTIONS(1914), [anon_sym___vectorcall] = ACTIONS(1914), [anon_sym_LBRACE] = ACTIONS(1916), [anon_sym_LBRACK] = ACTIONS(1914), [anon_sym_static] = ACTIONS(1914), [anon_sym_register] = ACTIONS(1914), [anon_sym_inline] = ACTIONS(1914), [anon_sym_thread_local] = ACTIONS(1914), [anon_sym_const] = ACTIONS(1914), [anon_sym_volatile] = ACTIONS(1914), [anon_sym_restrict] = ACTIONS(1914), [anon_sym__Atomic] = ACTIONS(1914), [anon_sym_mutable] = ACTIONS(1914), [anon_sym_constexpr] = ACTIONS(1914), [anon_sym_signed] = ACTIONS(1914), [anon_sym_unsigned] = ACTIONS(1914), [anon_sym_long] = ACTIONS(1914), [anon_sym_short] = ACTIONS(1914), [sym_primitive_type] = ACTIONS(1914), [anon_sym_enum] = ACTIONS(1914), [anon_sym_class] = ACTIONS(1914), [anon_sym_struct] = ACTIONS(1914), [anon_sym_union] = ACTIONS(1914), [anon_sym_if] = ACTIONS(1914), [anon_sym_else] = ACTIONS(1914), [anon_sym_switch] = ACTIONS(1914), [anon_sym_case] = ACTIONS(1914), [anon_sym_default] = ACTIONS(1914), [anon_sym_while] = ACTIONS(1914), [anon_sym_do] = ACTIONS(1914), [anon_sym_for] = ACTIONS(1914), [anon_sym_return] = ACTIONS(1914), [anon_sym_break] = ACTIONS(1914), [anon_sym_continue] = ACTIONS(1914), [anon_sym_goto] = ACTIONS(1914), [anon_sym_DASH_DASH] = ACTIONS(1916), [anon_sym_PLUS_PLUS] = ACTIONS(1916), [anon_sym_sizeof] = ACTIONS(1914), [sym_number_literal] = ACTIONS(1916), [anon_sym_L_SQUOTE] = ACTIONS(1916), [anon_sym_u_SQUOTE] = ACTIONS(1916), [anon_sym_U_SQUOTE] = ACTIONS(1916), [anon_sym_u8_SQUOTE] = ACTIONS(1916), [anon_sym_SQUOTE] = ACTIONS(1916), [anon_sym_L_DQUOTE] = ACTIONS(1916), [anon_sym_u_DQUOTE] = ACTIONS(1916), [anon_sym_U_DQUOTE] = ACTIONS(1916), [anon_sym_u8_DQUOTE] = ACTIONS(1916), [anon_sym_DQUOTE] = ACTIONS(1916), [sym_true] = ACTIONS(1914), [sym_false] = ACTIONS(1914), [sym_null] = ACTIONS(1914), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1914), [anon_sym_virtual] = ACTIONS(1914), [anon_sym_explicit] = ACTIONS(1914), [sym_auto] = ACTIONS(1914), [anon_sym_typename] = ACTIONS(1914), [anon_sym_template] = ACTIONS(1914), [anon_sym_operator] = ACTIONS(1914), [anon_sym_delete] = ACTIONS(1914), [anon_sym_throw] = ACTIONS(1914), [anon_sym_namespace] = ACTIONS(1914), [anon_sym_using] = ACTIONS(1914), [anon_sym_static_assert] = ACTIONS(1914), [anon_sym_co_return] = ACTIONS(1914), [anon_sym_co_yield] = ACTIONS(1914), [anon_sym_try] = ACTIONS(1914), [anon_sym_co_await] = ACTIONS(1914), [anon_sym_new] = ACTIONS(1914), [sym_this] = ACTIONS(1914), [sym_nullptr] = ACTIONS(1914), [sym_raw_string_literal] = ACTIONS(1916), }, [500] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [501] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [502] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [503] = { [sym_identifier] = ACTIONS(1926), [aux_sym_preproc_include_token1] = ACTIONS(1926), [aux_sym_preproc_def_token1] = ACTIONS(1926), [aux_sym_preproc_if_token1] = ACTIONS(1926), [aux_sym_preproc_if_token2] = ACTIONS(1926), [aux_sym_preproc_ifdef_token1] = ACTIONS(1926), [aux_sym_preproc_ifdef_token2] = ACTIONS(1926), [sym_preproc_directive] = ACTIONS(1926), [anon_sym_LPAREN2] = ACTIONS(1928), [anon_sym_BANG] = ACTIONS(1928), [anon_sym_TILDE] = ACTIONS(1928), [anon_sym_DASH] = ACTIONS(1926), [anon_sym_PLUS] = ACTIONS(1926), [anon_sym_STAR] = ACTIONS(1928), [anon_sym_AMP_AMP] = ACTIONS(1928), [anon_sym_AMP] = ACTIONS(1926), [anon_sym_SEMI] = ACTIONS(1928), [anon_sym_typedef] = ACTIONS(1926), [anon_sym_extern] = ACTIONS(1926), [anon_sym___attribute__] = ACTIONS(1926), [anon_sym_COLON_COLON] = ACTIONS(1928), [anon_sym_LBRACK_LBRACK] = ACTIONS(1928), [anon_sym___declspec] = ACTIONS(1926), [anon_sym___based] = ACTIONS(1926), [anon_sym___cdecl] = ACTIONS(1926), [anon_sym___clrcall] = ACTIONS(1926), [anon_sym___stdcall] = ACTIONS(1926), [anon_sym___fastcall] = ACTIONS(1926), [anon_sym___thiscall] = ACTIONS(1926), [anon_sym___vectorcall] = ACTIONS(1926), [anon_sym_LBRACE] = ACTIONS(1928), [anon_sym_LBRACK] = ACTIONS(1926), [anon_sym_static] = ACTIONS(1926), [anon_sym_register] = ACTIONS(1926), [anon_sym_inline] = ACTIONS(1926), [anon_sym_thread_local] = ACTIONS(1926), [anon_sym_const] = ACTIONS(1926), [anon_sym_volatile] = ACTIONS(1926), [anon_sym_restrict] = ACTIONS(1926), [anon_sym__Atomic] = ACTIONS(1926), [anon_sym_mutable] = ACTIONS(1926), [anon_sym_constexpr] = ACTIONS(1926), [anon_sym_signed] = ACTIONS(1926), [anon_sym_unsigned] = ACTIONS(1926), [anon_sym_long] = ACTIONS(1926), [anon_sym_short] = ACTIONS(1926), [sym_primitive_type] = ACTIONS(1926), [anon_sym_enum] = ACTIONS(1926), [anon_sym_class] = ACTIONS(1926), [anon_sym_struct] = ACTIONS(1926), [anon_sym_union] = ACTIONS(1926), [anon_sym_if] = ACTIONS(1926), [anon_sym_else] = ACTIONS(2228), [anon_sym_switch] = ACTIONS(1926), [anon_sym_case] = ACTIONS(1926), [anon_sym_default] = ACTIONS(1926), [anon_sym_while] = ACTIONS(1926), [anon_sym_do] = ACTIONS(1926), [anon_sym_for] = ACTIONS(1926), [anon_sym_return] = ACTIONS(1926), [anon_sym_break] = ACTIONS(1926), [anon_sym_continue] = ACTIONS(1926), [anon_sym_goto] = ACTIONS(1926), [anon_sym_DASH_DASH] = ACTIONS(1928), [anon_sym_PLUS_PLUS] = ACTIONS(1928), [anon_sym_sizeof] = ACTIONS(1926), [sym_number_literal] = ACTIONS(1928), [anon_sym_L_SQUOTE] = ACTIONS(1928), [anon_sym_u_SQUOTE] = ACTIONS(1928), [anon_sym_U_SQUOTE] = ACTIONS(1928), [anon_sym_u8_SQUOTE] = ACTIONS(1928), [anon_sym_SQUOTE] = ACTIONS(1928), [anon_sym_L_DQUOTE] = ACTIONS(1928), [anon_sym_u_DQUOTE] = ACTIONS(1928), [anon_sym_U_DQUOTE] = ACTIONS(1928), [anon_sym_u8_DQUOTE] = ACTIONS(1928), [anon_sym_DQUOTE] = ACTIONS(1928), [sym_true] = ACTIONS(1926), [sym_false] = ACTIONS(1926), [sym_null] = ACTIONS(1926), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1926), [anon_sym_virtual] = ACTIONS(1926), [anon_sym_explicit] = ACTIONS(1926), [sym_auto] = ACTIONS(1926), [anon_sym_typename] = ACTIONS(1926), [anon_sym_template] = ACTIONS(1926), [anon_sym_operator] = ACTIONS(1926), [anon_sym_delete] = ACTIONS(1926), [anon_sym_throw] = ACTIONS(1926), [anon_sym_namespace] = ACTIONS(1926), [anon_sym_using] = ACTIONS(1926), [anon_sym_static_assert] = ACTIONS(1926), [anon_sym_co_return] = ACTIONS(1926), [anon_sym_co_yield] = ACTIONS(1926), [anon_sym_try] = ACTIONS(1926), [anon_sym_co_await] = ACTIONS(1926), [anon_sym_new] = ACTIONS(1926), [sym_this] = ACTIONS(1926), [sym_nullptr] = ACTIONS(1926), [sym_raw_string_literal] = ACTIONS(1928), }, [504] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [505] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [506] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [507] = { [sym_identifier] = ACTIONS(1820), [aux_sym_preproc_include_token1] = ACTIONS(1820), [aux_sym_preproc_def_token1] = ACTIONS(1820), [aux_sym_preproc_if_token1] = ACTIONS(1820), [aux_sym_preproc_if_token2] = ACTIONS(1820), [aux_sym_preproc_ifdef_token1] = ACTIONS(1820), [aux_sym_preproc_ifdef_token2] = ACTIONS(1820), [sym_preproc_directive] = ACTIONS(1820), [anon_sym_LPAREN2] = ACTIONS(1822), [anon_sym_BANG] = ACTIONS(1822), [anon_sym_TILDE] = ACTIONS(1822), [anon_sym_DASH] = ACTIONS(1820), [anon_sym_PLUS] = ACTIONS(1820), [anon_sym_STAR] = ACTIONS(1822), [anon_sym_AMP_AMP] = ACTIONS(1822), [anon_sym_AMP] = ACTIONS(1820), [anon_sym_SEMI] = ACTIONS(1822), [anon_sym_typedef] = ACTIONS(1820), [anon_sym_extern] = ACTIONS(1820), [anon_sym___attribute__] = ACTIONS(1820), [anon_sym_COLON_COLON] = ACTIONS(1822), [anon_sym_LBRACK_LBRACK] = ACTIONS(1822), [anon_sym___declspec] = ACTIONS(1820), [anon_sym___based] = ACTIONS(1820), [anon_sym___cdecl] = ACTIONS(1820), [anon_sym___clrcall] = ACTIONS(1820), [anon_sym___stdcall] = ACTIONS(1820), [anon_sym___fastcall] = ACTIONS(1820), [anon_sym___thiscall] = ACTIONS(1820), [anon_sym___vectorcall] = ACTIONS(1820), [anon_sym_LBRACE] = ACTIONS(1822), [anon_sym_LBRACK] = ACTIONS(1820), [anon_sym_static] = ACTIONS(1820), [anon_sym_register] = ACTIONS(1820), [anon_sym_inline] = ACTIONS(1820), [anon_sym_thread_local] = ACTIONS(1820), [anon_sym_const] = ACTIONS(1820), [anon_sym_volatile] = ACTIONS(1820), [anon_sym_restrict] = ACTIONS(1820), [anon_sym__Atomic] = ACTIONS(1820), [anon_sym_mutable] = ACTIONS(1820), [anon_sym_constexpr] = ACTIONS(1820), [anon_sym_signed] = ACTIONS(1820), [anon_sym_unsigned] = ACTIONS(1820), [anon_sym_long] = ACTIONS(1820), [anon_sym_short] = ACTIONS(1820), [sym_primitive_type] = ACTIONS(1820), [anon_sym_enum] = ACTIONS(1820), [anon_sym_class] = ACTIONS(1820), [anon_sym_struct] = ACTIONS(1820), [anon_sym_union] = ACTIONS(1820), [anon_sym_if] = ACTIONS(1820), [anon_sym_else] = ACTIONS(1820), [anon_sym_switch] = ACTIONS(1820), [anon_sym_case] = ACTIONS(1820), [anon_sym_default] = ACTIONS(1820), [anon_sym_while] = ACTIONS(1820), [anon_sym_do] = ACTIONS(1820), [anon_sym_for] = ACTIONS(1820), [anon_sym_return] = ACTIONS(1820), [anon_sym_break] = ACTIONS(1820), [anon_sym_continue] = ACTIONS(1820), [anon_sym_goto] = ACTIONS(1820), [anon_sym_DASH_DASH] = ACTIONS(1822), [anon_sym_PLUS_PLUS] = ACTIONS(1822), [anon_sym_sizeof] = ACTIONS(1820), [sym_number_literal] = ACTIONS(1822), [anon_sym_L_SQUOTE] = ACTIONS(1822), [anon_sym_u_SQUOTE] = ACTIONS(1822), [anon_sym_U_SQUOTE] = ACTIONS(1822), [anon_sym_u8_SQUOTE] = ACTIONS(1822), [anon_sym_SQUOTE] = ACTIONS(1822), [anon_sym_L_DQUOTE] = ACTIONS(1822), [anon_sym_u_DQUOTE] = ACTIONS(1822), [anon_sym_U_DQUOTE] = ACTIONS(1822), [anon_sym_u8_DQUOTE] = ACTIONS(1822), [anon_sym_DQUOTE] = ACTIONS(1822), [sym_true] = ACTIONS(1820), [sym_false] = ACTIONS(1820), [sym_null] = ACTIONS(1820), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1820), [anon_sym_virtual] = ACTIONS(1820), [anon_sym_explicit] = ACTIONS(1820), [sym_auto] = ACTIONS(1820), [anon_sym_typename] = ACTIONS(1820), [anon_sym_template] = ACTIONS(1820), [anon_sym_operator] = ACTIONS(1820), [anon_sym_delete] = ACTIONS(1820), [anon_sym_throw] = ACTIONS(1820), [anon_sym_namespace] = ACTIONS(1820), [anon_sym_using] = ACTIONS(1820), [anon_sym_static_assert] = ACTIONS(1820), [anon_sym_co_return] = ACTIONS(1820), [anon_sym_co_yield] = ACTIONS(1820), [anon_sym_try] = ACTIONS(1820), [anon_sym_co_await] = ACTIONS(1820), [anon_sym_new] = ACTIONS(1820), [sym_this] = ACTIONS(1820), [sym_nullptr] = ACTIONS(1820), [sym_raw_string_literal] = ACTIONS(1822), }, [508] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [509] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [510] = { [ts_builtin_sym_end] = ACTIONS(1920), [sym_identifier] = ACTIONS(1918), [aux_sym_preproc_include_token1] = ACTIONS(1918), [aux_sym_preproc_def_token1] = ACTIONS(1918), [aux_sym_preproc_if_token1] = ACTIONS(1918), [aux_sym_preproc_ifdef_token1] = ACTIONS(1918), [aux_sym_preproc_ifdef_token2] = ACTIONS(1918), [sym_preproc_directive] = ACTIONS(1918), [anon_sym_LPAREN2] = ACTIONS(1920), [anon_sym_BANG] = ACTIONS(1920), [anon_sym_TILDE] = ACTIONS(1920), [anon_sym_DASH] = ACTIONS(1918), [anon_sym_PLUS] = ACTIONS(1918), [anon_sym_STAR] = ACTIONS(1920), [anon_sym_AMP_AMP] = ACTIONS(1920), [anon_sym_AMP] = ACTIONS(1918), [anon_sym_SEMI] = ACTIONS(1920), [anon_sym_typedef] = ACTIONS(1918), [anon_sym_extern] = ACTIONS(1918), [anon_sym___attribute__] = ACTIONS(1918), [anon_sym_COLON_COLON] = ACTIONS(1920), [anon_sym_LBRACK_LBRACK] = ACTIONS(1920), [anon_sym___declspec] = ACTIONS(1918), [anon_sym___based] = ACTIONS(1918), [anon_sym___cdecl] = ACTIONS(1918), [anon_sym___clrcall] = ACTIONS(1918), [anon_sym___stdcall] = ACTIONS(1918), [anon_sym___fastcall] = ACTIONS(1918), [anon_sym___thiscall] = ACTIONS(1918), [anon_sym___vectorcall] = ACTIONS(1918), [anon_sym_LBRACE] = ACTIONS(1920), [anon_sym_LBRACK] = ACTIONS(1918), [anon_sym_static] = ACTIONS(1918), [anon_sym_register] = ACTIONS(1918), [anon_sym_inline] = ACTIONS(1918), [anon_sym_thread_local] = ACTIONS(1918), [anon_sym_const] = ACTIONS(1918), [anon_sym_volatile] = ACTIONS(1918), [anon_sym_restrict] = ACTIONS(1918), [anon_sym__Atomic] = ACTIONS(1918), [anon_sym_mutable] = ACTIONS(1918), [anon_sym_constexpr] = ACTIONS(1918), [anon_sym_signed] = ACTIONS(1918), [anon_sym_unsigned] = ACTIONS(1918), [anon_sym_long] = ACTIONS(1918), [anon_sym_short] = ACTIONS(1918), [sym_primitive_type] = ACTIONS(1918), [anon_sym_enum] = ACTIONS(1918), [anon_sym_class] = ACTIONS(1918), [anon_sym_struct] = ACTIONS(1918), [anon_sym_union] = ACTIONS(1918), [anon_sym_if] = ACTIONS(1918), [anon_sym_else] = ACTIONS(1918), [anon_sym_switch] = ACTIONS(1918), [anon_sym_case] = ACTIONS(1918), [anon_sym_default] = ACTIONS(1918), [anon_sym_while] = ACTIONS(1918), [anon_sym_do] = ACTIONS(1918), [anon_sym_for] = ACTIONS(1918), [anon_sym_return] = ACTIONS(1918), [anon_sym_break] = ACTIONS(1918), [anon_sym_continue] = ACTIONS(1918), [anon_sym_goto] = ACTIONS(1918), [anon_sym_DASH_DASH] = ACTIONS(1920), [anon_sym_PLUS_PLUS] = ACTIONS(1920), [anon_sym_sizeof] = ACTIONS(1918), [sym_number_literal] = ACTIONS(1920), [anon_sym_L_SQUOTE] = ACTIONS(1920), [anon_sym_u_SQUOTE] = ACTIONS(1920), [anon_sym_U_SQUOTE] = ACTIONS(1920), [anon_sym_u8_SQUOTE] = ACTIONS(1920), [anon_sym_SQUOTE] = ACTIONS(1920), [anon_sym_L_DQUOTE] = ACTIONS(1920), [anon_sym_u_DQUOTE] = ACTIONS(1920), [anon_sym_U_DQUOTE] = ACTIONS(1920), [anon_sym_u8_DQUOTE] = ACTIONS(1920), [anon_sym_DQUOTE] = ACTIONS(1920), [sym_true] = ACTIONS(1918), [sym_false] = ACTIONS(1918), [sym_null] = ACTIONS(1918), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1918), [anon_sym_virtual] = ACTIONS(1918), [anon_sym_explicit] = ACTIONS(1918), [sym_auto] = ACTIONS(1918), [anon_sym_typename] = ACTIONS(1918), [anon_sym_template] = ACTIONS(1918), [anon_sym_operator] = ACTIONS(1918), [anon_sym_delete] = ACTIONS(1918), [anon_sym_throw] = ACTIONS(1918), [anon_sym_namespace] = ACTIONS(1918), [anon_sym_using] = ACTIONS(1918), [anon_sym_static_assert] = ACTIONS(1918), [anon_sym_co_return] = ACTIONS(1918), [anon_sym_co_yield] = ACTIONS(1918), [anon_sym_try] = ACTIONS(1918), [anon_sym_co_await] = ACTIONS(1918), [anon_sym_new] = ACTIONS(1918), [sym_this] = ACTIONS(1918), [sym_nullptr] = ACTIONS(1918), [sym_raw_string_literal] = ACTIONS(1920), }, [511] = { [ts_builtin_sym_end] = ACTIONS(1924), [sym_identifier] = ACTIONS(1922), [aux_sym_preproc_include_token1] = ACTIONS(1922), [aux_sym_preproc_def_token1] = ACTIONS(1922), [aux_sym_preproc_if_token1] = ACTIONS(1922), [aux_sym_preproc_ifdef_token1] = ACTIONS(1922), [aux_sym_preproc_ifdef_token2] = ACTIONS(1922), [sym_preproc_directive] = ACTIONS(1922), [anon_sym_LPAREN2] = ACTIONS(1924), [anon_sym_BANG] = ACTIONS(1924), [anon_sym_TILDE] = ACTIONS(1924), [anon_sym_DASH] = ACTIONS(1922), [anon_sym_PLUS] = ACTIONS(1922), [anon_sym_STAR] = ACTIONS(1924), [anon_sym_AMP_AMP] = ACTIONS(1924), [anon_sym_AMP] = ACTIONS(1922), [anon_sym_SEMI] = ACTIONS(1924), [anon_sym_typedef] = ACTIONS(1922), [anon_sym_extern] = ACTIONS(1922), [anon_sym___attribute__] = ACTIONS(1922), [anon_sym_COLON_COLON] = ACTIONS(1924), [anon_sym_LBRACK_LBRACK] = ACTIONS(1924), [anon_sym___declspec] = ACTIONS(1922), [anon_sym___based] = ACTIONS(1922), [anon_sym___cdecl] = ACTIONS(1922), [anon_sym___clrcall] = ACTIONS(1922), [anon_sym___stdcall] = ACTIONS(1922), [anon_sym___fastcall] = ACTIONS(1922), [anon_sym___thiscall] = ACTIONS(1922), [anon_sym___vectorcall] = ACTIONS(1922), [anon_sym_LBRACE] = ACTIONS(1924), [anon_sym_LBRACK] = ACTIONS(1922), [anon_sym_static] = ACTIONS(1922), [anon_sym_register] = ACTIONS(1922), [anon_sym_inline] = ACTIONS(1922), [anon_sym_thread_local] = ACTIONS(1922), [anon_sym_const] = ACTIONS(1922), [anon_sym_volatile] = ACTIONS(1922), [anon_sym_restrict] = ACTIONS(1922), [anon_sym__Atomic] = ACTIONS(1922), [anon_sym_mutable] = ACTIONS(1922), [anon_sym_constexpr] = ACTIONS(1922), [anon_sym_signed] = ACTIONS(1922), [anon_sym_unsigned] = ACTIONS(1922), [anon_sym_long] = ACTIONS(1922), [anon_sym_short] = ACTIONS(1922), [sym_primitive_type] = ACTIONS(1922), [anon_sym_enum] = ACTIONS(1922), [anon_sym_class] = ACTIONS(1922), [anon_sym_struct] = ACTIONS(1922), [anon_sym_union] = ACTIONS(1922), [anon_sym_if] = ACTIONS(1922), [anon_sym_else] = ACTIONS(1922), [anon_sym_switch] = ACTIONS(1922), [anon_sym_case] = ACTIONS(1922), [anon_sym_default] = ACTIONS(1922), [anon_sym_while] = ACTIONS(1922), [anon_sym_do] = ACTIONS(1922), [anon_sym_for] = ACTIONS(1922), [anon_sym_return] = ACTIONS(1922), [anon_sym_break] = ACTIONS(1922), [anon_sym_continue] = ACTIONS(1922), [anon_sym_goto] = ACTIONS(1922), [anon_sym_DASH_DASH] = ACTIONS(1924), [anon_sym_PLUS_PLUS] = ACTIONS(1924), [anon_sym_sizeof] = ACTIONS(1922), [sym_number_literal] = ACTIONS(1924), [anon_sym_L_SQUOTE] = ACTIONS(1924), [anon_sym_u_SQUOTE] = ACTIONS(1924), [anon_sym_U_SQUOTE] = ACTIONS(1924), [anon_sym_u8_SQUOTE] = ACTIONS(1924), [anon_sym_SQUOTE] = ACTIONS(1924), [anon_sym_L_DQUOTE] = ACTIONS(1924), [anon_sym_u_DQUOTE] = ACTIONS(1924), [anon_sym_U_DQUOTE] = ACTIONS(1924), [anon_sym_u8_DQUOTE] = ACTIONS(1924), [anon_sym_DQUOTE] = ACTIONS(1924), [sym_true] = ACTIONS(1922), [sym_false] = ACTIONS(1922), [sym_null] = ACTIONS(1922), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1922), [anon_sym_virtual] = ACTIONS(1922), [anon_sym_explicit] = ACTIONS(1922), [sym_auto] = ACTIONS(1922), [anon_sym_typename] = ACTIONS(1922), [anon_sym_template] = ACTIONS(1922), [anon_sym_operator] = ACTIONS(1922), [anon_sym_delete] = ACTIONS(1922), [anon_sym_throw] = ACTIONS(1922), [anon_sym_namespace] = ACTIONS(1922), [anon_sym_using] = ACTIONS(1922), [anon_sym_static_assert] = ACTIONS(1922), [anon_sym_co_return] = ACTIONS(1922), [anon_sym_co_yield] = ACTIONS(1922), [anon_sym_try] = ACTIONS(1922), [anon_sym_co_await] = ACTIONS(1922), [anon_sym_new] = ACTIONS(1922), [sym_this] = ACTIONS(1922), [sym_nullptr] = ACTIONS(1922), [sym_raw_string_literal] = ACTIONS(1924), }, [512] = { [sym_identifier] = ACTIONS(1880), [aux_sym_preproc_include_token1] = ACTIONS(1880), [aux_sym_preproc_def_token1] = ACTIONS(1880), [aux_sym_preproc_if_token1] = ACTIONS(1880), [aux_sym_preproc_ifdef_token1] = ACTIONS(1880), [aux_sym_preproc_ifdef_token2] = ACTIONS(1880), [sym_preproc_directive] = ACTIONS(1880), [anon_sym_LPAREN2] = ACTIONS(1882), [anon_sym_BANG] = ACTIONS(1882), [anon_sym_TILDE] = ACTIONS(1882), [anon_sym_DASH] = ACTIONS(1880), [anon_sym_PLUS] = ACTIONS(1880), [anon_sym_STAR] = ACTIONS(1882), [anon_sym_AMP_AMP] = ACTIONS(1882), [anon_sym_AMP] = ACTIONS(1880), [anon_sym_SEMI] = ACTIONS(1882), [anon_sym_typedef] = ACTIONS(1880), [anon_sym_extern] = ACTIONS(1880), [anon_sym___attribute__] = ACTIONS(1880), [anon_sym_COLON_COLON] = ACTIONS(1882), [anon_sym_LBRACK_LBRACK] = ACTIONS(1882), [anon_sym___declspec] = ACTIONS(1880), [anon_sym___based] = ACTIONS(1880), [anon_sym___cdecl] = ACTIONS(1880), [anon_sym___clrcall] = ACTIONS(1880), [anon_sym___stdcall] = ACTIONS(1880), [anon_sym___fastcall] = ACTIONS(1880), [anon_sym___thiscall] = ACTIONS(1880), [anon_sym___vectorcall] = ACTIONS(1880), [anon_sym_LBRACE] = ACTIONS(1882), [anon_sym_RBRACE] = ACTIONS(1882), [anon_sym_LBRACK] = ACTIONS(1880), [anon_sym_static] = ACTIONS(1880), [anon_sym_register] = ACTIONS(1880), [anon_sym_inline] = ACTIONS(1880), [anon_sym_thread_local] = ACTIONS(1880), [anon_sym_const] = ACTIONS(1880), [anon_sym_volatile] = ACTIONS(1880), [anon_sym_restrict] = ACTIONS(1880), [anon_sym__Atomic] = ACTIONS(1880), [anon_sym_mutable] = ACTIONS(1880), [anon_sym_constexpr] = ACTIONS(1880), [anon_sym_signed] = ACTIONS(1880), [anon_sym_unsigned] = ACTIONS(1880), [anon_sym_long] = ACTIONS(1880), [anon_sym_short] = ACTIONS(1880), [sym_primitive_type] = ACTIONS(1880), [anon_sym_enum] = ACTIONS(1880), [anon_sym_class] = ACTIONS(1880), [anon_sym_struct] = ACTIONS(1880), [anon_sym_union] = ACTIONS(1880), [anon_sym_if] = ACTIONS(1880), [anon_sym_else] = ACTIONS(1880), [anon_sym_switch] = ACTIONS(1880), [anon_sym_case] = ACTIONS(1880), [anon_sym_default] = ACTIONS(1880), [anon_sym_while] = ACTIONS(1880), [anon_sym_do] = ACTIONS(1880), [anon_sym_for] = ACTIONS(1880), [anon_sym_return] = ACTIONS(1880), [anon_sym_break] = ACTIONS(1880), [anon_sym_continue] = ACTIONS(1880), [anon_sym_goto] = ACTIONS(1880), [anon_sym_DASH_DASH] = ACTIONS(1882), [anon_sym_PLUS_PLUS] = ACTIONS(1882), [anon_sym_sizeof] = ACTIONS(1880), [sym_number_literal] = ACTIONS(1882), [anon_sym_L_SQUOTE] = ACTIONS(1882), [anon_sym_u_SQUOTE] = ACTIONS(1882), [anon_sym_U_SQUOTE] = ACTIONS(1882), [anon_sym_u8_SQUOTE] = ACTIONS(1882), [anon_sym_SQUOTE] = ACTIONS(1882), [anon_sym_L_DQUOTE] = ACTIONS(1882), [anon_sym_u_DQUOTE] = ACTIONS(1882), [anon_sym_U_DQUOTE] = ACTIONS(1882), [anon_sym_u8_DQUOTE] = ACTIONS(1882), [anon_sym_DQUOTE] = ACTIONS(1882), [sym_true] = ACTIONS(1880), [sym_false] = ACTIONS(1880), [sym_null] = ACTIONS(1880), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1880), [anon_sym_virtual] = ACTIONS(1880), [anon_sym_explicit] = ACTIONS(1880), [sym_auto] = ACTIONS(1880), [anon_sym_typename] = ACTIONS(1880), [anon_sym_template] = ACTIONS(1880), [anon_sym_operator] = ACTIONS(1880), [anon_sym_delete] = ACTIONS(1880), [anon_sym_throw] = ACTIONS(1880), [anon_sym_namespace] = ACTIONS(1880), [anon_sym_using] = ACTIONS(1880), [anon_sym_static_assert] = ACTIONS(1880), [anon_sym_co_return] = ACTIONS(1880), [anon_sym_co_yield] = ACTIONS(1880), [anon_sym_try] = ACTIONS(1880), [anon_sym_co_await] = ACTIONS(1880), [anon_sym_new] = ACTIONS(1880), [sym_this] = ACTIONS(1880), [sym_nullptr] = ACTIONS(1880), [sym_raw_string_literal] = ACTIONS(1882), }, [513] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [514] = { [sym_identifier] = ACTIONS(1876), [aux_sym_preproc_include_token1] = ACTIONS(1876), [aux_sym_preproc_def_token1] = ACTIONS(1876), [aux_sym_preproc_if_token1] = ACTIONS(1876), [aux_sym_preproc_ifdef_token1] = ACTIONS(1876), [aux_sym_preproc_ifdef_token2] = ACTIONS(1876), [sym_preproc_directive] = ACTIONS(1876), [anon_sym_LPAREN2] = ACTIONS(1878), [anon_sym_BANG] = ACTIONS(1878), [anon_sym_TILDE] = ACTIONS(1878), [anon_sym_DASH] = ACTIONS(1876), [anon_sym_PLUS] = ACTIONS(1876), [anon_sym_STAR] = ACTIONS(1878), [anon_sym_AMP_AMP] = ACTIONS(1878), [anon_sym_AMP] = ACTIONS(1876), [anon_sym_SEMI] = ACTIONS(1878), [anon_sym_typedef] = ACTIONS(1876), [anon_sym_extern] = ACTIONS(1876), [anon_sym___attribute__] = ACTIONS(1876), [anon_sym_COLON_COLON] = ACTIONS(1878), [anon_sym_LBRACK_LBRACK] = ACTIONS(1878), [anon_sym___declspec] = ACTIONS(1876), [anon_sym___based] = ACTIONS(1876), [anon_sym___cdecl] = ACTIONS(1876), [anon_sym___clrcall] = ACTIONS(1876), [anon_sym___stdcall] = ACTIONS(1876), [anon_sym___fastcall] = ACTIONS(1876), [anon_sym___thiscall] = ACTIONS(1876), [anon_sym___vectorcall] = ACTIONS(1876), [anon_sym_LBRACE] = ACTIONS(1878), [anon_sym_RBRACE] = ACTIONS(1878), [anon_sym_LBRACK] = ACTIONS(1876), [anon_sym_static] = ACTIONS(1876), [anon_sym_register] = ACTIONS(1876), [anon_sym_inline] = ACTIONS(1876), [anon_sym_thread_local] = ACTIONS(1876), [anon_sym_const] = ACTIONS(1876), [anon_sym_volatile] = ACTIONS(1876), [anon_sym_restrict] = ACTIONS(1876), [anon_sym__Atomic] = ACTIONS(1876), [anon_sym_mutable] = ACTIONS(1876), [anon_sym_constexpr] = ACTIONS(1876), [anon_sym_signed] = ACTIONS(1876), [anon_sym_unsigned] = ACTIONS(1876), [anon_sym_long] = ACTIONS(1876), [anon_sym_short] = ACTIONS(1876), [sym_primitive_type] = ACTIONS(1876), [anon_sym_enum] = ACTIONS(1876), [anon_sym_class] = ACTIONS(1876), [anon_sym_struct] = ACTIONS(1876), [anon_sym_union] = ACTIONS(1876), [anon_sym_if] = ACTIONS(1876), [anon_sym_else] = ACTIONS(1876), [anon_sym_switch] = ACTIONS(1876), [anon_sym_case] = ACTIONS(1876), [anon_sym_default] = ACTIONS(1876), [anon_sym_while] = ACTIONS(1876), [anon_sym_do] = ACTIONS(1876), [anon_sym_for] = ACTIONS(1876), [anon_sym_return] = ACTIONS(1876), [anon_sym_break] = ACTIONS(1876), [anon_sym_continue] = ACTIONS(1876), [anon_sym_goto] = ACTIONS(1876), [anon_sym_DASH_DASH] = ACTIONS(1878), [anon_sym_PLUS_PLUS] = ACTIONS(1878), [anon_sym_sizeof] = ACTIONS(1876), [sym_number_literal] = ACTIONS(1878), [anon_sym_L_SQUOTE] = ACTIONS(1878), [anon_sym_u_SQUOTE] = ACTIONS(1878), [anon_sym_U_SQUOTE] = ACTIONS(1878), [anon_sym_u8_SQUOTE] = ACTIONS(1878), [anon_sym_SQUOTE] = ACTIONS(1878), [anon_sym_L_DQUOTE] = ACTIONS(1878), [anon_sym_u_DQUOTE] = ACTIONS(1878), [anon_sym_U_DQUOTE] = ACTIONS(1878), [anon_sym_u8_DQUOTE] = ACTIONS(1878), [anon_sym_DQUOTE] = ACTIONS(1878), [sym_true] = ACTIONS(1876), [sym_false] = ACTIONS(1876), [sym_null] = ACTIONS(1876), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1876), [anon_sym_virtual] = ACTIONS(1876), [anon_sym_explicit] = ACTIONS(1876), [sym_auto] = ACTIONS(1876), [anon_sym_typename] = ACTIONS(1876), [anon_sym_template] = ACTIONS(1876), [anon_sym_operator] = ACTIONS(1876), [anon_sym_delete] = ACTIONS(1876), [anon_sym_throw] = ACTIONS(1876), [anon_sym_namespace] = ACTIONS(1876), [anon_sym_using] = ACTIONS(1876), [anon_sym_static_assert] = ACTIONS(1876), [anon_sym_co_return] = ACTIONS(1876), [anon_sym_co_yield] = ACTIONS(1876), [anon_sym_try] = ACTIONS(1876), [anon_sym_co_await] = ACTIONS(1876), [anon_sym_new] = ACTIONS(1876), [sym_this] = ACTIONS(1876), [sym_nullptr] = ACTIONS(1876), [sym_raw_string_literal] = ACTIONS(1878), }, [515] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [516] = { [sym_identifier] = ACTIONS(1932), [aux_sym_preproc_include_token1] = ACTIONS(1932), [aux_sym_preproc_def_token1] = ACTIONS(1932), [aux_sym_preproc_if_token1] = ACTIONS(1932), [aux_sym_preproc_if_token2] = ACTIONS(1932), [aux_sym_preproc_ifdef_token1] = ACTIONS(1932), [aux_sym_preproc_ifdef_token2] = ACTIONS(1932), [sym_preproc_directive] = ACTIONS(1932), [anon_sym_LPAREN2] = ACTIONS(1934), [anon_sym_BANG] = ACTIONS(1934), [anon_sym_TILDE] = ACTIONS(1934), [anon_sym_DASH] = ACTIONS(1932), [anon_sym_PLUS] = ACTIONS(1932), [anon_sym_STAR] = ACTIONS(1934), [anon_sym_AMP_AMP] = ACTIONS(1934), [anon_sym_AMP] = ACTIONS(1932), [anon_sym_SEMI] = ACTIONS(1934), [anon_sym_typedef] = ACTIONS(1932), [anon_sym_extern] = ACTIONS(1932), [anon_sym___attribute__] = ACTIONS(1932), [anon_sym_COLON_COLON] = ACTIONS(1934), [anon_sym_LBRACK_LBRACK] = ACTIONS(1934), [anon_sym___declspec] = ACTIONS(1932), [anon_sym___based] = ACTIONS(1932), [anon_sym___cdecl] = ACTIONS(1932), [anon_sym___clrcall] = ACTIONS(1932), [anon_sym___stdcall] = ACTIONS(1932), [anon_sym___fastcall] = ACTIONS(1932), [anon_sym___thiscall] = ACTIONS(1932), [anon_sym___vectorcall] = ACTIONS(1932), [anon_sym_LBRACE] = ACTIONS(1934), [anon_sym_LBRACK] = ACTIONS(1932), [anon_sym_static] = ACTIONS(1932), [anon_sym_register] = ACTIONS(1932), [anon_sym_inline] = ACTIONS(1932), [anon_sym_thread_local] = ACTIONS(1932), [anon_sym_const] = ACTIONS(1932), [anon_sym_volatile] = ACTIONS(1932), [anon_sym_restrict] = ACTIONS(1932), [anon_sym__Atomic] = ACTIONS(1932), [anon_sym_mutable] = ACTIONS(1932), [anon_sym_constexpr] = ACTIONS(1932), [anon_sym_signed] = ACTIONS(1932), [anon_sym_unsigned] = ACTIONS(1932), [anon_sym_long] = ACTIONS(1932), [anon_sym_short] = ACTIONS(1932), [sym_primitive_type] = ACTIONS(1932), [anon_sym_enum] = ACTIONS(1932), [anon_sym_class] = ACTIONS(1932), [anon_sym_struct] = ACTIONS(1932), [anon_sym_union] = ACTIONS(1932), [anon_sym_if] = ACTIONS(1932), [anon_sym_else] = ACTIONS(1932), [anon_sym_switch] = ACTIONS(1932), [anon_sym_case] = ACTIONS(1932), [anon_sym_default] = ACTIONS(1932), [anon_sym_while] = ACTIONS(1932), [anon_sym_do] = ACTIONS(1932), [anon_sym_for] = ACTIONS(1932), [anon_sym_return] = ACTIONS(1932), [anon_sym_break] = ACTIONS(1932), [anon_sym_continue] = ACTIONS(1932), [anon_sym_goto] = ACTIONS(1932), [anon_sym_DASH_DASH] = ACTIONS(1934), [anon_sym_PLUS_PLUS] = ACTIONS(1934), [anon_sym_sizeof] = ACTIONS(1932), [sym_number_literal] = ACTIONS(1934), [anon_sym_L_SQUOTE] = ACTIONS(1934), [anon_sym_u_SQUOTE] = ACTIONS(1934), [anon_sym_U_SQUOTE] = ACTIONS(1934), [anon_sym_u8_SQUOTE] = ACTIONS(1934), [anon_sym_SQUOTE] = ACTIONS(1934), [anon_sym_L_DQUOTE] = ACTIONS(1934), [anon_sym_u_DQUOTE] = ACTIONS(1934), [anon_sym_U_DQUOTE] = ACTIONS(1934), [anon_sym_u8_DQUOTE] = ACTIONS(1934), [anon_sym_DQUOTE] = ACTIONS(1934), [sym_true] = ACTIONS(1932), [sym_false] = ACTIONS(1932), [sym_null] = ACTIONS(1932), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1932), [anon_sym_virtual] = ACTIONS(1932), [anon_sym_explicit] = ACTIONS(1932), [sym_auto] = ACTIONS(1932), [anon_sym_typename] = ACTIONS(1932), [anon_sym_template] = ACTIONS(1932), [anon_sym_operator] = ACTIONS(1932), [anon_sym_delete] = ACTIONS(1932), [anon_sym_throw] = ACTIONS(1932), [anon_sym_namespace] = ACTIONS(1932), [anon_sym_using] = ACTIONS(1932), [anon_sym_static_assert] = ACTIONS(1932), [anon_sym_co_return] = ACTIONS(1932), [anon_sym_co_yield] = ACTIONS(1932), [anon_sym_try] = ACTIONS(1932), [anon_sym_co_await] = ACTIONS(1932), [anon_sym_new] = ACTIONS(1932), [sym_this] = ACTIONS(1932), [sym_nullptr] = ACTIONS(1932), [sym_raw_string_literal] = ACTIONS(1934), }, [517] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [518] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [519] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [520] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [521] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [522] = { [sym_identifier] = ACTIONS(1840), [aux_sym_preproc_include_token1] = ACTIONS(1840), [aux_sym_preproc_def_token1] = ACTIONS(1840), [aux_sym_preproc_if_token1] = ACTIONS(1840), [aux_sym_preproc_ifdef_token1] = ACTIONS(1840), [aux_sym_preproc_ifdef_token2] = ACTIONS(1840), [sym_preproc_directive] = ACTIONS(1840), [anon_sym_LPAREN2] = ACTIONS(1842), [anon_sym_BANG] = ACTIONS(1842), [anon_sym_TILDE] = ACTIONS(1842), [anon_sym_DASH] = ACTIONS(1840), [anon_sym_PLUS] = ACTIONS(1840), [anon_sym_STAR] = ACTIONS(1842), [anon_sym_AMP_AMP] = ACTIONS(1842), [anon_sym_AMP] = ACTIONS(1840), [anon_sym_SEMI] = ACTIONS(1842), [anon_sym_typedef] = ACTIONS(1840), [anon_sym_extern] = ACTIONS(1840), [anon_sym___attribute__] = ACTIONS(1840), [anon_sym_COLON_COLON] = ACTIONS(1842), [anon_sym_LBRACK_LBRACK] = ACTIONS(1842), [anon_sym___declspec] = ACTIONS(1840), [anon_sym___based] = ACTIONS(1840), [anon_sym___cdecl] = ACTIONS(1840), [anon_sym___clrcall] = ACTIONS(1840), [anon_sym___stdcall] = ACTIONS(1840), [anon_sym___fastcall] = ACTIONS(1840), [anon_sym___thiscall] = ACTIONS(1840), [anon_sym___vectorcall] = ACTIONS(1840), [anon_sym_LBRACE] = ACTIONS(1842), [anon_sym_RBRACE] = ACTIONS(1842), [anon_sym_LBRACK] = ACTIONS(1840), [anon_sym_static] = ACTIONS(1840), [anon_sym_register] = ACTIONS(1840), [anon_sym_inline] = ACTIONS(1840), [anon_sym_thread_local] = ACTIONS(1840), [anon_sym_const] = ACTIONS(1840), [anon_sym_volatile] = ACTIONS(1840), [anon_sym_restrict] = ACTIONS(1840), [anon_sym__Atomic] = ACTIONS(1840), [anon_sym_mutable] = ACTIONS(1840), [anon_sym_constexpr] = ACTIONS(1840), [anon_sym_signed] = ACTIONS(1840), [anon_sym_unsigned] = ACTIONS(1840), [anon_sym_long] = ACTIONS(1840), [anon_sym_short] = ACTIONS(1840), [sym_primitive_type] = ACTIONS(1840), [anon_sym_enum] = ACTIONS(1840), [anon_sym_class] = ACTIONS(1840), [anon_sym_struct] = ACTIONS(1840), [anon_sym_union] = ACTIONS(1840), [anon_sym_if] = ACTIONS(1840), [anon_sym_else] = ACTIONS(1840), [anon_sym_switch] = ACTIONS(1840), [anon_sym_case] = ACTIONS(1840), [anon_sym_default] = ACTIONS(1840), [anon_sym_while] = ACTIONS(1840), [anon_sym_do] = ACTIONS(1840), [anon_sym_for] = ACTIONS(1840), [anon_sym_return] = ACTIONS(1840), [anon_sym_break] = ACTIONS(1840), [anon_sym_continue] = ACTIONS(1840), [anon_sym_goto] = ACTIONS(1840), [anon_sym_DASH_DASH] = ACTIONS(1842), [anon_sym_PLUS_PLUS] = ACTIONS(1842), [anon_sym_sizeof] = ACTIONS(1840), [sym_number_literal] = ACTIONS(1842), [anon_sym_L_SQUOTE] = ACTIONS(1842), [anon_sym_u_SQUOTE] = ACTIONS(1842), [anon_sym_U_SQUOTE] = ACTIONS(1842), [anon_sym_u8_SQUOTE] = ACTIONS(1842), [anon_sym_SQUOTE] = ACTIONS(1842), [anon_sym_L_DQUOTE] = ACTIONS(1842), [anon_sym_u_DQUOTE] = ACTIONS(1842), [anon_sym_U_DQUOTE] = ACTIONS(1842), [anon_sym_u8_DQUOTE] = ACTIONS(1842), [anon_sym_DQUOTE] = ACTIONS(1842), [sym_true] = ACTIONS(1840), [sym_false] = ACTIONS(1840), [sym_null] = ACTIONS(1840), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1840), [anon_sym_virtual] = ACTIONS(1840), [anon_sym_explicit] = ACTIONS(1840), [sym_auto] = ACTIONS(1840), [anon_sym_typename] = ACTIONS(1840), [anon_sym_template] = ACTIONS(1840), [anon_sym_operator] = ACTIONS(1840), [anon_sym_delete] = ACTIONS(1840), [anon_sym_throw] = ACTIONS(1840), [anon_sym_namespace] = ACTIONS(1840), [anon_sym_using] = ACTIONS(1840), [anon_sym_static_assert] = ACTIONS(1840), [anon_sym_co_return] = ACTIONS(1840), [anon_sym_co_yield] = ACTIONS(1840), [anon_sym_try] = ACTIONS(1840), [anon_sym_co_await] = ACTIONS(1840), [anon_sym_new] = ACTIONS(1840), [sym_this] = ACTIONS(1840), [sym_nullptr] = ACTIONS(1840), [sym_raw_string_literal] = ACTIONS(1842), }, [523] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [524] = { [sym_identifier] = ACTIONS(1872), [aux_sym_preproc_include_token1] = ACTIONS(1872), [aux_sym_preproc_def_token1] = ACTIONS(1872), [aux_sym_preproc_if_token1] = ACTIONS(1872), [aux_sym_preproc_ifdef_token1] = ACTIONS(1872), [aux_sym_preproc_ifdef_token2] = ACTIONS(1872), [sym_preproc_directive] = ACTIONS(1872), [anon_sym_LPAREN2] = ACTIONS(1874), [anon_sym_BANG] = ACTIONS(1874), [anon_sym_TILDE] = ACTIONS(1874), [anon_sym_DASH] = ACTIONS(1872), [anon_sym_PLUS] = ACTIONS(1872), [anon_sym_STAR] = ACTIONS(1874), [anon_sym_AMP_AMP] = ACTIONS(1874), [anon_sym_AMP] = ACTIONS(1872), [anon_sym_SEMI] = ACTIONS(1874), [anon_sym_typedef] = ACTIONS(1872), [anon_sym_extern] = ACTIONS(1872), [anon_sym___attribute__] = ACTIONS(1872), [anon_sym_COLON_COLON] = ACTIONS(1874), [anon_sym_LBRACK_LBRACK] = ACTIONS(1874), [anon_sym___declspec] = ACTIONS(1872), [anon_sym___based] = ACTIONS(1872), [anon_sym___cdecl] = ACTIONS(1872), [anon_sym___clrcall] = ACTIONS(1872), [anon_sym___stdcall] = ACTIONS(1872), [anon_sym___fastcall] = ACTIONS(1872), [anon_sym___thiscall] = ACTIONS(1872), [anon_sym___vectorcall] = ACTIONS(1872), [anon_sym_LBRACE] = ACTIONS(1874), [anon_sym_RBRACE] = ACTIONS(1874), [anon_sym_LBRACK] = ACTIONS(1872), [anon_sym_static] = ACTIONS(1872), [anon_sym_register] = ACTIONS(1872), [anon_sym_inline] = ACTIONS(1872), [anon_sym_thread_local] = ACTIONS(1872), [anon_sym_const] = ACTIONS(1872), [anon_sym_volatile] = ACTIONS(1872), [anon_sym_restrict] = ACTIONS(1872), [anon_sym__Atomic] = ACTIONS(1872), [anon_sym_mutable] = ACTIONS(1872), [anon_sym_constexpr] = ACTIONS(1872), [anon_sym_signed] = ACTIONS(1872), [anon_sym_unsigned] = ACTIONS(1872), [anon_sym_long] = ACTIONS(1872), [anon_sym_short] = ACTIONS(1872), [sym_primitive_type] = ACTIONS(1872), [anon_sym_enum] = ACTIONS(1872), [anon_sym_class] = ACTIONS(1872), [anon_sym_struct] = ACTIONS(1872), [anon_sym_union] = ACTIONS(1872), [anon_sym_if] = ACTIONS(1872), [anon_sym_else] = ACTIONS(1872), [anon_sym_switch] = ACTIONS(1872), [anon_sym_case] = ACTIONS(1872), [anon_sym_default] = ACTIONS(1872), [anon_sym_while] = ACTIONS(1872), [anon_sym_do] = ACTIONS(1872), [anon_sym_for] = ACTIONS(1872), [anon_sym_return] = ACTIONS(1872), [anon_sym_break] = ACTIONS(1872), [anon_sym_continue] = ACTIONS(1872), [anon_sym_goto] = ACTIONS(1872), [anon_sym_DASH_DASH] = ACTIONS(1874), [anon_sym_PLUS_PLUS] = ACTIONS(1874), [anon_sym_sizeof] = ACTIONS(1872), [sym_number_literal] = ACTIONS(1874), [anon_sym_L_SQUOTE] = ACTIONS(1874), [anon_sym_u_SQUOTE] = ACTIONS(1874), [anon_sym_U_SQUOTE] = ACTIONS(1874), [anon_sym_u8_SQUOTE] = ACTIONS(1874), [anon_sym_SQUOTE] = ACTIONS(1874), [anon_sym_L_DQUOTE] = ACTIONS(1874), [anon_sym_u_DQUOTE] = ACTIONS(1874), [anon_sym_U_DQUOTE] = ACTIONS(1874), [anon_sym_u8_DQUOTE] = ACTIONS(1874), [anon_sym_DQUOTE] = ACTIONS(1874), [sym_true] = ACTIONS(1872), [sym_false] = ACTIONS(1872), [sym_null] = ACTIONS(1872), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1872), [anon_sym_virtual] = ACTIONS(1872), [anon_sym_explicit] = ACTIONS(1872), [sym_auto] = ACTIONS(1872), [anon_sym_typename] = ACTIONS(1872), [anon_sym_template] = ACTIONS(1872), [anon_sym_operator] = ACTIONS(1872), [anon_sym_delete] = ACTIONS(1872), [anon_sym_throw] = ACTIONS(1872), [anon_sym_namespace] = ACTIONS(1872), [anon_sym_using] = ACTIONS(1872), [anon_sym_static_assert] = ACTIONS(1872), [anon_sym_co_return] = ACTIONS(1872), [anon_sym_co_yield] = ACTIONS(1872), [anon_sym_try] = ACTIONS(1872), [anon_sym_co_await] = ACTIONS(1872), [anon_sym_new] = ACTIONS(1872), [sym_this] = ACTIONS(1872), [sym_nullptr] = ACTIONS(1872), [sym_raw_string_literal] = ACTIONS(1874), }, [525] = { [sym_identifier] = ACTIONS(1868), [aux_sym_preproc_include_token1] = ACTIONS(1868), [aux_sym_preproc_def_token1] = ACTIONS(1868), [aux_sym_preproc_if_token1] = ACTIONS(1868), [aux_sym_preproc_ifdef_token1] = ACTIONS(1868), [aux_sym_preproc_ifdef_token2] = ACTIONS(1868), [sym_preproc_directive] = ACTIONS(1868), [anon_sym_LPAREN2] = ACTIONS(1870), [anon_sym_BANG] = ACTIONS(1870), [anon_sym_TILDE] = ACTIONS(1870), [anon_sym_DASH] = ACTIONS(1868), [anon_sym_PLUS] = ACTIONS(1868), [anon_sym_STAR] = ACTIONS(1870), [anon_sym_AMP_AMP] = ACTIONS(1870), [anon_sym_AMP] = ACTIONS(1868), [anon_sym_SEMI] = ACTIONS(1870), [anon_sym_typedef] = ACTIONS(1868), [anon_sym_extern] = ACTIONS(1868), [anon_sym___attribute__] = ACTIONS(1868), [anon_sym_COLON_COLON] = ACTIONS(1870), [anon_sym_LBRACK_LBRACK] = ACTIONS(1870), [anon_sym___declspec] = ACTIONS(1868), [anon_sym___based] = ACTIONS(1868), [anon_sym___cdecl] = ACTIONS(1868), [anon_sym___clrcall] = ACTIONS(1868), [anon_sym___stdcall] = ACTIONS(1868), [anon_sym___fastcall] = ACTIONS(1868), [anon_sym___thiscall] = ACTIONS(1868), [anon_sym___vectorcall] = ACTIONS(1868), [anon_sym_LBRACE] = ACTIONS(1870), [anon_sym_RBRACE] = ACTIONS(1870), [anon_sym_LBRACK] = ACTIONS(1868), [anon_sym_static] = ACTIONS(1868), [anon_sym_register] = ACTIONS(1868), [anon_sym_inline] = ACTIONS(1868), [anon_sym_thread_local] = ACTIONS(1868), [anon_sym_const] = ACTIONS(1868), [anon_sym_volatile] = ACTIONS(1868), [anon_sym_restrict] = ACTIONS(1868), [anon_sym__Atomic] = ACTIONS(1868), [anon_sym_mutable] = ACTIONS(1868), [anon_sym_constexpr] = ACTIONS(1868), [anon_sym_signed] = ACTIONS(1868), [anon_sym_unsigned] = ACTIONS(1868), [anon_sym_long] = ACTIONS(1868), [anon_sym_short] = ACTIONS(1868), [sym_primitive_type] = ACTIONS(1868), [anon_sym_enum] = ACTIONS(1868), [anon_sym_class] = ACTIONS(1868), [anon_sym_struct] = ACTIONS(1868), [anon_sym_union] = ACTIONS(1868), [anon_sym_if] = ACTIONS(1868), [anon_sym_else] = ACTIONS(1868), [anon_sym_switch] = ACTIONS(1868), [anon_sym_case] = ACTIONS(1868), [anon_sym_default] = ACTIONS(1868), [anon_sym_while] = ACTIONS(1868), [anon_sym_do] = ACTIONS(1868), [anon_sym_for] = ACTIONS(1868), [anon_sym_return] = ACTIONS(1868), [anon_sym_break] = ACTIONS(1868), [anon_sym_continue] = ACTIONS(1868), [anon_sym_goto] = ACTIONS(1868), [anon_sym_DASH_DASH] = ACTIONS(1870), [anon_sym_PLUS_PLUS] = ACTIONS(1870), [anon_sym_sizeof] = ACTIONS(1868), [sym_number_literal] = ACTIONS(1870), [anon_sym_L_SQUOTE] = ACTIONS(1870), [anon_sym_u_SQUOTE] = ACTIONS(1870), [anon_sym_U_SQUOTE] = ACTIONS(1870), [anon_sym_u8_SQUOTE] = ACTIONS(1870), [anon_sym_SQUOTE] = ACTIONS(1870), [anon_sym_L_DQUOTE] = ACTIONS(1870), [anon_sym_u_DQUOTE] = ACTIONS(1870), [anon_sym_U_DQUOTE] = ACTIONS(1870), [anon_sym_u8_DQUOTE] = ACTIONS(1870), [anon_sym_DQUOTE] = ACTIONS(1870), [sym_true] = ACTIONS(1868), [sym_false] = ACTIONS(1868), [sym_null] = ACTIONS(1868), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1868), [anon_sym_virtual] = ACTIONS(1868), [anon_sym_explicit] = ACTIONS(1868), [sym_auto] = ACTIONS(1868), [anon_sym_typename] = ACTIONS(1868), [anon_sym_template] = ACTIONS(1868), [anon_sym_operator] = ACTIONS(1868), [anon_sym_delete] = ACTIONS(1868), [anon_sym_throw] = ACTIONS(1868), [anon_sym_namespace] = ACTIONS(1868), [anon_sym_using] = ACTIONS(1868), [anon_sym_static_assert] = ACTIONS(1868), [anon_sym_co_return] = ACTIONS(1868), [anon_sym_co_yield] = ACTIONS(1868), [anon_sym_try] = ACTIONS(1868), [anon_sym_co_await] = ACTIONS(1868), [anon_sym_new] = ACTIONS(1868), [sym_this] = ACTIONS(1868), [sym_nullptr] = ACTIONS(1868), [sym_raw_string_literal] = ACTIONS(1870), }, [526] = { [ts_builtin_sym_end] = ACTIONS(1838), [sym_identifier] = ACTIONS(1836), [aux_sym_preproc_include_token1] = ACTIONS(1836), [aux_sym_preproc_def_token1] = ACTIONS(1836), [aux_sym_preproc_if_token1] = ACTIONS(1836), [aux_sym_preproc_ifdef_token1] = ACTIONS(1836), [aux_sym_preproc_ifdef_token2] = ACTIONS(1836), [sym_preproc_directive] = ACTIONS(1836), [anon_sym_LPAREN2] = ACTIONS(1838), [anon_sym_BANG] = ACTIONS(1838), [anon_sym_TILDE] = ACTIONS(1838), [anon_sym_DASH] = ACTIONS(1836), [anon_sym_PLUS] = ACTIONS(1836), [anon_sym_STAR] = ACTIONS(1838), [anon_sym_AMP_AMP] = ACTIONS(1838), [anon_sym_AMP] = ACTIONS(1836), [anon_sym_SEMI] = ACTIONS(1838), [anon_sym_typedef] = ACTIONS(1836), [anon_sym_extern] = ACTIONS(1836), [anon_sym___attribute__] = ACTIONS(1836), [anon_sym_COLON_COLON] = ACTIONS(1838), [anon_sym_LBRACK_LBRACK] = ACTIONS(1838), [anon_sym___declspec] = ACTIONS(1836), [anon_sym___based] = ACTIONS(1836), [anon_sym___cdecl] = ACTIONS(1836), [anon_sym___clrcall] = ACTIONS(1836), [anon_sym___stdcall] = ACTIONS(1836), [anon_sym___fastcall] = ACTIONS(1836), [anon_sym___thiscall] = ACTIONS(1836), [anon_sym___vectorcall] = ACTIONS(1836), [anon_sym_LBRACE] = ACTIONS(1838), [anon_sym_LBRACK] = ACTIONS(1836), [anon_sym_static] = ACTIONS(1836), [anon_sym_register] = ACTIONS(1836), [anon_sym_inline] = ACTIONS(1836), [anon_sym_thread_local] = ACTIONS(1836), [anon_sym_const] = ACTIONS(1836), [anon_sym_volatile] = ACTIONS(1836), [anon_sym_restrict] = ACTIONS(1836), [anon_sym__Atomic] = ACTIONS(1836), [anon_sym_mutable] = ACTIONS(1836), [anon_sym_constexpr] = ACTIONS(1836), [anon_sym_signed] = ACTIONS(1836), [anon_sym_unsigned] = ACTIONS(1836), [anon_sym_long] = ACTIONS(1836), [anon_sym_short] = ACTIONS(1836), [sym_primitive_type] = ACTIONS(1836), [anon_sym_enum] = ACTIONS(1836), [anon_sym_class] = ACTIONS(1836), [anon_sym_struct] = ACTIONS(1836), [anon_sym_union] = ACTIONS(1836), [anon_sym_if] = ACTIONS(1836), [anon_sym_else] = ACTIONS(1836), [anon_sym_switch] = ACTIONS(1836), [anon_sym_case] = ACTIONS(1836), [anon_sym_default] = ACTIONS(1836), [anon_sym_while] = ACTIONS(1836), [anon_sym_do] = ACTIONS(1836), [anon_sym_for] = ACTIONS(1836), [anon_sym_return] = ACTIONS(1836), [anon_sym_break] = ACTIONS(1836), [anon_sym_continue] = ACTIONS(1836), [anon_sym_goto] = ACTIONS(1836), [anon_sym_DASH_DASH] = ACTIONS(1838), [anon_sym_PLUS_PLUS] = ACTIONS(1838), [anon_sym_sizeof] = ACTIONS(1836), [sym_number_literal] = ACTIONS(1838), [anon_sym_L_SQUOTE] = ACTIONS(1838), [anon_sym_u_SQUOTE] = ACTIONS(1838), [anon_sym_U_SQUOTE] = ACTIONS(1838), [anon_sym_u8_SQUOTE] = ACTIONS(1838), [anon_sym_SQUOTE] = ACTIONS(1838), [anon_sym_L_DQUOTE] = ACTIONS(1838), [anon_sym_u_DQUOTE] = ACTIONS(1838), [anon_sym_U_DQUOTE] = ACTIONS(1838), [anon_sym_u8_DQUOTE] = ACTIONS(1838), [anon_sym_DQUOTE] = ACTIONS(1838), [sym_true] = ACTIONS(1836), [sym_false] = ACTIONS(1836), [sym_null] = ACTIONS(1836), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1836), [anon_sym_virtual] = ACTIONS(1836), [anon_sym_explicit] = ACTIONS(1836), [sym_auto] = ACTIONS(1836), [anon_sym_typename] = ACTIONS(1836), [anon_sym_template] = ACTIONS(1836), [anon_sym_operator] = ACTIONS(1836), [anon_sym_delete] = ACTIONS(1836), [anon_sym_throw] = ACTIONS(1836), [anon_sym_namespace] = ACTIONS(1836), [anon_sym_using] = ACTIONS(1836), [anon_sym_static_assert] = ACTIONS(1836), [anon_sym_co_return] = ACTIONS(1836), [anon_sym_co_yield] = ACTIONS(1836), [anon_sym_try] = ACTIONS(1836), [anon_sym_co_await] = ACTIONS(1836), [anon_sym_new] = ACTIONS(1836), [sym_this] = ACTIONS(1836), [sym_nullptr] = ACTIONS(1836), [sym_raw_string_literal] = ACTIONS(1838), }, [527] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [528] = { [sym_identifier] = ACTIONS(1864), [aux_sym_preproc_include_token1] = ACTIONS(1864), [aux_sym_preproc_def_token1] = ACTIONS(1864), [aux_sym_preproc_if_token1] = ACTIONS(1864), [aux_sym_preproc_ifdef_token1] = ACTIONS(1864), [aux_sym_preproc_ifdef_token2] = ACTIONS(1864), [sym_preproc_directive] = ACTIONS(1864), [anon_sym_LPAREN2] = ACTIONS(1866), [anon_sym_BANG] = ACTIONS(1866), [anon_sym_TILDE] = ACTIONS(1866), [anon_sym_DASH] = ACTIONS(1864), [anon_sym_PLUS] = ACTIONS(1864), [anon_sym_STAR] = ACTIONS(1866), [anon_sym_AMP_AMP] = ACTIONS(1866), [anon_sym_AMP] = ACTIONS(1864), [anon_sym_SEMI] = ACTIONS(1866), [anon_sym_typedef] = ACTIONS(1864), [anon_sym_extern] = ACTIONS(1864), [anon_sym___attribute__] = ACTIONS(1864), [anon_sym_COLON_COLON] = ACTIONS(1866), [anon_sym_LBRACK_LBRACK] = ACTIONS(1866), [anon_sym___declspec] = ACTIONS(1864), [anon_sym___based] = ACTIONS(1864), [anon_sym___cdecl] = ACTIONS(1864), [anon_sym___clrcall] = ACTIONS(1864), [anon_sym___stdcall] = ACTIONS(1864), [anon_sym___fastcall] = ACTIONS(1864), [anon_sym___thiscall] = ACTIONS(1864), [anon_sym___vectorcall] = ACTIONS(1864), [anon_sym_LBRACE] = ACTIONS(1866), [anon_sym_RBRACE] = ACTIONS(1866), [anon_sym_LBRACK] = ACTIONS(1864), [anon_sym_static] = ACTIONS(1864), [anon_sym_register] = ACTIONS(1864), [anon_sym_inline] = ACTIONS(1864), [anon_sym_thread_local] = ACTIONS(1864), [anon_sym_const] = ACTIONS(1864), [anon_sym_volatile] = ACTIONS(1864), [anon_sym_restrict] = ACTIONS(1864), [anon_sym__Atomic] = ACTIONS(1864), [anon_sym_mutable] = ACTIONS(1864), [anon_sym_constexpr] = ACTIONS(1864), [anon_sym_signed] = ACTIONS(1864), [anon_sym_unsigned] = ACTIONS(1864), [anon_sym_long] = ACTIONS(1864), [anon_sym_short] = ACTIONS(1864), [sym_primitive_type] = ACTIONS(1864), [anon_sym_enum] = ACTIONS(1864), [anon_sym_class] = ACTIONS(1864), [anon_sym_struct] = ACTIONS(1864), [anon_sym_union] = ACTIONS(1864), [anon_sym_if] = ACTIONS(1864), [anon_sym_else] = ACTIONS(1864), [anon_sym_switch] = ACTIONS(1864), [anon_sym_case] = ACTIONS(1864), [anon_sym_default] = ACTIONS(1864), [anon_sym_while] = ACTIONS(1864), [anon_sym_do] = ACTIONS(1864), [anon_sym_for] = ACTIONS(1864), [anon_sym_return] = ACTIONS(1864), [anon_sym_break] = ACTIONS(1864), [anon_sym_continue] = ACTIONS(1864), [anon_sym_goto] = ACTIONS(1864), [anon_sym_DASH_DASH] = ACTIONS(1866), [anon_sym_PLUS_PLUS] = ACTIONS(1866), [anon_sym_sizeof] = ACTIONS(1864), [sym_number_literal] = ACTIONS(1866), [anon_sym_L_SQUOTE] = ACTIONS(1866), [anon_sym_u_SQUOTE] = ACTIONS(1866), [anon_sym_U_SQUOTE] = ACTIONS(1866), [anon_sym_u8_SQUOTE] = ACTIONS(1866), [anon_sym_SQUOTE] = ACTIONS(1866), [anon_sym_L_DQUOTE] = ACTIONS(1866), [anon_sym_u_DQUOTE] = ACTIONS(1866), [anon_sym_U_DQUOTE] = ACTIONS(1866), [anon_sym_u8_DQUOTE] = ACTIONS(1866), [anon_sym_DQUOTE] = ACTIONS(1866), [sym_true] = ACTIONS(1864), [sym_false] = ACTIONS(1864), [sym_null] = ACTIONS(1864), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1864), [anon_sym_virtual] = ACTIONS(1864), [anon_sym_explicit] = ACTIONS(1864), [sym_auto] = ACTIONS(1864), [anon_sym_typename] = ACTIONS(1864), [anon_sym_template] = ACTIONS(1864), [anon_sym_operator] = ACTIONS(1864), [anon_sym_delete] = ACTIONS(1864), [anon_sym_throw] = ACTIONS(1864), [anon_sym_namespace] = ACTIONS(1864), [anon_sym_using] = ACTIONS(1864), [anon_sym_static_assert] = ACTIONS(1864), [anon_sym_co_return] = ACTIONS(1864), [anon_sym_co_yield] = ACTIONS(1864), [anon_sym_try] = ACTIONS(1864), [anon_sym_co_await] = ACTIONS(1864), [anon_sym_new] = ACTIONS(1864), [sym_this] = ACTIONS(1864), [sym_nullptr] = ACTIONS(1864), [sym_raw_string_literal] = ACTIONS(1866), }, [529] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [530] = { [sym_identifier] = ACTIONS(1844), [aux_sym_preproc_include_token1] = ACTIONS(1844), [aux_sym_preproc_def_token1] = ACTIONS(1844), [aux_sym_preproc_if_token1] = ACTIONS(1844), [aux_sym_preproc_if_token2] = ACTIONS(1844), [aux_sym_preproc_ifdef_token1] = ACTIONS(1844), [aux_sym_preproc_ifdef_token2] = ACTIONS(1844), [sym_preproc_directive] = ACTIONS(1844), [anon_sym_LPAREN2] = ACTIONS(1846), [anon_sym_BANG] = ACTIONS(1846), [anon_sym_TILDE] = ACTIONS(1846), [anon_sym_DASH] = ACTIONS(1844), [anon_sym_PLUS] = ACTIONS(1844), [anon_sym_STAR] = ACTIONS(1846), [anon_sym_AMP_AMP] = ACTIONS(1846), [anon_sym_AMP] = ACTIONS(1844), [anon_sym_SEMI] = ACTIONS(1846), [anon_sym_typedef] = ACTIONS(1844), [anon_sym_extern] = ACTIONS(1844), [anon_sym___attribute__] = ACTIONS(1844), [anon_sym_COLON_COLON] = ACTIONS(1846), [anon_sym_LBRACK_LBRACK] = ACTIONS(1846), [anon_sym___declspec] = ACTIONS(1844), [anon_sym___based] = ACTIONS(1844), [anon_sym___cdecl] = ACTIONS(1844), [anon_sym___clrcall] = ACTIONS(1844), [anon_sym___stdcall] = ACTIONS(1844), [anon_sym___fastcall] = ACTIONS(1844), [anon_sym___thiscall] = ACTIONS(1844), [anon_sym___vectorcall] = ACTIONS(1844), [anon_sym_LBRACE] = ACTIONS(1846), [anon_sym_LBRACK] = ACTIONS(1844), [anon_sym_static] = ACTIONS(1844), [anon_sym_register] = ACTIONS(1844), [anon_sym_inline] = ACTIONS(1844), [anon_sym_thread_local] = ACTIONS(1844), [anon_sym_const] = ACTIONS(1844), [anon_sym_volatile] = ACTIONS(1844), [anon_sym_restrict] = ACTIONS(1844), [anon_sym__Atomic] = ACTIONS(1844), [anon_sym_mutable] = ACTIONS(1844), [anon_sym_constexpr] = ACTIONS(1844), [anon_sym_signed] = ACTIONS(1844), [anon_sym_unsigned] = ACTIONS(1844), [anon_sym_long] = ACTIONS(1844), [anon_sym_short] = ACTIONS(1844), [sym_primitive_type] = ACTIONS(1844), [anon_sym_enum] = ACTIONS(1844), [anon_sym_class] = ACTIONS(1844), [anon_sym_struct] = ACTIONS(1844), [anon_sym_union] = ACTIONS(1844), [anon_sym_if] = ACTIONS(1844), [anon_sym_else] = ACTIONS(1844), [anon_sym_switch] = ACTIONS(1844), [anon_sym_case] = ACTIONS(1844), [anon_sym_default] = ACTIONS(1844), [anon_sym_while] = ACTIONS(1844), [anon_sym_do] = ACTIONS(1844), [anon_sym_for] = ACTIONS(1844), [anon_sym_return] = ACTIONS(1844), [anon_sym_break] = ACTIONS(1844), [anon_sym_continue] = ACTIONS(1844), [anon_sym_goto] = ACTIONS(1844), [anon_sym_DASH_DASH] = ACTIONS(1846), [anon_sym_PLUS_PLUS] = ACTIONS(1846), [anon_sym_sizeof] = ACTIONS(1844), [sym_number_literal] = ACTIONS(1846), [anon_sym_L_SQUOTE] = ACTIONS(1846), [anon_sym_u_SQUOTE] = ACTIONS(1846), [anon_sym_U_SQUOTE] = ACTIONS(1846), [anon_sym_u8_SQUOTE] = ACTIONS(1846), [anon_sym_SQUOTE] = ACTIONS(1846), [anon_sym_L_DQUOTE] = ACTIONS(1846), [anon_sym_u_DQUOTE] = ACTIONS(1846), [anon_sym_U_DQUOTE] = ACTIONS(1846), [anon_sym_u8_DQUOTE] = ACTIONS(1846), [anon_sym_DQUOTE] = ACTIONS(1846), [sym_true] = ACTIONS(1844), [sym_false] = ACTIONS(1844), [sym_null] = ACTIONS(1844), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1844), [anon_sym_virtual] = ACTIONS(1844), [anon_sym_explicit] = ACTIONS(1844), [sym_auto] = ACTIONS(1844), [anon_sym_typename] = ACTIONS(1844), [anon_sym_template] = ACTIONS(1844), [anon_sym_operator] = ACTIONS(1844), [anon_sym_delete] = ACTIONS(1844), [anon_sym_throw] = ACTIONS(1844), [anon_sym_namespace] = ACTIONS(1844), [anon_sym_using] = ACTIONS(1844), [anon_sym_static_assert] = ACTIONS(1844), [anon_sym_co_return] = ACTIONS(1844), [anon_sym_co_yield] = ACTIONS(1844), [anon_sym_try] = ACTIONS(1844), [anon_sym_co_await] = ACTIONS(1844), [anon_sym_new] = ACTIONS(1844), [sym_this] = ACTIONS(1844), [sym_nullptr] = ACTIONS(1844), [sym_raw_string_literal] = ACTIONS(1846), }, [531] = { [sym_identifier] = ACTIONS(1844), [aux_sym_preproc_include_token1] = ACTIONS(1844), [aux_sym_preproc_def_token1] = ACTIONS(1844), [aux_sym_preproc_if_token1] = ACTIONS(1844), [aux_sym_preproc_if_token2] = ACTIONS(1844), [aux_sym_preproc_ifdef_token1] = ACTIONS(1844), [aux_sym_preproc_ifdef_token2] = ACTIONS(1844), [sym_preproc_directive] = ACTIONS(1844), [anon_sym_LPAREN2] = ACTIONS(1846), [anon_sym_BANG] = ACTIONS(1846), [anon_sym_TILDE] = ACTIONS(1846), [anon_sym_DASH] = ACTIONS(1844), [anon_sym_PLUS] = ACTIONS(1844), [anon_sym_STAR] = ACTIONS(1846), [anon_sym_AMP_AMP] = ACTIONS(1846), [anon_sym_AMP] = ACTIONS(1844), [anon_sym_SEMI] = ACTIONS(1846), [anon_sym_typedef] = ACTIONS(1844), [anon_sym_extern] = ACTIONS(1844), [anon_sym___attribute__] = ACTIONS(1844), [anon_sym_COLON_COLON] = ACTIONS(1846), [anon_sym_LBRACK_LBRACK] = ACTIONS(1846), [anon_sym___declspec] = ACTIONS(1844), [anon_sym___based] = ACTIONS(1844), [anon_sym___cdecl] = ACTIONS(1844), [anon_sym___clrcall] = ACTIONS(1844), [anon_sym___stdcall] = ACTIONS(1844), [anon_sym___fastcall] = ACTIONS(1844), [anon_sym___thiscall] = ACTIONS(1844), [anon_sym___vectorcall] = ACTIONS(1844), [anon_sym_LBRACE] = ACTIONS(1846), [anon_sym_LBRACK] = ACTIONS(1844), [anon_sym_static] = ACTIONS(1844), [anon_sym_register] = ACTIONS(1844), [anon_sym_inline] = ACTIONS(1844), [anon_sym_thread_local] = ACTIONS(1844), [anon_sym_const] = ACTIONS(1844), [anon_sym_volatile] = ACTIONS(1844), [anon_sym_restrict] = ACTIONS(1844), [anon_sym__Atomic] = ACTIONS(1844), [anon_sym_mutable] = ACTIONS(1844), [anon_sym_constexpr] = ACTIONS(1844), [anon_sym_signed] = ACTIONS(1844), [anon_sym_unsigned] = ACTIONS(1844), [anon_sym_long] = ACTIONS(1844), [anon_sym_short] = ACTIONS(1844), [sym_primitive_type] = ACTIONS(1844), [anon_sym_enum] = ACTIONS(1844), [anon_sym_class] = ACTIONS(1844), [anon_sym_struct] = ACTIONS(1844), [anon_sym_union] = ACTIONS(1844), [anon_sym_if] = ACTIONS(1844), [anon_sym_else] = ACTIONS(1844), [anon_sym_switch] = ACTIONS(1844), [anon_sym_case] = ACTIONS(1844), [anon_sym_default] = ACTIONS(1844), [anon_sym_while] = ACTIONS(1844), [anon_sym_do] = ACTIONS(1844), [anon_sym_for] = ACTIONS(1844), [anon_sym_return] = ACTIONS(1844), [anon_sym_break] = ACTIONS(1844), [anon_sym_continue] = ACTIONS(1844), [anon_sym_goto] = ACTIONS(1844), [anon_sym_DASH_DASH] = ACTIONS(1846), [anon_sym_PLUS_PLUS] = ACTIONS(1846), [anon_sym_sizeof] = ACTIONS(1844), [sym_number_literal] = ACTIONS(1846), [anon_sym_L_SQUOTE] = ACTIONS(1846), [anon_sym_u_SQUOTE] = ACTIONS(1846), [anon_sym_U_SQUOTE] = ACTIONS(1846), [anon_sym_u8_SQUOTE] = ACTIONS(1846), [anon_sym_SQUOTE] = ACTIONS(1846), [anon_sym_L_DQUOTE] = ACTIONS(1846), [anon_sym_u_DQUOTE] = ACTIONS(1846), [anon_sym_U_DQUOTE] = ACTIONS(1846), [anon_sym_u8_DQUOTE] = ACTIONS(1846), [anon_sym_DQUOTE] = ACTIONS(1846), [sym_true] = ACTIONS(1844), [sym_false] = ACTIONS(1844), [sym_null] = ACTIONS(1844), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1844), [anon_sym_virtual] = ACTIONS(1844), [anon_sym_explicit] = ACTIONS(1844), [sym_auto] = ACTIONS(1844), [anon_sym_typename] = ACTIONS(1844), [anon_sym_template] = ACTIONS(1844), [anon_sym_operator] = ACTIONS(1844), [anon_sym_delete] = ACTIONS(1844), [anon_sym_throw] = ACTIONS(1844), [anon_sym_namespace] = ACTIONS(1844), [anon_sym_using] = ACTIONS(1844), [anon_sym_static_assert] = ACTIONS(1844), [anon_sym_co_return] = ACTIONS(1844), [anon_sym_co_yield] = ACTIONS(1844), [anon_sym_try] = ACTIONS(1844), [anon_sym_co_await] = ACTIONS(1844), [anon_sym_new] = ACTIONS(1844), [sym_this] = ACTIONS(1844), [sym_nullptr] = ACTIONS(1844), [sym_raw_string_literal] = ACTIONS(1846), }, [532] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [533] = { [ts_builtin_sym_end] = ACTIONS(1984), [sym_identifier] = ACTIONS(1982), [aux_sym_preproc_include_token1] = ACTIONS(1982), [aux_sym_preproc_def_token1] = ACTIONS(1982), [aux_sym_preproc_if_token1] = ACTIONS(1982), [aux_sym_preproc_ifdef_token1] = ACTIONS(1982), [aux_sym_preproc_ifdef_token2] = ACTIONS(1982), [sym_preproc_directive] = ACTIONS(1982), [anon_sym_LPAREN2] = ACTIONS(1984), [anon_sym_BANG] = ACTIONS(1984), [anon_sym_TILDE] = ACTIONS(1984), [anon_sym_DASH] = ACTIONS(1982), [anon_sym_PLUS] = ACTIONS(1982), [anon_sym_STAR] = ACTIONS(1984), [anon_sym_AMP_AMP] = ACTIONS(1984), [anon_sym_AMP] = ACTIONS(1982), [anon_sym_SEMI] = ACTIONS(1984), [anon_sym_typedef] = ACTIONS(1982), [anon_sym_extern] = ACTIONS(1982), [anon_sym___attribute__] = ACTIONS(1982), [anon_sym_COLON_COLON] = ACTIONS(1984), [anon_sym_LBRACK_LBRACK] = ACTIONS(1984), [anon_sym___declspec] = ACTIONS(1982), [anon_sym___based] = ACTIONS(1982), [anon_sym___cdecl] = ACTIONS(1982), [anon_sym___clrcall] = ACTIONS(1982), [anon_sym___stdcall] = ACTIONS(1982), [anon_sym___fastcall] = ACTIONS(1982), [anon_sym___thiscall] = ACTIONS(1982), [anon_sym___vectorcall] = ACTIONS(1982), [anon_sym_LBRACE] = ACTIONS(1984), [anon_sym_LBRACK] = ACTIONS(1982), [anon_sym_static] = ACTIONS(1982), [anon_sym_register] = ACTIONS(1982), [anon_sym_inline] = ACTIONS(1982), [anon_sym_thread_local] = ACTIONS(1982), [anon_sym_const] = ACTIONS(1982), [anon_sym_volatile] = ACTIONS(1982), [anon_sym_restrict] = ACTIONS(1982), [anon_sym__Atomic] = ACTIONS(1982), [anon_sym_mutable] = ACTIONS(1982), [anon_sym_constexpr] = ACTIONS(1982), [anon_sym_signed] = ACTIONS(1982), [anon_sym_unsigned] = ACTIONS(1982), [anon_sym_long] = ACTIONS(1982), [anon_sym_short] = ACTIONS(1982), [sym_primitive_type] = ACTIONS(1982), [anon_sym_enum] = ACTIONS(1982), [anon_sym_class] = ACTIONS(1982), [anon_sym_struct] = ACTIONS(1982), [anon_sym_union] = ACTIONS(1982), [anon_sym_if] = ACTIONS(1982), [anon_sym_else] = ACTIONS(1982), [anon_sym_switch] = ACTIONS(1982), [anon_sym_case] = ACTIONS(1982), [anon_sym_default] = ACTIONS(1982), [anon_sym_while] = ACTIONS(1982), [anon_sym_do] = ACTIONS(1982), [anon_sym_for] = ACTIONS(1982), [anon_sym_return] = ACTIONS(1982), [anon_sym_break] = ACTIONS(1982), [anon_sym_continue] = ACTIONS(1982), [anon_sym_goto] = ACTIONS(1982), [anon_sym_DASH_DASH] = ACTIONS(1984), [anon_sym_PLUS_PLUS] = ACTIONS(1984), [anon_sym_sizeof] = ACTIONS(1982), [sym_number_literal] = ACTIONS(1984), [anon_sym_L_SQUOTE] = ACTIONS(1984), [anon_sym_u_SQUOTE] = ACTIONS(1984), [anon_sym_U_SQUOTE] = ACTIONS(1984), [anon_sym_u8_SQUOTE] = ACTIONS(1984), [anon_sym_SQUOTE] = ACTIONS(1984), [anon_sym_L_DQUOTE] = ACTIONS(1984), [anon_sym_u_DQUOTE] = ACTIONS(1984), [anon_sym_U_DQUOTE] = ACTIONS(1984), [anon_sym_u8_DQUOTE] = ACTIONS(1984), [anon_sym_DQUOTE] = ACTIONS(1984), [sym_true] = ACTIONS(1982), [sym_false] = ACTIONS(1982), [sym_null] = ACTIONS(1982), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1982), [anon_sym_virtual] = ACTIONS(1982), [anon_sym_explicit] = ACTIONS(1982), [sym_auto] = ACTIONS(1982), [anon_sym_typename] = ACTIONS(1982), [anon_sym_template] = ACTIONS(1982), [anon_sym_operator] = ACTIONS(1982), [anon_sym_delete] = ACTIONS(1982), [anon_sym_throw] = ACTIONS(1982), [anon_sym_namespace] = ACTIONS(1982), [anon_sym_using] = ACTIONS(1982), [anon_sym_static_assert] = ACTIONS(1982), [anon_sym_co_return] = ACTIONS(1982), [anon_sym_co_yield] = ACTIONS(1982), [anon_sym_try] = ACTIONS(1982), [anon_sym_co_await] = ACTIONS(1982), [anon_sym_new] = ACTIONS(1982), [sym_this] = ACTIONS(1982), [sym_nullptr] = ACTIONS(1982), [sym_raw_string_literal] = ACTIONS(1984), }, [534] = { [ts_builtin_sym_end] = ACTIONS(1988), [sym_identifier] = ACTIONS(1986), [aux_sym_preproc_include_token1] = ACTIONS(1986), [aux_sym_preproc_def_token1] = ACTIONS(1986), [aux_sym_preproc_if_token1] = ACTIONS(1986), [aux_sym_preproc_ifdef_token1] = ACTIONS(1986), [aux_sym_preproc_ifdef_token2] = ACTIONS(1986), [sym_preproc_directive] = ACTIONS(1986), [anon_sym_LPAREN2] = ACTIONS(1988), [anon_sym_BANG] = ACTIONS(1988), [anon_sym_TILDE] = ACTIONS(1988), [anon_sym_DASH] = ACTIONS(1986), [anon_sym_PLUS] = ACTIONS(1986), [anon_sym_STAR] = ACTIONS(1988), [anon_sym_AMP_AMP] = ACTIONS(1988), [anon_sym_AMP] = ACTIONS(1986), [anon_sym_SEMI] = ACTIONS(1988), [anon_sym_typedef] = ACTIONS(1986), [anon_sym_extern] = ACTIONS(1986), [anon_sym___attribute__] = ACTIONS(1986), [anon_sym_COLON_COLON] = ACTIONS(1988), [anon_sym_LBRACK_LBRACK] = ACTIONS(1988), [anon_sym___declspec] = ACTIONS(1986), [anon_sym___based] = ACTIONS(1986), [anon_sym___cdecl] = ACTIONS(1986), [anon_sym___clrcall] = ACTIONS(1986), [anon_sym___stdcall] = ACTIONS(1986), [anon_sym___fastcall] = ACTIONS(1986), [anon_sym___thiscall] = ACTIONS(1986), [anon_sym___vectorcall] = ACTIONS(1986), [anon_sym_LBRACE] = ACTIONS(1988), [anon_sym_LBRACK] = ACTIONS(1986), [anon_sym_static] = ACTIONS(1986), [anon_sym_register] = ACTIONS(1986), [anon_sym_inline] = ACTIONS(1986), [anon_sym_thread_local] = ACTIONS(1986), [anon_sym_const] = ACTIONS(1986), [anon_sym_volatile] = ACTIONS(1986), [anon_sym_restrict] = ACTIONS(1986), [anon_sym__Atomic] = ACTIONS(1986), [anon_sym_mutable] = ACTIONS(1986), [anon_sym_constexpr] = ACTIONS(1986), [anon_sym_signed] = ACTIONS(1986), [anon_sym_unsigned] = ACTIONS(1986), [anon_sym_long] = ACTIONS(1986), [anon_sym_short] = ACTIONS(1986), [sym_primitive_type] = ACTIONS(1986), [anon_sym_enum] = ACTIONS(1986), [anon_sym_class] = ACTIONS(1986), [anon_sym_struct] = ACTIONS(1986), [anon_sym_union] = ACTIONS(1986), [anon_sym_if] = ACTIONS(1986), [anon_sym_else] = ACTIONS(1986), [anon_sym_switch] = ACTIONS(1986), [anon_sym_case] = ACTIONS(1986), [anon_sym_default] = ACTIONS(1986), [anon_sym_while] = ACTIONS(1986), [anon_sym_do] = ACTIONS(1986), [anon_sym_for] = ACTIONS(1986), [anon_sym_return] = ACTIONS(1986), [anon_sym_break] = ACTIONS(1986), [anon_sym_continue] = ACTIONS(1986), [anon_sym_goto] = ACTIONS(1986), [anon_sym_DASH_DASH] = ACTIONS(1988), [anon_sym_PLUS_PLUS] = ACTIONS(1988), [anon_sym_sizeof] = ACTIONS(1986), [sym_number_literal] = ACTIONS(1988), [anon_sym_L_SQUOTE] = ACTIONS(1988), [anon_sym_u_SQUOTE] = ACTIONS(1988), [anon_sym_U_SQUOTE] = ACTIONS(1988), [anon_sym_u8_SQUOTE] = ACTIONS(1988), [anon_sym_SQUOTE] = ACTIONS(1988), [anon_sym_L_DQUOTE] = ACTIONS(1988), [anon_sym_u_DQUOTE] = ACTIONS(1988), [anon_sym_U_DQUOTE] = ACTIONS(1988), [anon_sym_u8_DQUOTE] = ACTIONS(1988), [anon_sym_DQUOTE] = ACTIONS(1988), [sym_true] = ACTIONS(1986), [sym_false] = ACTIONS(1986), [sym_null] = ACTIONS(1986), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1986), [anon_sym_virtual] = ACTIONS(1986), [anon_sym_explicit] = ACTIONS(1986), [sym_auto] = ACTIONS(1986), [anon_sym_typename] = ACTIONS(1986), [anon_sym_template] = ACTIONS(1986), [anon_sym_operator] = ACTIONS(1986), [anon_sym_delete] = ACTIONS(1986), [anon_sym_throw] = ACTIONS(1986), [anon_sym_namespace] = ACTIONS(1986), [anon_sym_using] = ACTIONS(1986), [anon_sym_static_assert] = ACTIONS(1986), [anon_sym_co_return] = ACTIONS(1986), [anon_sym_co_yield] = ACTIONS(1986), [anon_sym_try] = ACTIONS(1986), [anon_sym_co_await] = ACTIONS(1986), [anon_sym_new] = ACTIONS(1986), [sym_this] = ACTIONS(1986), [sym_nullptr] = ACTIONS(1986), [sym_raw_string_literal] = ACTIONS(1988), }, [535] = { [ts_builtin_sym_end] = ACTIONS(1862), [sym_identifier] = ACTIONS(1860), [aux_sym_preproc_include_token1] = ACTIONS(1860), [aux_sym_preproc_def_token1] = ACTIONS(1860), [aux_sym_preproc_if_token1] = ACTIONS(1860), [aux_sym_preproc_ifdef_token1] = ACTIONS(1860), [aux_sym_preproc_ifdef_token2] = ACTIONS(1860), [sym_preproc_directive] = ACTIONS(1860), [anon_sym_LPAREN2] = ACTIONS(1862), [anon_sym_BANG] = ACTIONS(1862), [anon_sym_TILDE] = ACTIONS(1862), [anon_sym_DASH] = ACTIONS(1860), [anon_sym_PLUS] = ACTIONS(1860), [anon_sym_STAR] = ACTIONS(1862), [anon_sym_AMP_AMP] = ACTIONS(1862), [anon_sym_AMP] = ACTIONS(1860), [anon_sym_SEMI] = ACTIONS(1862), [anon_sym_typedef] = ACTIONS(1860), [anon_sym_extern] = ACTIONS(1860), [anon_sym___attribute__] = ACTIONS(1860), [anon_sym_COLON_COLON] = ACTIONS(1862), [anon_sym_LBRACK_LBRACK] = ACTIONS(1862), [anon_sym___declspec] = ACTIONS(1860), [anon_sym___based] = ACTIONS(1860), [anon_sym___cdecl] = ACTIONS(1860), [anon_sym___clrcall] = ACTIONS(1860), [anon_sym___stdcall] = ACTIONS(1860), [anon_sym___fastcall] = ACTIONS(1860), [anon_sym___thiscall] = ACTIONS(1860), [anon_sym___vectorcall] = ACTIONS(1860), [anon_sym_LBRACE] = ACTIONS(1862), [anon_sym_LBRACK] = ACTIONS(1860), [anon_sym_static] = ACTIONS(1860), [anon_sym_register] = ACTIONS(1860), [anon_sym_inline] = ACTIONS(1860), [anon_sym_thread_local] = ACTIONS(1860), [anon_sym_const] = ACTIONS(1860), [anon_sym_volatile] = ACTIONS(1860), [anon_sym_restrict] = ACTIONS(1860), [anon_sym__Atomic] = ACTIONS(1860), [anon_sym_mutable] = ACTIONS(1860), [anon_sym_constexpr] = ACTIONS(1860), [anon_sym_signed] = ACTIONS(1860), [anon_sym_unsigned] = ACTIONS(1860), [anon_sym_long] = ACTIONS(1860), [anon_sym_short] = ACTIONS(1860), [sym_primitive_type] = ACTIONS(1860), [anon_sym_enum] = ACTIONS(1860), [anon_sym_class] = ACTIONS(1860), [anon_sym_struct] = ACTIONS(1860), [anon_sym_union] = ACTIONS(1860), [anon_sym_if] = ACTIONS(1860), [anon_sym_else] = ACTIONS(1860), [anon_sym_switch] = ACTIONS(1860), [anon_sym_case] = ACTIONS(1860), [anon_sym_default] = ACTIONS(1860), [anon_sym_while] = ACTIONS(1860), [anon_sym_do] = ACTIONS(1860), [anon_sym_for] = ACTIONS(1860), [anon_sym_return] = ACTIONS(1860), [anon_sym_break] = ACTIONS(1860), [anon_sym_continue] = ACTIONS(1860), [anon_sym_goto] = ACTIONS(1860), [anon_sym_DASH_DASH] = ACTIONS(1862), [anon_sym_PLUS_PLUS] = ACTIONS(1862), [anon_sym_sizeof] = ACTIONS(1860), [sym_number_literal] = ACTIONS(1862), [anon_sym_L_SQUOTE] = ACTIONS(1862), [anon_sym_u_SQUOTE] = ACTIONS(1862), [anon_sym_U_SQUOTE] = ACTIONS(1862), [anon_sym_u8_SQUOTE] = ACTIONS(1862), [anon_sym_SQUOTE] = ACTIONS(1862), [anon_sym_L_DQUOTE] = ACTIONS(1862), [anon_sym_u_DQUOTE] = ACTIONS(1862), [anon_sym_U_DQUOTE] = ACTIONS(1862), [anon_sym_u8_DQUOTE] = ACTIONS(1862), [anon_sym_DQUOTE] = ACTIONS(1862), [sym_true] = ACTIONS(1860), [sym_false] = ACTIONS(1860), [sym_null] = ACTIONS(1860), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1860), [anon_sym_virtual] = ACTIONS(1860), [anon_sym_explicit] = ACTIONS(1860), [sym_auto] = ACTIONS(1860), [anon_sym_typename] = ACTIONS(1860), [anon_sym_template] = ACTIONS(1860), [anon_sym_operator] = ACTIONS(1860), [anon_sym_delete] = ACTIONS(1860), [anon_sym_throw] = ACTIONS(1860), [anon_sym_namespace] = ACTIONS(1860), [anon_sym_using] = ACTIONS(1860), [anon_sym_static_assert] = ACTIONS(1860), [anon_sym_co_return] = ACTIONS(1860), [anon_sym_co_yield] = ACTIONS(1860), [anon_sym_try] = ACTIONS(1860), [anon_sym_co_await] = ACTIONS(1860), [anon_sym_new] = ACTIONS(1860), [sym_this] = ACTIONS(1860), [sym_nullptr] = ACTIONS(1860), [sym_raw_string_literal] = ACTIONS(1862), }, [536] = { [sym_identifier] = ACTIONS(1926), [aux_sym_preproc_include_token1] = ACTIONS(1926), [aux_sym_preproc_def_token1] = ACTIONS(1926), [aux_sym_preproc_if_token1] = ACTIONS(1926), [aux_sym_preproc_ifdef_token1] = ACTIONS(1926), [aux_sym_preproc_ifdef_token2] = ACTIONS(1926), [sym_preproc_directive] = ACTIONS(1926), [anon_sym_LPAREN2] = ACTIONS(1928), [anon_sym_BANG] = ACTIONS(1928), [anon_sym_TILDE] = ACTIONS(1928), [anon_sym_DASH] = ACTIONS(1926), [anon_sym_PLUS] = ACTIONS(1926), [anon_sym_STAR] = ACTIONS(1928), [anon_sym_AMP_AMP] = ACTIONS(1928), [anon_sym_AMP] = ACTIONS(1926), [anon_sym_SEMI] = ACTIONS(1928), [anon_sym_typedef] = ACTIONS(1926), [anon_sym_extern] = ACTIONS(1926), [anon_sym___attribute__] = ACTIONS(1926), [anon_sym_COLON_COLON] = ACTIONS(1928), [anon_sym_LBRACK_LBRACK] = ACTIONS(1928), [anon_sym___declspec] = ACTIONS(1926), [anon_sym___based] = ACTIONS(1926), [anon_sym___cdecl] = ACTIONS(1926), [anon_sym___clrcall] = ACTIONS(1926), [anon_sym___stdcall] = ACTIONS(1926), [anon_sym___fastcall] = ACTIONS(1926), [anon_sym___thiscall] = ACTIONS(1926), [anon_sym___vectorcall] = ACTIONS(1926), [anon_sym_LBRACE] = ACTIONS(1928), [anon_sym_RBRACE] = ACTIONS(1928), [anon_sym_LBRACK] = ACTIONS(1926), [anon_sym_static] = ACTIONS(1926), [anon_sym_register] = ACTIONS(1926), [anon_sym_inline] = ACTIONS(1926), [anon_sym_thread_local] = ACTIONS(1926), [anon_sym_const] = ACTIONS(1926), [anon_sym_volatile] = ACTIONS(1926), [anon_sym_restrict] = ACTIONS(1926), [anon_sym__Atomic] = ACTIONS(1926), [anon_sym_mutable] = ACTIONS(1926), [anon_sym_constexpr] = ACTIONS(1926), [anon_sym_signed] = ACTIONS(1926), [anon_sym_unsigned] = ACTIONS(1926), [anon_sym_long] = ACTIONS(1926), [anon_sym_short] = ACTIONS(1926), [sym_primitive_type] = ACTIONS(1926), [anon_sym_enum] = ACTIONS(1926), [anon_sym_class] = ACTIONS(1926), [anon_sym_struct] = ACTIONS(1926), [anon_sym_union] = ACTIONS(1926), [anon_sym_if] = ACTIONS(1926), [anon_sym_else] = ACTIONS(2230), [anon_sym_switch] = ACTIONS(1926), [anon_sym_case] = ACTIONS(1926), [anon_sym_default] = ACTIONS(1926), [anon_sym_while] = ACTIONS(1926), [anon_sym_do] = ACTIONS(1926), [anon_sym_for] = ACTIONS(1926), [anon_sym_return] = ACTIONS(1926), [anon_sym_break] = ACTIONS(1926), [anon_sym_continue] = ACTIONS(1926), [anon_sym_goto] = ACTIONS(1926), [anon_sym_DASH_DASH] = ACTIONS(1928), [anon_sym_PLUS_PLUS] = ACTIONS(1928), [anon_sym_sizeof] = ACTIONS(1926), [sym_number_literal] = ACTIONS(1928), [anon_sym_L_SQUOTE] = ACTIONS(1928), [anon_sym_u_SQUOTE] = ACTIONS(1928), [anon_sym_U_SQUOTE] = ACTIONS(1928), [anon_sym_u8_SQUOTE] = ACTIONS(1928), [anon_sym_SQUOTE] = ACTIONS(1928), [anon_sym_L_DQUOTE] = ACTIONS(1928), [anon_sym_u_DQUOTE] = ACTIONS(1928), [anon_sym_U_DQUOTE] = ACTIONS(1928), [anon_sym_u8_DQUOTE] = ACTIONS(1928), [anon_sym_DQUOTE] = ACTIONS(1928), [sym_true] = ACTIONS(1926), [sym_false] = ACTIONS(1926), [sym_null] = ACTIONS(1926), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1926), [anon_sym_virtual] = ACTIONS(1926), [anon_sym_explicit] = ACTIONS(1926), [sym_auto] = ACTIONS(1926), [anon_sym_typename] = ACTIONS(1926), [anon_sym_template] = ACTIONS(1926), [anon_sym_operator] = ACTIONS(1926), [anon_sym_delete] = ACTIONS(1926), [anon_sym_throw] = ACTIONS(1926), [anon_sym_namespace] = ACTIONS(1926), [anon_sym_using] = ACTIONS(1926), [anon_sym_static_assert] = ACTIONS(1926), [anon_sym_co_return] = ACTIONS(1926), [anon_sym_co_yield] = ACTIONS(1926), [anon_sym_try] = ACTIONS(1926), [anon_sym_co_await] = ACTIONS(1926), [anon_sym_new] = ACTIONS(1926), [sym_this] = ACTIONS(1926), [sym_nullptr] = ACTIONS(1926), [sym_raw_string_literal] = ACTIONS(1928), }, [537] = { [ts_builtin_sym_end] = ACTIONS(1934), [sym_identifier] = ACTIONS(1932), [aux_sym_preproc_include_token1] = ACTIONS(1932), [aux_sym_preproc_def_token1] = ACTIONS(1932), [aux_sym_preproc_if_token1] = ACTIONS(1932), [aux_sym_preproc_ifdef_token1] = ACTIONS(1932), [aux_sym_preproc_ifdef_token2] = ACTIONS(1932), [sym_preproc_directive] = ACTIONS(1932), [anon_sym_LPAREN2] = ACTIONS(1934), [anon_sym_BANG] = ACTIONS(1934), [anon_sym_TILDE] = ACTIONS(1934), [anon_sym_DASH] = ACTIONS(1932), [anon_sym_PLUS] = ACTIONS(1932), [anon_sym_STAR] = ACTIONS(1934), [anon_sym_AMP_AMP] = ACTIONS(1934), [anon_sym_AMP] = ACTIONS(1932), [anon_sym_SEMI] = ACTIONS(1934), [anon_sym_typedef] = ACTIONS(1932), [anon_sym_extern] = ACTIONS(1932), [anon_sym___attribute__] = ACTIONS(1932), [anon_sym_COLON_COLON] = ACTIONS(1934), [anon_sym_LBRACK_LBRACK] = ACTIONS(1934), [anon_sym___declspec] = ACTIONS(1932), [anon_sym___based] = ACTIONS(1932), [anon_sym___cdecl] = ACTIONS(1932), [anon_sym___clrcall] = ACTIONS(1932), [anon_sym___stdcall] = ACTIONS(1932), [anon_sym___fastcall] = ACTIONS(1932), [anon_sym___thiscall] = ACTIONS(1932), [anon_sym___vectorcall] = ACTIONS(1932), [anon_sym_LBRACE] = ACTIONS(1934), [anon_sym_LBRACK] = ACTIONS(1932), [anon_sym_static] = ACTIONS(1932), [anon_sym_register] = ACTIONS(1932), [anon_sym_inline] = ACTIONS(1932), [anon_sym_thread_local] = ACTIONS(1932), [anon_sym_const] = ACTIONS(1932), [anon_sym_volatile] = ACTIONS(1932), [anon_sym_restrict] = ACTIONS(1932), [anon_sym__Atomic] = ACTIONS(1932), [anon_sym_mutable] = ACTIONS(1932), [anon_sym_constexpr] = ACTIONS(1932), [anon_sym_signed] = ACTIONS(1932), [anon_sym_unsigned] = ACTIONS(1932), [anon_sym_long] = ACTIONS(1932), [anon_sym_short] = ACTIONS(1932), [sym_primitive_type] = ACTIONS(1932), [anon_sym_enum] = ACTIONS(1932), [anon_sym_class] = ACTIONS(1932), [anon_sym_struct] = ACTIONS(1932), [anon_sym_union] = ACTIONS(1932), [anon_sym_if] = ACTIONS(1932), [anon_sym_else] = ACTIONS(1932), [anon_sym_switch] = ACTIONS(1932), [anon_sym_case] = ACTIONS(1932), [anon_sym_default] = ACTIONS(1932), [anon_sym_while] = ACTIONS(1932), [anon_sym_do] = ACTIONS(1932), [anon_sym_for] = ACTIONS(1932), [anon_sym_return] = ACTIONS(1932), [anon_sym_break] = ACTIONS(1932), [anon_sym_continue] = ACTIONS(1932), [anon_sym_goto] = ACTIONS(1932), [anon_sym_DASH_DASH] = ACTIONS(1934), [anon_sym_PLUS_PLUS] = ACTIONS(1934), [anon_sym_sizeof] = ACTIONS(1932), [sym_number_literal] = ACTIONS(1934), [anon_sym_L_SQUOTE] = ACTIONS(1934), [anon_sym_u_SQUOTE] = ACTIONS(1934), [anon_sym_U_SQUOTE] = ACTIONS(1934), [anon_sym_u8_SQUOTE] = ACTIONS(1934), [anon_sym_SQUOTE] = ACTIONS(1934), [anon_sym_L_DQUOTE] = ACTIONS(1934), [anon_sym_u_DQUOTE] = ACTIONS(1934), [anon_sym_U_DQUOTE] = ACTIONS(1934), [anon_sym_u8_DQUOTE] = ACTIONS(1934), [anon_sym_DQUOTE] = ACTIONS(1934), [sym_true] = ACTIONS(1932), [sym_false] = ACTIONS(1932), [sym_null] = ACTIONS(1932), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1932), [anon_sym_virtual] = ACTIONS(1932), [anon_sym_explicit] = ACTIONS(1932), [sym_auto] = ACTIONS(1932), [anon_sym_typename] = ACTIONS(1932), [anon_sym_template] = ACTIONS(1932), [anon_sym_operator] = ACTIONS(1932), [anon_sym_delete] = ACTIONS(1932), [anon_sym_throw] = ACTIONS(1932), [anon_sym_namespace] = ACTIONS(1932), [anon_sym_using] = ACTIONS(1932), [anon_sym_static_assert] = ACTIONS(1932), [anon_sym_co_return] = ACTIONS(1932), [anon_sym_co_yield] = ACTIONS(1932), [anon_sym_try] = ACTIONS(1932), [anon_sym_co_await] = ACTIONS(1932), [anon_sym_new] = ACTIONS(1932), [sym_this] = ACTIONS(1932), [sym_nullptr] = ACTIONS(1932), [sym_raw_string_literal] = ACTIONS(1934), }, [538] = { [sym_identifier] = ACTIONS(1932), [aux_sym_preproc_include_token1] = ACTIONS(1932), [aux_sym_preproc_def_token1] = ACTIONS(1932), [aux_sym_preproc_if_token1] = ACTIONS(1932), [aux_sym_preproc_ifdef_token1] = ACTIONS(1932), [aux_sym_preproc_ifdef_token2] = ACTIONS(1932), [sym_preproc_directive] = ACTIONS(1932), [anon_sym_LPAREN2] = ACTIONS(1934), [anon_sym_BANG] = ACTIONS(1934), [anon_sym_TILDE] = ACTIONS(1934), [anon_sym_DASH] = ACTIONS(1932), [anon_sym_PLUS] = ACTIONS(1932), [anon_sym_STAR] = ACTIONS(1934), [anon_sym_AMP_AMP] = ACTIONS(1934), [anon_sym_AMP] = ACTIONS(1932), [anon_sym_SEMI] = ACTIONS(1934), [anon_sym_typedef] = ACTIONS(1932), [anon_sym_extern] = ACTIONS(1932), [anon_sym___attribute__] = ACTIONS(1932), [anon_sym_COLON_COLON] = ACTIONS(1934), [anon_sym_LBRACK_LBRACK] = ACTIONS(1934), [anon_sym___declspec] = ACTIONS(1932), [anon_sym___based] = ACTIONS(1932), [anon_sym___cdecl] = ACTIONS(1932), [anon_sym___clrcall] = ACTIONS(1932), [anon_sym___stdcall] = ACTIONS(1932), [anon_sym___fastcall] = ACTIONS(1932), [anon_sym___thiscall] = ACTIONS(1932), [anon_sym___vectorcall] = ACTIONS(1932), [anon_sym_LBRACE] = ACTIONS(1934), [anon_sym_RBRACE] = ACTIONS(1934), [anon_sym_LBRACK] = ACTIONS(1932), [anon_sym_static] = ACTIONS(1932), [anon_sym_register] = ACTIONS(1932), [anon_sym_inline] = ACTIONS(1932), [anon_sym_thread_local] = ACTIONS(1932), [anon_sym_const] = ACTIONS(1932), [anon_sym_volatile] = ACTIONS(1932), [anon_sym_restrict] = ACTIONS(1932), [anon_sym__Atomic] = ACTIONS(1932), [anon_sym_mutable] = ACTIONS(1932), [anon_sym_constexpr] = ACTIONS(1932), [anon_sym_signed] = ACTIONS(1932), [anon_sym_unsigned] = ACTIONS(1932), [anon_sym_long] = ACTIONS(1932), [anon_sym_short] = ACTIONS(1932), [sym_primitive_type] = ACTIONS(1932), [anon_sym_enum] = ACTIONS(1932), [anon_sym_class] = ACTIONS(1932), [anon_sym_struct] = ACTIONS(1932), [anon_sym_union] = ACTIONS(1932), [anon_sym_if] = ACTIONS(1932), [anon_sym_else] = ACTIONS(1932), [anon_sym_switch] = ACTIONS(1932), [anon_sym_case] = ACTIONS(1932), [anon_sym_default] = ACTIONS(1932), [anon_sym_while] = ACTIONS(1932), [anon_sym_do] = ACTIONS(1932), [anon_sym_for] = ACTIONS(1932), [anon_sym_return] = ACTIONS(1932), [anon_sym_break] = ACTIONS(1932), [anon_sym_continue] = ACTIONS(1932), [anon_sym_goto] = ACTIONS(1932), [anon_sym_DASH_DASH] = ACTIONS(1934), [anon_sym_PLUS_PLUS] = ACTIONS(1934), [anon_sym_sizeof] = ACTIONS(1932), [sym_number_literal] = ACTIONS(1934), [anon_sym_L_SQUOTE] = ACTIONS(1934), [anon_sym_u_SQUOTE] = ACTIONS(1934), [anon_sym_U_SQUOTE] = ACTIONS(1934), [anon_sym_u8_SQUOTE] = ACTIONS(1934), [anon_sym_SQUOTE] = ACTIONS(1934), [anon_sym_L_DQUOTE] = ACTIONS(1934), [anon_sym_u_DQUOTE] = ACTIONS(1934), [anon_sym_U_DQUOTE] = ACTIONS(1934), [anon_sym_u8_DQUOTE] = ACTIONS(1934), [anon_sym_DQUOTE] = ACTIONS(1934), [sym_true] = ACTIONS(1932), [sym_false] = ACTIONS(1932), [sym_null] = ACTIONS(1932), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1932), [anon_sym_virtual] = ACTIONS(1932), [anon_sym_explicit] = ACTIONS(1932), [sym_auto] = ACTIONS(1932), [anon_sym_typename] = ACTIONS(1932), [anon_sym_template] = ACTIONS(1932), [anon_sym_operator] = ACTIONS(1932), [anon_sym_delete] = ACTIONS(1932), [anon_sym_throw] = ACTIONS(1932), [anon_sym_namespace] = ACTIONS(1932), [anon_sym_using] = ACTIONS(1932), [anon_sym_static_assert] = ACTIONS(1932), [anon_sym_co_return] = ACTIONS(1932), [anon_sym_co_yield] = ACTIONS(1932), [anon_sym_try] = ACTIONS(1932), [anon_sym_co_await] = ACTIONS(1932), [anon_sym_new] = ACTIONS(1932), [sym_this] = ACTIONS(1932), [sym_nullptr] = ACTIONS(1932), [sym_raw_string_literal] = ACTIONS(1934), }, [539] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [540] = { [ts_builtin_sym_end] = ACTIONS(1992), [sym_identifier] = ACTIONS(1990), [aux_sym_preproc_include_token1] = ACTIONS(1990), [aux_sym_preproc_def_token1] = ACTIONS(1990), [aux_sym_preproc_if_token1] = ACTIONS(1990), [aux_sym_preproc_ifdef_token1] = ACTIONS(1990), [aux_sym_preproc_ifdef_token2] = ACTIONS(1990), [sym_preproc_directive] = ACTIONS(1990), [anon_sym_LPAREN2] = ACTIONS(1992), [anon_sym_BANG] = ACTIONS(1992), [anon_sym_TILDE] = ACTIONS(1992), [anon_sym_DASH] = ACTIONS(1990), [anon_sym_PLUS] = ACTIONS(1990), [anon_sym_STAR] = ACTIONS(1992), [anon_sym_AMP_AMP] = ACTIONS(1992), [anon_sym_AMP] = ACTIONS(1990), [anon_sym_SEMI] = ACTIONS(1992), [anon_sym_typedef] = ACTIONS(1990), [anon_sym_extern] = ACTIONS(1990), [anon_sym___attribute__] = ACTIONS(1990), [anon_sym_COLON_COLON] = ACTIONS(1992), [anon_sym_LBRACK_LBRACK] = ACTIONS(1992), [anon_sym___declspec] = ACTIONS(1990), [anon_sym___based] = ACTIONS(1990), [anon_sym___cdecl] = ACTIONS(1990), [anon_sym___clrcall] = ACTIONS(1990), [anon_sym___stdcall] = ACTIONS(1990), [anon_sym___fastcall] = ACTIONS(1990), [anon_sym___thiscall] = ACTIONS(1990), [anon_sym___vectorcall] = ACTIONS(1990), [anon_sym_LBRACE] = ACTIONS(1992), [anon_sym_LBRACK] = ACTIONS(1990), [anon_sym_static] = ACTIONS(1990), [anon_sym_register] = ACTIONS(1990), [anon_sym_inline] = ACTIONS(1990), [anon_sym_thread_local] = ACTIONS(1990), [anon_sym_const] = ACTIONS(1990), [anon_sym_volatile] = ACTIONS(1990), [anon_sym_restrict] = ACTIONS(1990), [anon_sym__Atomic] = ACTIONS(1990), [anon_sym_mutable] = ACTIONS(1990), [anon_sym_constexpr] = ACTIONS(1990), [anon_sym_signed] = ACTIONS(1990), [anon_sym_unsigned] = ACTIONS(1990), [anon_sym_long] = ACTIONS(1990), [anon_sym_short] = ACTIONS(1990), [sym_primitive_type] = ACTIONS(1990), [anon_sym_enum] = ACTIONS(1990), [anon_sym_class] = ACTIONS(1990), [anon_sym_struct] = ACTIONS(1990), [anon_sym_union] = ACTIONS(1990), [anon_sym_if] = ACTIONS(1990), [anon_sym_else] = ACTIONS(1990), [anon_sym_switch] = ACTIONS(1990), [anon_sym_case] = ACTIONS(1990), [anon_sym_default] = ACTIONS(1990), [anon_sym_while] = ACTIONS(1990), [anon_sym_do] = ACTIONS(1990), [anon_sym_for] = ACTIONS(1990), [anon_sym_return] = ACTIONS(1990), [anon_sym_break] = ACTIONS(1990), [anon_sym_continue] = ACTIONS(1990), [anon_sym_goto] = ACTIONS(1990), [anon_sym_DASH_DASH] = ACTIONS(1992), [anon_sym_PLUS_PLUS] = ACTIONS(1992), [anon_sym_sizeof] = ACTIONS(1990), [sym_number_literal] = ACTIONS(1992), [anon_sym_L_SQUOTE] = ACTIONS(1992), [anon_sym_u_SQUOTE] = ACTIONS(1992), [anon_sym_U_SQUOTE] = ACTIONS(1992), [anon_sym_u8_SQUOTE] = ACTIONS(1992), [anon_sym_SQUOTE] = ACTIONS(1992), [anon_sym_L_DQUOTE] = ACTIONS(1992), [anon_sym_u_DQUOTE] = ACTIONS(1992), [anon_sym_U_DQUOTE] = ACTIONS(1992), [anon_sym_u8_DQUOTE] = ACTIONS(1992), [anon_sym_DQUOTE] = ACTIONS(1992), [sym_true] = ACTIONS(1990), [sym_false] = ACTIONS(1990), [sym_null] = ACTIONS(1990), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1990), [anon_sym_virtual] = ACTIONS(1990), [anon_sym_explicit] = ACTIONS(1990), [sym_auto] = ACTIONS(1990), [anon_sym_typename] = ACTIONS(1990), [anon_sym_template] = ACTIONS(1990), [anon_sym_operator] = ACTIONS(1990), [anon_sym_delete] = ACTIONS(1990), [anon_sym_throw] = ACTIONS(1990), [anon_sym_namespace] = ACTIONS(1990), [anon_sym_using] = ACTIONS(1990), [anon_sym_static_assert] = ACTIONS(1990), [anon_sym_co_return] = ACTIONS(1990), [anon_sym_co_yield] = ACTIONS(1990), [anon_sym_try] = ACTIONS(1990), [anon_sym_co_await] = ACTIONS(1990), [anon_sym_new] = ACTIONS(1990), [sym_this] = ACTIONS(1990), [sym_nullptr] = ACTIONS(1990), [sym_raw_string_literal] = ACTIONS(1992), }, [541] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [542] = { [ts_builtin_sym_end] = ACTIONS(1928), [sym_identifier] = ACTIONS(1926), [aux_sym_preproc_include_token1] = ACTIONS(1926), [aux_sym_preproc_def_token1] = ACTIONS(1926), [aux_sym_preproc_if_token1] = ACTIONS(1926), [aux_sym_preproc_ifdef_token1] = ACTIONS(1926), [aux_sym_preproc_ifdef_token2] = ACTIONS(1926), [sym_preproc_directive] = ACTIONS(1926), [anon_sym_LPAREN2] = ACTIONS(1928), [anon_sym_BANG] = ACTIONS(1928), [anon_sym_TILDE] = ACTIONS(1928), [anon_sym_DASH] = ACTIONS(1926), [anon_sym_PLUS] = ACTIONS(1926), [anon_sym_STAR] = ACTIONS(1928), [anon_sym_AMP_AMP] = ACTIONS(1928), [anon_sym_AMP] = ACTIONS(1926), [anon_sym_SEMI] = ACTIONS(1928), [anon_sym_typedef] = ACTIONS(1926), [anon_sym_extern] = ACTIONS(1926), [anon_sym___attribute__] = ACTIONS(1926), [anon_sym_COLON_COLON] = ACTIONS(1928), [anon_sym_LBRACK_LBRACK] = ACTIONS(1928), [anon_sym___declspec] = ACTIONS(1926), [anon_sym___based] = ACTIONS(1926), [anon_sym___cdecl] = ACTIONS(1926), [anon_sym___clrcall] = ACTIONS(1926), [anon_sym___stdcall] = ACTIONS(1926), [anon_sym___fastcall] = ACTIONS(1926), [anon_sym___thiscall] = ACTIONS(1926), [anon_sym___vectorcall] = ACTIONS(1926), [anon_sym_LBRACE] = ACTIONS(1928), [anon_sym_LBRACK] = ACTIONS(1926), [anon_sym_static] = ACTIONS(1926), [anon_sym_register] = ACTIONS(1926), [anon_sym_inline] = ACTIONS(1926), [anon_sym_thread_local] = ACTIONS(1926), [anon_sym_const] = ACTIONS(1926), [anon_sym_volatile] = ACTIONS(1926), [anon_sym_restrict] = ACTIONS(1926), [anon_sym__Atomic] = ACTIONS(1926), [anon_sym_mutable] = ACTIONS(1926), [anon_sym_constexpr] = ACTIONS(1926), [anon_sym_signed] = ACTIONS(1926), [anon_sym_unsigned] = ACTIONS(1926), [anon_sym_long] = ACTIONS(1926), [anon_sym_short] = ACTIONS(1926), [sym_primitive_type] = ACTIONS(1926), [anon_sym_enum] = ACTIONS(1926), [anon_sym_class] = ACTIONS(1926), [anon_sym_struct] = ACTIONS(1926), [anon_sym_union] = ACTIONS(1926), [anon_sym_if] = ACTIONS(1926), [anon_sym_else] = ACTIONS(2232), [anon_sym_switch] = ACTIONS(1926), [anon_sym_case] = ACTIONS(1926), [anon_sym_default] = ACTIONS(1926), [anon_sym_while] = ACTIONS(1926), [anon_sym_do] = ACTIONS(1926), [anon_sym_for] = ACTIONS(1926), [anon_sym_return] = ACTIONS(1926), [anon_sym_break] = ACTIONS(1926), [anon_sym_continue] = ACTIONS(1926), [anon_sym_goto] = ACTIONS(1926), [anon_sym_DASH_DASH] = ACTIONS(1928), [anon_sym_PLUS_PLUS] = ACTIONS(1928), [anon_sym_sizeof] = ACTIONS(1926), [sym_number_literal] = ACTIONS(1928), [anon_sym_L_SQUOTE] = ACTIONS(1928), [anon_sym_u_SQUOTE] = ACTIONS(1928), [anon_sym_U_SQUOTE] = ACTIONS(1928), [anon_sym_u8_SQUOTE] = ACTIONS(1928), [anon_sym_SQUOTE] = ACTIONS(1928), [anon_sym_L_DQUOTE] = ACTIONS(1928), [anon_sym_u_DQUOTE] = ACTIONS(1928), [anon_sym_U_DQUOTE] = ACTIONS(1928), [anon_sym_u8_DQUOTE] = ACTIONS(1928), [anon_sym_DQUOTE] = ACTIONS(1928), [sym_true] = ACTIONS(1926), [sym_false] = ACTIONS(1926), [sym_null] = ACTIONS(1926), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1926), [anon_sym_virtual] = ACTIONS(1926), [anon_sym_explicit] = ACTIONS(1926), [sym_auto] = ACTIONS(1926), [anon_sym_typename] = ACTIONS(1926), [anon_sym_template] = ACTIONS(1926), [anon_sym_operator] = ACTIONS(1926), [anon_sym_delete] = ACTIONS(1926), [anon_sym_throw] = ACTIONS(1926), [anon_sym_namespace] = ACTIONS(1926), [anon_sym_using] = ACTIONS(1926), [anon_sym_static_assert] = ACTIONS(1926), [anon_sym_co_return] = ACTIONS(1926), [anon_sym_co_yield] = ACTIONS(1926), [anon_sym_try] = ACTIONS(1926), [anon_sym_co_await] = ACTIONS(1926), [anon_sym_new] = ACTIONS(1926), [sym_this] = ACTIONS(1926), [sym_nullptr] = ACTIONS(1926), [sym_raw_string_literal] = ACTIONS(1928), }, [543] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [544] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [545] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [546] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [547] = { [sym_identifier] = ACTIONS(1848), [aux_sym_preproc_include_token1] = ACTIONS(1848), [aux_sym_preproc_def_token1] = ACTIONS(1848), [aux_sym_preproc_if_token1] = ACTIONS(1848), [aux_sym_preproc_if_token2] = ACTIONS(1848), [aux_sym_preproc_ifdef_token1] = ACTIONS(1848), [aux_sym_preproc_ifdef_token2] = ACTIONS(1848), [sym_preproc_directive] = ACTIONS(1848), [anon_sym_LPAREN2] = ACTIONS(1850), [anon_sym_BANG] = ACTIONS(1850), [anon_sym_TILDE] = ACTIONS(1850), [anon_sym_DASH] = ACTIONS(1848), [anon_sym_PLUS] = ACTIONS(1848), [anon_sym_STAR] = ACTIONS(1850), [anon_sym_AMP_AMP] = ACTIONS(1850), [anon_sym_AMP] = ACTIONS(1848), [anon_sym_SEMI] = ACTIONS(1850), [anon_sym_typedef] = ACTIONS(1848), [anon_sym_extern] = ACTIONS(1848), [anon_sym___attribute__] = ACTIONS(1848), [anon_sym_COLON_COLON] = ACTIONS(1850), [anon_sym_LBRACK_LBRACK] = ACTIONS(1850), [anon_sym___declspec] = ACTIONS(1848), [anon_sym___based] = ACTIONS(1848), [anon_sym___cdecl] = ACTIONS(1848), [anon_sym___clrcall] = ACTIONS(1848), [anon_sym___stdcall] = ACTIONS(1848), [anon_sym___fastcall] = ACTIONS(1848), [anon_sym___thiscall] = ACTIONS(1848), [anon_sym___vectorcall] = ACTIONS(1848), [anon_sym_LBRACE] = ACTIONS(1850), [anon_sym_LBRACK] = ACTIONS(1848), [anon_sym_static] = ACTIONS(1848), [anon_sym_register] = ACTIONS(1848), [anon_sym_inline] = ACTIONS(1848), [anon_sym_thread_local] = ACTIONS(1848), [anon_sym_const] = ACTIONS(1848), [anon_sym_volatile] = ACTIONS(1848), [anon_sym_restrict] = ACTIONS(1848), [anon_sym__Atomic] = ACTIONS(1848), [anon_sym_mutable] = ACTIONS(1848), [anon_sym_constexpr] = ACTIONS(1848), [anon_sym_signed] = ACTIONS(1848), [anon_sym_unsigned] = ACTIONS(1848), [anon_sym_long] = ACTIONS(1848), [anon_sym_short] = ACTIONS(1848), [sym_primitive_type] = ACTIONS(1848), [anon_sym_enum] = ACTIONS(1848), [anon_sym_class] = ACTIONS(1848), [anon_sym_struct] = ACTIONS(1848), [anon_sym_union] = ACTIONS(1848), [anon_sym_if] = ACTIONS(1848), [anon_sym_else] = ACTIONS(1848), [anon_sym_switch] = ACTIONS(1848), [anon_sym_case] = ACTIONS(1848), [anon_sym_default] = ACTIONS(1848), [anon_sym_while] = ACTIONS(1848), [anon_sym_do] = ACTIONS(1848), [anon_sym_for] = ACTIONS(1848), [anon_sym_return] = ACTIONS(1848), [anon_sym_break] = ACTIONS(1848), [anon_sym_continue] = ACTIONS(1848), [anon_sym_goto] = ACTIONS(1848), [anon_sym_DASH_DASH] = ACTIONS(1850), [anon_sym_PLUS_PLUS] = ACTIONS(1850), [anon_sym_sizeof] = ACTIONS(1848), [sym_number_literal] = ACTIONS(1850), [anon_sym_L_SQUOTE] = ACTIONS(1850), [anon_sym_u_SQUOTE] = ACTIONS(1850), [anon_sym_U_SQUOTE] = ACTIONS(1850), [anon_sym_u8_SQUOTE] = ACTIONS(1850), [anon_sym_SQUOTE] = ACTIONS(1850), [anon_sym_L_DQUOTE] = ACTIONS(1850), [anon_sym_u_DQUOTE] = ACTIONS(1850), [anon_sym_U_DQUOTE] = ACTIONS(1850), [anon_sym_u8_DQUOTE] = ACTIONS(1850), [anon_sym_DQUOTE] = ACTIONS(1850), [sym_true] = ACTIONS(1848), [sym_false] = ACTIONS(1848), [sym_null] = ACTIONS(1848), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1848), [anon_sym_virtual] = ACTIONS(1848), [anon_sym_explicit] = ACTIONS(1848), [sym_auto] = ACTIONS(1848), [anon_sym_typename] = ACTIONS(1848), [anon_sym_template] = ACTIONS(1848), [anon_sym_operator] = ACTIONS(1848), [anon_sym_delete] = ACTIONS(1848), [anon_sym_throw] = ACTIONS(1848), [anon_sym_namespace] = ACTIONS(1848), [anon_sym_using] = ACTIONS(1848), [anon_sym_static_assert] = ACTIONS(1848), [anon_sym_co_return] = ACTIONS(1848), [anon_sym_co_yield] = ACTIONS(1848), [anon_sym_try] = ACTIONS(1848), [anon_sym_co_await] = ACTIONS(1848), [anon_sym_new] = ACTIONS(1848), [sym_this] = ACTIONS(1848), [sym_nullptr] = ACTIONS(1848), [sym_raw_string_literal] = ACTIONS(1850), }, [548] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [549] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [550] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [551] = { [sym_identifier] = ACTIONS(1852), [aux_sym_preproc_include_token1] = ACTIONS(1852), [aux_sym_preproc_def_token1] = ACTIONS(1852), [aux_sym_preproc_if_token1] = ACTIONS(1852), [aux_sym_preproc_if_token2] = ACTIONS(1852), [aux_sym_preproc_ifdef_token1] = ACTIONS(1852), [aux_sym_preproc_ifdef_token2] = ACTIONS(1852), [sym_preproc_directive] = ACTIONS(1852), [anon_sym_LPAREN2] = ACTIONS(1854), [anon_sym_BANG] = ACTIONS(1854), [anon_sym_TILDE] = ACTIONS(1854), [anon_sym_DASH] = ACTIONS(1852), [anon_sym_PLUS] = ACTIONS(1852), [anon_sym_STAR] = ACTIONS(1854), [anon_sym_AMP_AMP] = ACTIONS(1854), [anon_sym_AMP] = ACTIONS(1852), [anon_sym_SEMI] = ACTIONS(1854), [anon_sym_typedef] = ACTIONS(1852), [anon_sym_extern] = ACTIONS(1852), [anon_sym___attribute__] = ACTIONS(1852), [anon_sym_COLON_COLON] = ACTIONS(1854), [anon_sym_LBRACK_LBRACK] = ACTIONS(1854), [anon_sym___declspec] = ACTIONS(1852), [anon_sym___based] = ACTIONS(1852), [anon_sym___cdecl] = ACTIONS(1852), [anon_sym___clrcall] = ACTIONS(1852), [anon_sym___stdcall] = ACTIONS(1852), [anon_sym___fastcall] = ACTIONS(1852), [anon_sym___thiscall] = ACTIONS(1852), [anon_sym___vectorcall] = ACTIONS(1852), [anon_sym_LBRACE] = ACTIONS(1854), [anon_sym_LBRACK] = ACTIONS(1852), [anon_sym_static] = ACTIONS(1852), [anon_sym_register] = ACTIONS(1852), [anon_sym_inline] = ACTIONS(1852), [anon_sym_thread_local] = ACTIONS(1852), [anon_sym_const] = ACTIONS(1852), [anon_sym_volatile] = ACTIONS(1852), [anon_sym_restrict] = ACTIONS(1852), [anon_sym__Atomic] = ACTIONS(1852), [anon_sym_mutable] = ACTIONS(1852), [anon_sym_constexpr] = ACTIONS(1852), [anon_sym_signed] = ACTIONS(1852), [anon_sym_unsigned] = ACTIONS(1852), [anon_sym_long] = ACTIONS(1852), [anon_sym_short] = ACTIONS(1852), [sym_primitive_type] = ACTIONS(1852), [anon_sym_enum] = ACTIONS(1852), [anon_sym_class] = ACTIONS(1852), [anon_sym_struct] = ACTIONS(1852), [anon_sym_union] = ACTIONS(1852), [anon_sym_if] = ACTIONS(1852), [anon_sym_else] = ACTIONS(1852), [anon_sym_switch] = ACTIONS(1852), [anon_sym_case] = ACTIONS(1852), [anon_sym_default] = ACTIONS(1852), [anon_sym_while] = ACTIONS(1852), [anon_sym_do] = ACTIONS(1852), [anon_sym_for] = ACTIONS(1852), [anon_sym_return] = ACTIONS(1852), [anon_sym_break] = ACTIONS(1852), [anon_sym_continue] = ACTIONS(1852), [anon_sym_goto] = ACTIONS(1852), [anon_sym_DASH_DASH] = ACTIONS(1854), [anon_sym_PLUS_PLUS] = ACTIONS(1854), [anon_sym_sizeof] = ACTIONS(1852), [sym_number_literal] = ACTIONS(1854), [anon_sym_L_SQUOTE] = ACTIONS(1854), [anon_sym_u_SQUOTE] = ACTIONS(1854), [anon_sym_U_SQUOTE] = ACTIONS(1854), [anon_sym_u8_SQUOTE] = ACTIONS(1854), [anon_sym_SQUOTE] = ACTIONS(1854), [anon_sym_L_DQUOTE] = ACTIONS(1854), [anon_sym_u_DQUOTE] = ACTIONS(1854), [anon_sym_U_DQUOTE] = ACTIONS(1854), [anon_sym_u8_DQUOTE] = ACTIONS(1854), [anon_sym_DQUOTE] = ACTIONS(1854), [sym_true] = ACTIONS(1852), [sym_false] = ACTIONS(1852), [sym_null] = ACTIONS(1852), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1852), [anon_sym_virtual] = ACTIONS(1852), [anon_sym_explicit] = ACTIONS(1852), [sym_auto] = ACTIONS(1852), [anon_sym_typename] = ACTIONS(1852), [anon_sym_template] = ACTIONS(1852), [anon_sym_operator] = ACTIONS(1852), [anon_sym_delete] = ACTIONS(1852), [anon_sym_throw] = ACTIONS(1852), [anon_sym_namespace] = ACTIONS(1852), [anon_sym_using] = ACTIONS(1852), [anon_sym_static_assert] = ACTIONS(1852), [anon_sym_co_return] = ACTIONS(1852), [anon_sym_co_yield] = ACTIONS(1852), [anon_sym_try] = ACTIONS(1852), [anon_sym_co_await] = ACTIONS(1852), [anon_sym_new] = ACTIONS(1852), [sym_this] = ACTIONS(1852), [sym_nullptr] = ACTIONS(1852), [sym_raw_string_literal] = ACTIONS(1854), }, [552] = { [sym_identifier] = ACTIONS(1938), [aux_sym_preproc_include_token1] = ACTIONS(1938), [aux_sym_preproc_def_token1] = ACTIONS(1938), [aux_sym_preproc_if_token1] = ACTIONS(1938), [aux_sym_preproc_if_token2] = ACTIONS(1938), [aux_sym_preproc_ifdef_token1] = ACTIONS(1938), [aux_sym_preproc_ifdef_token2] = ACTIONS(1938), [sym_preproc_directive] = ACTIONS(1938), [anon_sym_LPAREN2] = ACTIONS(1940), [anon_sym_BANG] = ACTIONS(1940), [anon_sym_TILDE] = ACTIONS(1940), [anon_sym_DASH] = ACTIONS(1938), [anon_sym_PLUS] = ACTIONS(1938), [anon_sym_STAR] = ACTIONS(1940), [anon_sym_AMP_AMP] = ACTIONS(1940), [anon_sym_AMP] = ACTIONS(1938), [anon_sym_SEMI] = ACTIONS(1940), [anon_sym_typedef] = ACTIONS(1938), [anon_sym_extern] = ACTIONS(1938), [anon_sym___attribute__] = ACTIONS(1938), [anon_sym_COLON_COLON] = ACTIONS(1940), [anon_sym_LBRACK_LBRACK] = ACTIONS(1940), [anon_sym___declspec] = ACTIONS(1938), [anon_sym___based] = ACTIONS(1938), [anon_sym___cdecl] = ACTIONS(1938), [anon_sym___clrcall] = ACTIONS(1938), [anon_sym___stdcall] = ACTIONS(1938), [anon_sym___fastcall] = ACTIONS(1938), [anon_sym___thiscall] = ACTIONS(1938), [anon_sym___vectorcall] = ACTIONS(1938), [anon_sym_LBRACE] = ACTIONS(1940), [anon_sym_LBRACK] = ACTIONS(1938), [anon_sym_static] = ACTIONS(1938), [anon_sym_register] = ACTIONS(1938), [anon_sym_inline] = ACTIONS(1938), [anon_sym_thread_local] = ACTIONS(1938), [anon_sym_const] = ACTIONS(1938), [anon_sym_volatile] = ACTIONS(1938), [anon_sym_restrict] = ACTIONS(1938), [anon_sym__Atomic] = ACTIONS(1938), [anon_sym_mutable] = ACTIONS(1938), [anon_sym_constexpr] = ACTIONS(1938), [anon_sym_signed] = ACTIONS(1938), [anon_sym_unsigned] = ACTIONS(1938), [anon_sym_long] = ACTIONS(1938), [anon_sym_short] = ACTIONS(1938), [sym_primitive_type] = ACTIONS(1938), [anon_sym_enum] = ACTIONS(1938), [anon_sym_class] = ACTIONS(1938), [anon_sym_struct] = ACTIONS(1938), [anon_sym_union] = ACTIONS(1938), [anon_sym_if] = ACTIONS(1938), [anon_sym_else] = ACTIONS(1938), [anon_sym_switch] = ACTIONS(1938), [anon_sym_case] = ACTIONS(1938), [anon_sym_default] = ACTIONS(1938), [anon_sym_while] = ACTIONS(1938), [anon_sym_do] = ACTIONS(1938), [anon_sym_for] = ACTIONS(1938), [anon_sym_return] = ACTIONS(1938), [anon_sym_break] = ACTIONS(1938), [anon_sym_continue] = ACTIONS(1938), [anon_sym_goto] = ACTIONS(1938), [anon_sym_DASH_DASH] = ACTIONS(1940), [anon_sym_PLUS_PLUS] = ACTIONS(1940), [anon_sym_sizeof] = ACTIONS(1938), [sym_number_literal] = ACTIONS(1940), [anon_sym_L_SQUOTE] = ACTIONS(1940), [anon_sym_u_SQUOTE] = ACTIONS(1940), [anon_sym_U_SQUOTE] = ACTIONS(1940), [anon_sym_u8_SQUOTE] = ACTIONS(1940), [anon_sym_SQUOTE] = ACTIONS(1940), [anon_sym_L_DQUOTE] = ACTIONS(1940), [anon_sym_u_DQUOTE] = ACTIONS(1940), [anon_sym_U_DQUOTE] = ACTIONS(1940), [anon_sym_u8_DQUOTE] = ACTIONS(1940), [anon_sym_DQUOTE] = ACTIONS(1940), [sym_true] = ACTIONS(1938), [sym_false] = ACTIONS(1938), [sym_null] = ACTIONS(1938), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1938), [anon_sym_virtual] = ACTIONS(1938), [anon_sym_explicit] = ACTIONS(1938), [sym_auto] = ACTIONS(1938), [anon_sym_typename] = ACTIONS(1938), [anon_sym_template] = ACTIONS(1938), [anon_sym_operator] = ACTIONS(1938), [anon_sym_delete] = ACTIONS(1938), [anon_sym_throw] = ACTIONS(1938), [anon_sym_namespace] = ACTIONS(1938), [anon_sym_using] = ACTIONS(1938), [anon_sym_static_assert] = ACTIONS(1938), [anon_sym_co_return] = ACTIONS(1938), [anon_sym_co_yield] = ACTIONS(1938), [anon_sym_try] = ACTIONS(1938), [anon_sym_co_await] = ACTIONS(1938), [anon_sym_new] = ACTIONS(1938), [sym_this] = ACTIONS(1938), [sym_nullptr] = ACTIONS(1938), [sym_raw_string_literal] = ACTIONS(1940), }, [553] = { [sym_identifier] = ACTIONS(1942), [aux_sym_preproc_include_token1] = ACTIONS(1942), [aux_sym_preproc_def_token1] = ACTIONS(1942), [aux_sym_preproc_if_token1] = ACTIONS(1942), [aux_sym_preproc_if_token2] = ACTIONS(1942), [aux_sym_preproc_ifdef_token1] = ACTIONS(1942), [aux_sym_preproc_ifdef_token2] = ACTIONS(1942), [sym_preproc_directive] = ACTIONS(1942), [anon_sym_LPAREN2] = ACTIONS(1944), [anon_sym_BANG] = ACTIONS(1944), [anon_sym_TILDE] = ACTIONS(1944), [anon_sym_DASH] = ACTIONS(1942), [anon_sym_PLUS] = ACTIONS(1942), [anon_sym_STAR] = ACTIONS(1944), [anon_sym_AMP_AMP] = ACTIONS(1944), [anon_sym_AMP] = ACTIONS(1942), [anon_sym_SEMI] = ACTIONS(1944), [anon_sym_typedef] = ACTIONS(1942), [anon_sym_extern] = ACTIONS(1942), [anon_sym___attribute__] = ACTIONS(1942), [anon_sym_COLON_COLON] = ACTIONS(1944), [anon_sym_LBRACK_LBRACK] = ACTIONS(1944), [anon_sym___declspec] = ACTIONS(1942), [anon_sym___based] = ACTIONS(1942), [anon_sym___cdecl] = ACTIONS(1942), [anon_sym___clrcall] = ACTIONS(1942), [anon_sym___stdcall] = ACTIONS(1942), [anon_sym___fastcall] = ACTIONS(1942), [anon_sym___thiscall] = ACTIONS(1942), [anon_sym___vectorcall] = ACTIONS(1942), [anon_sym_LBRACE] = ACTIONS(1944), [anon_sym_LBRACK] = ACTIONS(1942), [anon_sym_static] = ACTIONS(1942), [anon_sym_register] = ACTIONS(1942), [anon_sym_inline] = ACTIONS(1942), [anon_sym_thread_local] = ACTIONS(1942), [anon_sym_const] = ACTIONS(1942), [anon_sym_volatile] = ACTIONS(1942), [anon_sym_restrict] = ACTIONS(1942), [anon_sym__Atomic] = ACTIONS(1942), [anon_sym_mutable] = ACTIONS(1942), [anon_sym_constexpr] = ACTIONS(1942), [anon_sym_signed] = ACTIONS(1942), [anon_sym_unsigned] = ACTIONS(1942), [anon_sym_long] = ACTIONS(1942), [anon_sym_short] = ACTIONS(1942), [sym_primitive_type] = ACTIONS(1942), [anon_sym_enum] = ACTIONS(1942), [anon_sym_class] = ACTIONS(1942), [anon_sym_struct] = ACTIONS(1942), [anon_sym_union] = ACTIONS(1942), [anon_sym_if] = ACTIONS(1942), [anon_sym_else] = ACTIONS(1942), [anon_sym_switch] = ACTIONS(1942), [anon_sym_case] = ACTIONS(1942), [anon_sym_default] = ACTIONS(1942), [anon_sym_while] = ACTIONS(1942), [anon_sym_do] = ACTIONS(1942), [anon_sym_for] = ACTIONS(1942), [anon_sym_return] = ACTIONS(1942), [anon_sym_break] = ACTIONS(1942), [anon_sym_continue] = ACTIONS(1942), [anon_sym_goto] = ACTIONS(1942), [anon_sym_DASH_DASH] = ACTIONS(1944), [anon_sym_PLUS_PLUS] = ACTIONS(1944), [anon_sym_sizeof] = ACTIONS(1942), [sym_number_literal] = ACTIONS(1944), [anon_sym_L_SQUOTE] = ACTIONS(1944), [anon_sym_u_SQUOTE] = ACTIONS(1944), [anon_sym_U_SQUOTE] = ACTIONS(1944), [anon_sym_u8_SQUOTE] = ACTIONS(1944), [anon_sym_SQUOTE] = ACTIONS(1944), [anon_sym_L_DQUOTE] = ACTIONS(1944), [anon_sym_u_DQUOTE] = ACTIONS(1944), [anon_sym_U_DQUOTE] = ACTIONS(1944), [anon_sym_u8_DQUOTE] = ACTIONS(1944), [anon_sym_DQUOTE] = ACTIONS(1944), [sym_true] = ACTIONS(1942), [sym_false] = ACTIONS(1942), [sym_null] = ACTIONS(1942), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1942), [anon_sym_virtual] = ACTIONS(1942), [anon_sym_explicit] = ACTIONS(1942), [sym_auto] = ACTIONS(1942), [anon_sym_typename] = ACTIONS(1942), [anon_sym_template] = ACTIONS(1942), [anon_sym_operator] = ACTIONS(1942), [anon_sym_delete] = ACTIONS(1942), [anon_sym_throw] = ACTIONS(1942), [anon_sym_namespace] = ACTIONS(1942), [anon_sym_using] = ACTIONS(1942), [anon_sym_static_assert] = ACTIONS(1942), [anon_sym_co_return] = ACTIONS(1942), [anon_sym_co_yield] = ACTIONS(1942), [anon_sym_try] = ACTIONS(1942), [anon_sym_co_await] = ACTIONS(1942), [anon_sym_new] = ACTIONS(1942), [sym_this] = ACTIONS(1942), [sym_nullptr] = ACTIONS(1942), [sym_raw_string_literal] = ACTIONS(1944), }, [554] = { [sym_identifier] = ACTIONS(1756), [aux_sym_preproc_include_token1] = ACTIONS(1756), [aux_sym_preproc_def_token1] = ACTIONS(1756), [anon_sym_COMMA] = ACTIONS(1936), [aux_sym_preproc_if_token1] = ACTIONS(1756), [aux_sym_preproc_ifdef_token1] = ACTIONS(1756), [aux_sym_preproc_ifdef_token2] = ACTIONS(1756), [sym_preproc_directive] = ACTIONS(1756), [anon_sym_LPAREN2] = ACTIONS(1758), [anon_sym_BANG] = ACTIONS(1758), [anon_sym_TILDE] = ACTIONS(1758), [anon_sym_DASH] = ACTIONS(1756), [anon_sym_PLUS] = ACTIONS(1756), [anon_sym_STAR] = ACTIONS(1758), [anon_sym_AMP_AMP] = ACTIONS(1758), [anon_sym_AMP] = ACTIONS(1756), [anon_sym_SEMI] = ACTIONS(1936), [anon_sym_typedef] = ACTIONS(1756), [anon_sym_extern] = ACTIONS(1756), [anon_sym___attribute__] = ACTIONS(1756), [anon_sym_COLON_COLON] = ACTIONS(1758), [anon_sym_LBRACK_LBRACK] = ACTIONS(1758), [anon_sym___declspec] = ACTIONS(1756), [anon_sym___based] = ACTIONS(1756), [anon_sym___cdecl] = ACTIONS(1756), [anon_sym___clrcall] = ACTIONS(1756), [anon_sym___stdcall] = ACTIONS(1756), [anon_sym___fastcall] = ACTIONS(1756), [anon_sym___thiscall] = ACTIONS(1756), [anon_sym___vectorcall] = ACTIONS(1756), [anon_sym_LBRACE] = ACTIONS(1758), [anon_sym_RBRACE] = ACTIONS(1758), [anon_sym_LBRACK] = ACTIONS(1756), [anon_sym_static] = ACTIONS(1756), [anon_sym_register] = ACTIONS(1756), [anon_sym_inline] = ACTIONS(1756), [anon_sym_thread_local] = ACTIONS(1756), [anon_sym_const] = ACTIONS(1756), [anon_sym_volatile] = ACTIONS(1756), [anon_sym_restrict] = ACTIONS(1756), [anon_sym__Atomic] = ACTIONS(1756), [anon_sym_mutable] = ACTIONS(1756), [anon_sym_constexpr] = ACTIONS(1756), [anon_sym_signed] = ACTIONS(1756), [anon_sym_unsigned] = ACTIONS(1756), [anon_sym_long] = ACTIONS(1756), [anon_sym_short] = ACTIONS(1756), [sym_primitive_type] = ACTIONS(1756), [anon_sym_enum] = ACTIONS(1756), [anon_sym_class] = ACTIONS(1756), [anon_sym_struct] = ACTIONS(1756), [anon_sym_union] = ACTIONS(1756), [anon_sym_if] = ACTIONS(1756), [anon_sym_switch] = ACTIONS(1756), [anon_sym_case] = ACTIONS(1756), [anon_sym_default] = ACTIONS(1756), [anon_sym_while] = ACTIONS(1756), [anon_sym_do] = ACTIONS(1756), [anon_sym_for] = ACTIONS(1756), [anon_sym_return] = ACTIONS(1756), [anon_sym_break] = ACTIONS(1756), [anon_sym_continue] = ACTIONS(1756), [anon_sym_goto] = ACTIONS(1756), [anon_sym_DASH_DASH] = ACTIONS(1758), [anon_sym_PLUS_PLUS] = ACTIONS(1758), [anon_sym_sizeof] = ACTIONS(1756), [sym_number_literal] = ACTIONS(1758), [anon_sym_L_SQUOTE] = ACTIONS(1758), [anon_sym_u_SQUOTE] = ACTIONS(1758), [anon_sym_U_SQUOTE] = ACTIONS(1758), [anon_sym_u8_SQUOTE] = ACTIONS(1758), [anon_sym_SQUOTE] = ACTIONS(1758), [anon_sym_L_DQUOTE] = ACTIONS(1758), [anon_sym_u_DQUOTE] = ACTIONS(1758), [anon_sym_U_DQUOTE] = ACTIONS(1758), [anon_sym_u8_DQUOTE] = ACTIONS(1758), [anon_sym_DQUOTE] = ACTIONS(1758), [sym_true] = ACTIONS(1756), [sym_false] = ACTIONS(1756), [sym_null] = ACTIONS(1756), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1756), [anon_sym_virtual] = ACTIONS(1756), [anon_sym_explicit] = ACTIONS(1756), [sym_auto] = ACTIONS(1756), [anon_sym_typename] = ACTIONS(1756), [anon_sym_template] = ACTIONS(1756), [anon_sym_operator] = ACTIONS(1756), [anon_sym_delete] = ACTIONS(1756), [anon_sym_throw] = ACTIONS(1756), [anon_sym_namespace] = ACTIONS(1756), [anon_sym_using] = ACTIONS(1756), [anon_sym_static_assert] = ACTIONS(1756), [anon_sym_co_return] = ACTIONS(1756), [anon_sym_co_yield] = ACTIONS(1756), [anon_sym_try] = ACTIONS(1756), [anon_sym_co_await] = ACTIONS(1756), [anon_sym_new] = ACTIONS(1756), [sym_this] = ACTIONS(1756), [sym_nullptr] = ACTIONS(1756), [sym_raw_string_literal] = ACTIONS(1758), }, [555] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [556] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [557] = { [sym_identifier] = ACTIONS(1844), [aux_sym_preproc_include_token1] = ACTIONS(1844), [aux_sym_preproc_def_token1] = ACTIONS(1844), [aux_sym_preproc_if_token1] = ACTIONS(1844), [aux_sym_preproc_ifdef_token1] = ACTIONS(1844), [aux_sym_preproc_ifdef_token2] = ACTIONS(1844), [sym_preproc_directive] = ACTIONS(1844), [anon_sym_LPAREN2] = ACTIONS(1846), [anon_sym_BANG] = ACTIONS(1846), [anon_sym_TILDE] = ACTIONS(1846), [anon_sym_DASH] = ACTIONS(1844), [anon_sym_PLUS] = ACTIONS(1844), [anon_sym_STAR] = ACTIONS(1846), [anon_sym_AMP_AMP] = ACTIONS(1846), [anon_sym_AMP] = ACTIONS(1844), [anon_sym_SEMI] = ACTIONS(1846), [anon_sym_typedef] = ACTIONS(1844), [anon_sym_extern] = ACTIONS(1844), [anon_sym___attribute__] = ACTIONS(1844), [anon_sym_COLON_COLON] = ACTIONS(1846), [anon_sym_LBRACK_LBRACK] = ACTIONS(1846), [anon_sym___declspec] = ACTIONS(1844), [anon_sym___based] = ACTIONS(1844), [anon_sym___cdecl] = ACTIONS(1844), [anon_sym___clrcall] = ACTIONS(1844), [anon_sym___stdcall] = ACTIONS(1844), [anon_sym___fastcall] = ACTIONS(1844), [anon_sym___thiscall] = ACTIONS(1844), [anon_sym___vectorcall] = ACTIONS(1844), [anon_sym_LBRACE] = ACTIONS(1846), [anon_sym_RBRACE] = ACTIONS(1846), [anon_sym_LBRACK] = ACTIONS(1844), [anon_sym_static] = ACTIONS(1844), [anon_sym_register] = ACTIONS(1844), [anon_sym_inline] = ACTIONS(1844), [anon_sym_thread_local] = ACTIONS(1844), [anon_sym_const] = ACTIONS(1844), [anon_sym_volatile] = ACTIONS(1844), [anon_sym_restrict] = ACTIONS(1844), [anon_sym__Atomic] = ACTIONS(1844), [anon_sym_mutable] = ACTIONS(1844), [anon_sym_constexpr] = ACTIONS(1844), [anon_sym_signed] = ACTIONS(1844), [anon_sym_unsigned] = ACTIONS(1844), [anon_sym_long] = ACTIONS(1844), [anon_sym_short] = ACTIONS(1844), [sym_primitive_type] = ACTIONS(1844), [anon_sym_enum] = ACTIONS(1844), [anon_sym_class] = ACTIONS(1844), [anon_sym_struct] = ACTIONS(1844), [anon_sym_union] = ACTIONS(1844), [anon_sym_if] = ACTIONS(1844), [anon_sym_else] = ACTIONS(1844), [anon_sym_switch] = ACTIONS(1844), [anon_sym_case] = ACTIONS(1844), [anon_sym_default] = ACTIONS(1844), [anon_sym_while] = ACTIONS(1844), [anon_sym_do] = ACTIONS(1844), [anon_sym_for] = ACTIONS(1844), [anon_sym_return] = ACTIONS(1844), [anon_sym_break] = ACTIONS(1844), [anon_sym_continue] = ACTIONS(1844), [anon_sym_goto] = ACTIONS(1844), [anon_sym_DASH_DASH] = ACTIONS(1846), [anon_sym_PLUS_PLUS] = ACTIONS(1846), [anon_sym_sizeof] = ACTIONS(1844), [sym_number_literal] = ACTIONS(1846), [anon_sym_L_SQUOTE] = ACTIONS(1846), [anon_sym_u_SQUOTE] = ACTIONS(1846), [anon_sym_U_SQUOTE] = ACTIONS(1846), [anon_sym_u8_SQUOTE] = ACTIONS(1846), [anon_sym_SQUOTE] = ACTIONS(1846), [anon_sym_L_DQUOTE] = ACTIONS(1846), [anon_sym_u_DQUOTE] = ACTIONS(1846), [anon_sym_U_DQUOTE] = ACTIONS(1846), [anon_sym_u8_DQUOTE] = ACTIONS(1846), [anon_sym_DQUOTE] = ACTIONS(1846), [sym_true] = ACTIONS(1844), [sym_false] = ACTIONS(1844), [sym_null] = ACTIONS(1844), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1844), [anon_sym_virtual] = ACTIONS(1844), [anon_sym_explicit] = ACTIONS(1844), [sym_auto] = ACTIONS(1844), [anon_sym_typename] = ACTIONS(1844), [anon_sym_template] = ACTIONS(1844), [anon_sym_operator] = ACTIONS(1844), [anon_sym_delete] = ACTIONS(1844), [anon_sym_throw] = ACTIONS(1844), [anon_sym_namespace] = ACTIONS(1844), [anon_sym_using] = ACTIONS(1844), [anon_sym_static_assert] = ACTIONS(1844), [anon_sym_co_return] = ACTIONS(1844), [anon_sym_co_yield] = ACTIONS(1844), [anon_sym_try] = ACTIONS(1844), [anon_sym_co_await] = ACTIONS(1844), [anon_sym_new] = ACTIONS(1844), [sym_this] = ACTIONS(1844), [sym_nullptr] = ACTIONS(1844), [sym_raw_string_literal] = ACTIONS(1846), }, [558] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_RBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [559] = { [sym_identifier] = ACTIONS(1856), [aux_sym_preproc_include_token1] = ACTIONS(1856), [aux_sym_preproc_def_token1] = ACTIONS(1856), [aux_sym_preproc_if_token1] = ACTIONS(1856), [aux_sym_preproc_if_token2] = ACTIONS(1856), [aux_sym_preproc_ifdef_token1] = ACTIONS(1856), [aux_sym_preproc_ifdef_token2] = ACTIONS(1856), [sym_preproc_directive] = ACTIONS(1856), [anon_sym_LPAREN2] = ACTIONS(1858), [anon_sym_BANG] = ACTIONS(1858), [anon_sym_TILDE] = ACTIONS(1858), [anon_sym_DASH] = ACTIONS(1856), [anon_sym_PLUS] = ACTIONS(1856), [anon_sym_STAR] = ACTIONS(1858), [anon_sym_AMP_AMP] = ACTIONS(1858), [anon_sym_AMP] = ACTIONS(1856), [anon_sym_SEMI] = ACTIONS(1858), [anon_sym_typedef] = ACTIONS(1856), [anon_sym_extern] = ACTIONS(1856), [anon_sym___attribute__] = ACTIONS(1856), [anon_sym_COLON_COLON] = ACTIONS(1858), [anon_sym_LBRACK_LBRACK] = ACTIONS(1858), [anon_sym___declspec] = ACTIONS(1856), [anon_sym___based] = ACTIONS(1856), [anon_sym___cdecl] = ACTIONS(1856), [anon_sym___clrcall] = ACTIONS(1856), [anon_sym___stdcall] = ACTIONS(1856), [anon_sym___fastcall] = ACTIONS(1856), [anon_sym___thiscall] = ACTIONS(1856), [anon_sym___vectorcall] = ACTIONS(1856), [anon_sym_LBRACE] = ACTIONS(1858), [anon_sym_LBRACK] = ACTIONS(1856), [anon_sym_static] = ACTIONS(1856), [anon_sym_register] = ACTIONS(1856), [anon_sym_inline] = ACTIONS(1856), [anon_sym_thread_local] = ACTIONS(1856), [anon_sym_const] = ACTIONS(1856), [anon_sym_volatile] = ACTIONS(1856), [anon_sym_restrict] = ACTIONS(1856), [anon_sym__Atomic] = ACTIONS(1856), [anon_sym_mutable] = ACTIONS(1856), [anon_sym_constexpr] = ACTIONS(1856), [anon_sym_signed] = ACTIONS(1856), [anon_sym_unsigned] = ACTIONS(1856), [anon_sym_long] = ACTIONS(1856), [anon_sym_short] = ACTIONS(1856), [sym_primitive_type] = ACTIONS(1856), [anon_sym_enum] = ACTIONS(1856), [anon_sym_class] = ACTIONS(1856), [anon_sym_struct] = ACTIONS(1856), [anon_sym_union] = ACTIONS(1856), [anon_sym_if] = ACTIONS(1856), [anon_sym_else] = ACTIONS(1856), [anon_sym_switch] = ACTIONS(1856), [anon_sym_case] = ACTIONS(1856), [anon_sym_default] = ACTIONS(1856), [anon_sym_while] = ACTIONS(1856), [anon_sym_do] = ACTIONS(1856), [anon_sym_for] = ACTIONS(1856), [anon_sym_return] = ACTIONS(1856), [anon_sym_break] = ACTIONS(1856), [anon_sym_continue] = ACTIONS(1856), [anon_sym_goto] = ACTIONS(1856), [anon_sym_DASH_DASH] = ACTIONS(1858), [anon_sym_PLUS_PLUS] = ACTIONS(1858), [anon_sym_sizeof] = ACTIONS(1856), [sym_number_literal] = ACTIONS(1858), [anon_sym_L_SQUOTE] = ACTIONS(1858), [anon_sym_u_SQUOTE] = ACTIONS(1858), [anon_sym_U_SQUOTE] = ACTIONS(1858), [anon_sym_u8_SQUOTE] = ACTIONS(1858), [anon_sym_SQUOTE] = ACTIONS(1858), [anon_sym_L_DQUOTE] = ACTIONS(1858), [anon_sym_u_DQUOTE] = ACTIONS(1858), [anon_sym_U_DQUOTE] = ACTIONS(1858), [anon_sym_u8_DQUOTE] = ACTIONS(1858), [anon_sym_DQUOTE] = ACTIONS(1858), [sym_true] = ACTIONS(1856), [sym_false] = ACTIONS(1856), [sym_null] = ACTIONS(1856), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1856), [anon_sym_virtual] = ACTIONS(1856), [anon_sym_explicit] = ACTIONS(1856), [sym_auto] = ACTIONS(1856), [anon_sym_typename] = ACTIONS(1856), [anon_sym_template] = ACTIONS(1856), [anon_sym_operator] = ACTIONS(1856), [anon_sym_delete] = ACTIONS(1856), [anon_sym_throw] = ACTIONS(1856), [anon_sym_namespace] = ACTIONS(1856), [anon_sym_using] = ACTIONS(1856), [anon_sym_static_assert] = ACTIONS(1856), [anon_sym_co_return] = ACTIONS(1856), [anon_sym_co_yield] = ACTIONS(1856), [anon_sym_try] = ACTIONS(1856), [anon_sym_co_await] = ACTIONS(1856), [anon_sym_new] = ACTIONS(1856), [sym_this] = ACTIONS(1856), [sym_nullptr] = ACTIONS(1856), [sym_raw_string_literal] = ACTIONS(1858), }, [560] = { [sym_identifier] = ACTIONS(1844), [aux_sym_preproc_include_token1] = ACTIONS(1844), [aux_sym_preproc_def_token1] = ACTIONS(1844), [aux_sym_preproc_if_token1] = ACTIONS(1844), [aux_sym_preproc_ifdef_token1] = ACTIONS(1844), [aux_sym_preproc_ifdef_token2] = ACTIONS(1844), [sym_preproc_directive] = ACTIONS(1844), [anon_sym_LPAREN2] = ACTIONS(1846), [anon_sym_BANG] = ACTIONS(1846), [anon_sym_TILDE] = ACTIONS(1846), [anon_sym_DASH] = ACTIONS(1844), [anon_sym_PLUS] = ACTIONS(1844), [anon_sym_STAR] = ACTIONS(1846), [anon_sym_AMP_AMP] = ACTIONS(1846), [anon_sym_AMP] = ACTIONS(1844), [anon_sym_SEMI] = ACTIONS(1846), [anon_sym_typedef] = ACTIONS(1844), [anon_sym_extern] = ACTIONS(1844), [anon_sym___attribute__] = ACTIONS(1844), [anon_sym_COLON_COLON] = ACTIONS(1846), [anon_sym_LBRACK_LBRACK] = ACTIONS(1846), [anon_sym___declspec] = ACTIONS(1844), [anon_sym___based] = ACTIONS(1844), [anon_sym___cdecl] = ACTIONS(1844), [anon_sym___clrcall] = ACTIONS(1844), [anon_sym___stdcall] = ACTIONS(1844), [anon_sym___fastcall] = ACTIONS(1844), [anon_sym___thiscall] = ACTIONS(1844), [anon_sym___vectorcall] = ACTIONS(1844), [anon_sym_LBRACE] = ACTIONS(1846), [anon_sym_RBRACE] = ACTIONS(1846), [anon_sym_LBRACK] = ACTIONS(1844), [anon_sym_static] = ACTIONS(1844), [anon_sym_register] = ACTIONS(1844), [anon_sym_inline] = ACTIONS(1844), [anon_sym_thread_local] = ACTIONS(1844), [anon_sym_const] = ACTIONS(1844), [anon_sym_volatile] = ACTIONS(1844), [anon_sym_restrict] = ACTIONS(1844), [anon_sym__Atomic] = ACTIONS(1844), [anon_sym_mutable] = ACTIONS(1844), [anon_sym_constexpr] = ACTIONS(1844), [anon_sym_signed] = ACTIONS(1844), [anon_sym_unsigned] = ACTIONS(1844), [anon_sym_long] = ACTIONS(1844), [anon_sym_short] = ACTIONS(1844), [sym_primitive_type] = ACTIONS(1844), [anon_sym_enum] = ACTIONS(1844), [anon_sym_class] = ACTIONS(1844), [anon_sym_struct] = ACTIONS(1844), [anon_sym_union] = ACTIONS(1844), [anon_sym_if] = ACTIONS(1844), [anon_sym_else] = ACTIONS(1844), [anon_sym_switch] = ACTIONS(1844), [anon_sym_case] = ACTIONS(1844), [anon_sym_default] = ACTIONS(1844), [anon_sym_while] = ACTIONS(1844), [anon_sym_do] = ACTIONS(1844), [anon_sym_for] = ACTIONS(1844), [anon_sym_return] = ACTIONS(1844), [anon_sym_break] = ACTIONS(1844), [anon_sym_continue] = ACTIONS(1844), [anon_sym_goto] = ACTIONS(1844), [anon_sym_DASH_DASH] = ACTIONS(1846), [anon_sym_PLUS_PLUS] = ACTIONS(1846), [anon_sym_sizeof] = ACTIONS(1844), [sym_number_literal] = ACTIONS(1846), [anon_sym_L_SQUOTE] = ACTIONS(1846), [anon_sym_u_SQUOTE] = ACTIONS(1846), [anon_sym_U_SQUOTE] = ACTIONS(1846), [anon_sym_u8_SQUOTE] = ACTIONS(1846), [anon_sym_SQUOTE] = ACTIONS(1846), [anon_sym_L_DQUOTE] = ACTIONS(1846), [anon_sym_u_DQUOTE] = ACTIONS(1846), [anon_sym_U_DQUOTE] = ACTIONS(1846), [anon_sym_u8_DQUOTE] = ACTIONS(1846), [anon_sym_DQUOTE] = ACTIONS(1846), [sym_true] = ACTIONS(1844), [sym_false] = ACTIONS(1844), [sym_null] = ACTIONS(1844), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1844), [anon_sym_virtual] = ACTIONS(1844), [anon_sym_explicit] = ACTIONS(1844), [sym_auto] = ACTIONS(1844), [anon_sym_typename] = ACTIONS(1844), [anon_sym_template] = ACTIONS(1844), [anon_sym_operator] = ACTIONS(1844), [anon_sym_delete] = ACTIONS(1844), [anon_sym_throw] = ACTIONS(1844), [anon_sym_namespace] = ACTIONS(1844), [anon_sym_using] = ACTIONS(1844), [anon_sym_static_assert] = ACTIONS(1844), [anon_sym_co_return] = ACTIONS(1844), [anon_sym_co_yield] = ACTIONS(1844), [anon_sym_try] = ACTIONS(1844), [anon_sym_co_await] = ACTIONS(1844), [anon_sym_new] = ACTIONS(1844), [sym_this] = ACTIONS(1844), [sym_nullptr] = ACTIONS(1844), [sym_raw_string_literal] = ACTIONS(1846), }, [561] = { [sym_identifier] = ACTIONS(1982), [aux_sym_preproc_include_token1] = ACTIONS(1982), [aux_sym_preproc_def_token1] = ACTIONS(1982), [aux_sym_preproc_if_token1] = ACTIONS(1982), [aux_sym_preproc_if_token2] = ACTIONS(1982), [aux_sym_preproc_ifdef_token1] = ACTIONS(1982), [aux_sym_preproc_ifdef_token2] = ACTIONS(1982), [sym_preproc_directive] = ACTIONS(1982), [anon_sym_LPAREN2] = ACTIONS(1984), [anon_sym_BANG] = ACTIONS(1984), [anon_sym_TILDE] = ACTIONS(1984), [anon_sym_DASH] = ACTIONS(1982), [anon_sym_PLUS] = ACTIONS(1982), [anon_sym_STAR] = ACTIONS(1984), [anon_sym_AMP_AMP] = ACTIONS(1984), [anon_sym_AMP] = ACTIONS(1982), [anon_sym_SEMI] = ACTIONS(1984), [anon_sym_typedef] = ACTIONS(1982), [anon_sym_extern] = ACTIONS(1982), [anon_sym___attribute__] = ACTIONS(1982), [anon_sym_COLON_COLON] = ACTIONS(1984), [anon_sym_LBRACK_LBRACK] = ACTIONS(1984), [anon_sym___declspec] = ACTIONS(1982), [anon_sym___based] = ACTIONS(1982), [anon_sym___cdecl] = ACTIONS(1982), [anon_sym___clrcall] = ACTIONS(1982), [anon_sym___stdcall] = ACTIONS(1982), [anon_sym___fastcall] = ACTIONS(1982), [anon_sym___thiscall] = ACTIONS(1982), [anon_sym___vectorcall] = ACTIONS(1982), [anon_sym_LBRACE] = ACTIONS(1984), [anon_sym_LBRACK] = ACTIONS(1982), [anon_sym_static] = ACTIONS(1982), [anon_sym_register] = ACTIONS(1982), [anon_sym_inline] = ACTIONS(1982), [anon_sym_thread_local] = ACTIONS(1982), [anon_sym_const] = ACTIONS(1982), [anon_sym_volatile] = ACTIONS(1982), [anon_sym_restrict] = ACTIONS(1982), [anon_sym__Atomic] = ACTIONS(1982), [anon_sym_mutable] = ACTIONS(1982), [anon_sym_constexpr] = ACTIONS(1982), [anon_sym_signed] = ACTIONS(1982), [anon_sym_unsigned] = ACTIONS(1982), [anon_sym_long] = ACTIONS(1982), [anon_sym_short] = ACTIONS(1982), [sym_primitive_type] = ACTIONS(1982), [anon_sym_enum] = ACTIONS(1982), [anon_sym_class] = ACTIONS(1982), [anon_sym_struct] = ACTIONS(1982), [anon_sym_union] = ACTIONS(1982), [anon_sym_if] = ACTIONS(1982), [anon_sym_else] = ACTIONS(1982), [anon_sym_switch] = ACTIONS(1982), [anon_sym_case] = ACTIONS(1982), [anon_sym_default] = ACTIONS(1982), [anon_sym_while] = ACTIONS(1982), [anon_sym_do] = ACTIONS(1982), [anon_sym_for] = ACTIONS(1982), [anon_sym_return] = ACTIONS(1982), [anon_sym_break] = ACTIONS(1982), [anon_sym_continue] = ACTIONS(1982), [anon_sym_goto] = ACTIONS(1982), [anon_sym_DASH_DASH] = ACTIONS(1984), [anon_sym_PLUS_PLUS] = ACTIONS(1984), [anon_sym_sizeof] = ACTIONS(1982), [sym_number_literal] = ACTIONS(1984), [anon_sym_L_SQUOTE] = ACTIONS(1984), [anon_sym_u_SQUOTE] = ACTIONS(1984), [anon_sym_U_SQUOTE] = ACTIONS(1984), [anon_sym_u8_SQUOTE] = ACTIONS(1984), [anon_sym_SQUOTE] = ACTIONS(1984), [anon_sym_L_DQUOTE] = ACTIONS(1984), [anon_sym_u_DQUOTE] = ACTIONS(1984), [anon_sym_U_DQUOTE] = ACTIONS(1984), [anon_sym_u8_DQUOTE] = ACTIONS(1984), [anon_sym_DQUOTE] = ACTIONS(1984), [sym_true] = ACTIONS(1982), [sym_false] = ACTIONS(1982), [sym_null] = ACTIONS(1982), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1982), [anon_sym_virtual] = ACTIONS(1982), [anon_sym_explicit] = ACTIONS(1982), [sym_auto] = ACTIONS(1982), [anon_sym_typename] = ACTIONS(1982), [anon_sym_template] = ACTIONS(1982), [anon_sym_operator] = ACTIONS(1982), [anon_sym_delete] = ACTIONS(1982), [anon_sym_throw] = ACTIONS(1982), [anon_sym_namespace] = ACTIONS(1982), [anon_sym_using] = ACTIONS(1982), [anon_sym_static_assert] = ACTIONS(1982), [anon_sym_co_return] = ACTIONS(1982), [anon_sym_co_yield] = ACTIONS(1982), [anon_sym_try] = ACTIONS(1982), [anon_sym_co_await] = ACTIONS(1982), [anon_sym_new] = ACTIONS(1982), [sym_this] = ACTIONS(1982), [sym_nullptr] = ACTIONS(1982), [sym_raw_string_literal] = ACTIONS(1984), }, [562] = { [sym_identifier] = ACTIONS(2014), [aux_sym_preproc_include_token1] = ACTIONS(2014), [aux_sym_preproc_def_token1] = ACTIONS(2014), [aux_sym_preproc_if_token1] = ACTIONS(2014), [aux_sym_preproc_ifdef_token1] = ACTIONS(2014), [aux_sym_preproc_ifdef_token2] = ACTIONS(2014), [sym_preproc_directive] = ACTIONS(2014), [anon_sym_LPAREN2] = ACTIONS(2016), [anon_sym_BANG] = ACTIONS(2016), [anon_sym_TILDE] = ACTIONS(2016), [anon_sym_DASH] = ACTIONS(2014), [anon_sym_PLUS] = ACTIONS(2014), [anon_sym_STAR] = ACTIONS(2016), [anon_sym_AMP_AMP] = ACTIONS(2016), [anon_sym_AMP] = ACTIONS(2014), [anon_sym_SEMI] = ACTIONS(2016), [anon_sym_typedef] = ACTIONS(2014), [anon_sym_extern] = ACTIONS(2014), [anon_sym___attribute__] = ACTIONS(2014), [anon_sym_COLON_COLON] = ACTIONS(2016), [anon_sym_LBRACK_LBRACK] = ACTIONS(2016), [anon_sym___declspec] = ACTIONS(2014), [anon_sym___based] = ACTIONS(2014), [anon_sym___cdecl] = ACTIONS(2014), [anon_sym___clrcall] = ACTIONS(2014), [anon_sym___stdcall] = ACTIONS(2014), [anon_sym___fastcall] = ACTIONS(2014), [anon_sym___thiscall] = ACTIONS(2014), [anon_sym___vectorcall] = ACTIONS(2014), [anon_sym_LBRACE] = ACTIONS(2016), [anon_sym_RBRACE] = ACTIONS(2016), [anon_sym_LBRACK] = ACTIONS(2014), [anon_sym_static] = ACTIONS(2014), [anon_sym_register] = ACTIONS(2014), [anon_sym_inline] = ACTIONS(2014), [anon_sym_thread_local] = ACTIONS(2014), [anon_sym_const] = ACTIONS(2014), [anon_sym_volatile] = ACTIONS(2014), [anon_sym_restrict] = ACTIONS(2014), [anon_sym__Atomic] = ACTIONS(2014), [anon_sym_mutable] = ACTIONS(2014), [anon_sym_constexpr] = ACTIONS(2014), [anon_sym_signed] = ACTIONS(2014), [anon_sym_unsigned] = ACTIONS(2014), [anon_sym_long] = ACTIONS(2014), [anon_sym_short] = ACTIONS(2014), [sym_primitive_type] = ACTIONS(2014), [anon_sym_enum] = ACTIONS(2014), [anon_sym_class] = ACTIONS(2014), [anon_sym_struct] = ACTIONS(2014), [anon_sym_union] = ACTIONS(2014), [anon_sym_if] = ACTIONS(2014), [anon_sym_else] = ACTIONS(2014), [anon_sym_switch] = ACTIONS(2014), [anon_sym_case] = ACTIONS(2014), [anon_sym_default] = ACTIONS(2014), [anon_sym_while] = ACTIONS(2014), [anon_sym_do] = ACTIONS(2014), [anon_sym_for] = ACTIONS(2014), [anon_sym_return] = ACTIONS(2014), [anon_sym_break] = ACTIONS(2014), [anon_sym_continue] = ACTIONS(2014), [anon_sym_goto] = ACTIONS(2014), [anon_sym_DASH_DASH] = ACTIONS(2016), [anon_sym_PLUS_PLUS] = ACTIONS(2016), [anon_sym_sizeof] = ACTIONS(2014), [sym_number_literal] = ACTIONS(2016), [anon_sym_L_SQUOTE] = ACTIONS(2016), [anon_sym_u_SQUOTE] = ACTIONS(2016), [anon_sym_U_SQUOTE] = ACTIONS(2016), [anon_sym_u8_SQUOTE] = ACTIONS(2016), [anon_sym_SQUOTE] = ACTIONS(2016), [anon_sym_L_DQUOTE] = ACTIONS(2016), [anon_sym_u_DQUOTE] = ACTIONS(2016), [anon_sym_U_DQUOTE] = ACTIONS(2016), [anon_sym_u8_DQUOTE] = ACTIONS(2016), [anon_sym_DQUOTE] = ACTIONS(2016), [sym_true] = ACTIONS(2014), [sym_false] = ACTIONS(2014), [sym_null] = ACTIONS(2014), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2014), [anon_sym_virtual] = ACTIONS(2014), [anon_sym_explicit] = ACTIONS(2014), [sym_auto] = ACTIONS(2014), [anon_sym_typename] = ACTIONS(2014), [anon_sym_template] = ACTIONS(2014), [anon_sym_operator] = ACTIONS(2014), [anon_sym_delete] = ACTIONS(2014), [anon_sym_throw] = ACTIONS(2014), [anon_sym_namespace] = ACTIONS(2014), [anon_sym_using] = ACTIONS(2014), [anon_sym_static_assert] = ACTIONS(2014), [anon_sym_co_return] = ACTIONS(2014), [anon_sym_co_yield] = ACTIONS(2014), [anon_sym_try] = ACTIONS(2014), [anon_sym_co_await] = ACTIONS(2014), [anon_sym_new] = ACTIONS(2014), [sym_this] = ACTIONS(2014), [sym_nullptr] = ACTIONS(2014), [sym_raw_string_literal] = ACTIONS(2016), }, [563] = { [sym_identifier] = ACTIONS(1986), [aux_sym_preproc_include_token1] = ACTIONS(1986), [aux_sym_preproc_def_token1] = ACTIONS(1986), [aux_sym_preproc_if_token1] = ACTIONS(1986), [aux_sym_preproc_if_token2] = ACTIONS(1986), [aux_sym_preproc_ifdef_token1] = ACTIONS(1986), [aux_sym_preproc_ifdef_token2] = ACTIONS(1986), [sym_preproc_directive] = ACTIONS(1986), [anon_sym_LPAREN2] = ACTIONS(1988), [anon_sym_BANG] = ACTIONS(1988), [anon_sym_TILDE] = ACTIONS(1988), [anon_sym_DASH] = ACTIONS(1986), [anon_sym_PLUS] = ACTIONS(1986), [anon_sym_STAR] = ACTIONS(1988), [anon_sym_AMP_AMP] = ACTIONS(1988), [anon_sym_AMP] = ACTIONS(1986), [anon_sym_SEMI] = ACTIONS(1988), [anon_sym_typedef] = ACTIONS(1986), [anon_sym_extern] = ACTIONS(1986), [anon_sym___attribute__] = ACTIONS(1986), [anon_sym_COLON_COLON] = ACTIONS(1988), [anon_sym_LBRACK_LBRACK] = ACTIONS(1988), [anon_sym___declspec] = ACTIONS(1986), [anon_sym___based] = ACTIONS(1986), [anon_sym___cdecl] = ACTIONS(1986), [anon_sym___clrcall] = ACTIONS(1986), [anon_sym___stdcall] = ACTIONS(1986), [anon_sym___fastcall] = ACTIONS(1986), [anon_sym___thiscall] = ACTIONS(1986), [anon_sym___vectorcall] = ACTIONS(1986), [anon_sym_LBRACE] = ACTIONS(1988), [anon_sym_LBRACK] = ACTIONS(1986), [anon_sym_static] = ACTIONS(1986), [anon_sym_register] = ACTIONS(1986), [anon_sym_inline] = ACTIONS(1986), [anon_sym_thread_local] = ACTIONS(1986), [anon_sym_const] = ACTIONS(1986), [anon_sym_volatile] = ACTIONS(1986), [anon_sym_restrict] = ACTIONS(1986), [anon_sym__Atomic] = ACTIONS(1986), [anon_sym_mutable] = ACTIONS(1986), [anon_sym_constexpr] = ACTIONS(1986), [anon_sym_signed] = ACTIONS(1986), [anon_sym_unsigned] = ACTIONS(1986), [anon_sym_long] = ACTIONS(1986), [anon_sym_short] = ACTIONS(1986), [sym_primitive_type] = ACTIONS(1986), [anon_sym_enum] = ACTIONS(1986), [anon_sym_class] = ACTIONS(1986), [anon_sym_struct] = ACTIONS(1986), [anon_sym_union] = ACTIONS(1986), [anon_sym_if] = ACTIONS(1986), [anon_sym_else] = ACTIONS(1986), [anon_sym_switch] = ACTIONS(1986), [anon_sym_case] = ACTIONS(1986), [anon_sym_default] = ACTIONS(1986), [anon_sym_while] = ACTIONS(1986), [anon_sym_do] = ACTIONS(1986), [anon_sym_for] = ACTIONS(1986), [anon_sym_return] = ACTIONS(1986), [anon_sym_break] = ACTIONS(1986), [anon_sym_continue] = ACTIONS(1986), [anon_sym_goto] = ACTIONS(1986), [anon_sym_DASH_DASH] = ACTIONS(1988), [anon_sym_PLUS_PLUS] = ACTIONS(1988), [anon_sym_sizeof] = ACTIONS(1986), [sym_number_literal] = ACTIONS(1988), [anon_sym_L_SQUOTE] = ACTIONS(1988), [anon_sym_u_SQUOTE] = ACTIONS(1988), [anon_sym_U_SQUOTE] = ACTIONS(1988), [anon_sym_u8_SQUOTE] = ACTIONS(1988), [anon_sym_SQUOTE] = ACTIONS(1988), [anon_sym_L_DQUOTE] = ACTIONS(1988), [anon_sym_u_DQUOTE] = ACTIONS(1988), [anon_sym_U_DQUOTE] = ACTIONS(1988), [anon_sym_u8_DQUOTE] = ACTIONS(1988), [anon_sym_DQUOTE] = ACTIONS(1988), [sym_true] = ACTIONS(1986), [sym_false] = ACTIONS(1986), [sym_null] = ACTIONS(1986), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1986), [anon_sym_virtual] = ACTIONS(1986), [anon_sym_explicit] = ACTIONS(1986), [sym_auto] = ACTIONS(1986), [anon_sym_typename] = ACTIONS(1986), [anon_sym_template] = ACTIONS(1986), [anon_sym_operator] = ACTIONS(1986), [anon_sym_delete] = ACTIONS(1986), [anon_sym_throw] = ACTIONS(1986), [anon_sym_namespace] = ACTIONS(1986), [anon_sym_using] = ACTIONS(1986), [anon_sym_static_assert] = ACTIONS(1986), [anon_sym_co_return] = ACTIONS(1986), [anon_sym_co_yield] = ACTIONS(1986), [anon_sym_try] = ACTIONS(1986), [anon_sym_co_await] = ACTIONS(1986), [anon_sym_new] = ACTIONS(1986), [sym_this] = ACTIONS(1986), [sym_nullptr] = ACTIONS(1986), [sym_raw_string_literal] = ACTIONS(1988), }, [564] = { [sym_identifier] = ACTIONS(2010), [aux_sym_preproc_include_token1] = ACTIONS(2010), [aux_sym_preproc_def_token1] = ACTIONS(2010), [aux_sym_preproc_if_token1] = ACTIONS(2010), [aux_sym_preproc_ifdef_token1] = ACTIONS(2010), [aux_sym_preproc_ifdef_token2] = ACTIONS(2010), [sym_preproc_directive] = ACTIONS(2010), [anon_sym_LPAREN2] = ACTIONS(2012), [anon_sym_BANG] = ACTIONS(2012), [anon_sym_TILDE] = ACTIONS(2012), [anon_sym_DASH] = ACTIONS(2010), [anon_sym_PLUS] = ACTIONS(2010), [anon_sym_STAR] = ACTIONS(2012), [anon_sym_AMP_AMP] = ACTIONS(2012), [anon_sym_AMP] = ACTIONS(2010), [anon_sym_SEMI] = ACTIONS(2012), [anon_sym_typedef] = ACTIONS(2010), [anon_sym_extern] = ACTIONS(2010), [anon_sym___attribute__] = ACTIONS(2010), [anon_sym_COLON_COLON] = ACTIONS(2012), [anon_sym_LBRACK_LBRACK] = ACTIONS(2012), [anon_sym___declspec] = ACTIONS(2010), [anon_sym___based] = ACTIONS(2010), [anon_sym___cdecl] = ACTIONS(2010), [anon_sym___clrcall] = ACTIONS(2010), [anon_sym___stdcall] = ACTIONS(2010), [anon_sym___fastcall] = ACTIONS(2010), [anon_sym___thiscall] = ACTIONS(2010), [anon_sym___vectorcall] = ACTIONS(2010), [anon_sym_LBRACE] = ACTIONS(2012), [anon_sym_RBRACE] = ACTIONS(2012), [anon_sym_LBRACK] = ACTIONS(2010), [anon_sym_static] = ACTIONS(2010), [anon_sym_register] = ACTIONS(2010), [anon_sym_inline] = ACTIONS(2010), [anon_sym_thread_local] = ACTIONS(2010), [anon_sym_const] = ACTIONS(2010), [anon_sym_volatile] = ACTIONS(2010), [anon_sym_restrict] = ACTIONS(2010), [anon_sym__Atomic] = ACTIONS(2010), [anon_sym_mutable] = ACTIONS(2010), [anon_sym_constexpr] = ACTIONS(2010), [anon_sym_signed] = ACTIONS(2010), [anon_sym_unsigned] = ACTIONS(2010), [anon_sym_long] = ACTIONS(2010), [anon_sym_short] = ACTIONS(2010), [sym_primitive_type] = ACTIONS(2010), [anon_sym_enum] = ACTIONS(2010), [anon_sym_class] = ACTIONS(2010), [anon_sym_struct] = ACTIONS(2010), [anon_sym_union] = ACTIONS(2010), [anon_sym_if] = ACTIONS(2010), [anon_sym_else] = ACTIONS(2010), [anon_sym_switch] = ACTIONS(2010), [anon_sym_case] = ACTIONS(2010), [anon_sym_default] = ACTIONS(2010), [anon_sym_while] = ACTIONS(2010), [anon_sym_do] = ACTIONS(2010), [anon_sym_for] = ACTIONS(2010), [anon_sym_return] = ACTIONS(2010), [anon_sym_break] = ACTIONS(2010), [anon_sym_continue] = ACTIONS(2010), [anon_sym_goto] = ACTIONS(2010), [anon_sym_DASH_DASH] = ACTIONS(2012), [anon_sym_PLUS_PLUS] = ACTIONS(2012), [anon_sym_sizeof] = ACTIONS(2010), [sym_number_literal] = ACTIONS(2012), [anon_sym_L_SQUOTE] = ACTIONS(2012), [anon_sym_u_SQUOTE] = ACTIONS(2012), [anon_sym_U_SQUOTE] = ACTIONS(2012), [anon_sym_u8_SQUOTE] = ACTIONS(2012), [anon_sym_SQUOTE] = ACTIONS(2012), [anon_sym_L_DQUOTE] = ACTIONS(2012), [anon_sym_u_DQUOTE] = ACTIONS(2012), [anon_sym_U_DQUOTE] = ACTIONS(2012), [anon_sym_u8_DQUOTE] = ACTIONS(2012), [anon_sym_DQUOTE] = ACTIONS(2012), [sym_true] = ACTIONS(2010), [sym_false] = ACTIONS(2010), [sym_null] = ACTIONS(2010), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2010), [anon_sym_virtual] = ACTIONS(2010), [anon_sym_explicit] = ACTIONS(2010), [sym_auto] = ACTIONS(2010), [anon_sym_typename] = ACTIONS(2010), [anon_sym_template] = ACTIONS(2010), [anon_sym_operator] = ACTIONS(2010), [anon_sym_delete] = ACTIONS(2010), [anon_sym_throw] = ACTIONS(2010), [anon_sym_namespace] = ACTIONS(2010), [anon_sym_using] = ACTIONS(2010), [anon_sym_static_assert] = ACTIONS(2010), [anon_sym_co_return] = ACTIONS(2010), [anon_sym_co_yield] = ACTIONS(2010), [anon_sym_try] = ACTIONS(2010), [anon_sym_co_await] = ACTIONS(2010), [anon_sym_new] = ACTIONS(2010), [sym_this] = ACTIONS(2010), [sym_nullptr] = ACTIONS(2010), [sym_raw_string_literal] = ACTIONS(2012), }, [565] = { [sym_identifier] = ACTIONS(2006), [aux_sym_preproc_include_token1] = ACTIONS(2006), [aux_sym_preproc_def_token1] = ACTIONS(2006), [aux_sym_preproc_if_token1] = ACTIONS(2006), [aux_sym_preproc_ifdef_token1] = ACTIONS(2006), [aux_sym_preproc_ifdef_token2] = ACTIONS(2006), [sym_preproc_directive] = ACTIONS(2006), [anon_sym_LPAREN2] = ACTIONS(2008), [anon_sym_BANG] = ACTIONS(2008), [anon_sym_TILDE] = ACTIONS(2008), [anon_sym_DASH] = ACTIONS(2006), [anon_sym_PLUS] = ACTIONS(2006), [anon_sym_STAR] = ACTIONS(2008), [anon_sym_AMP_AMP] = ACTIONS(2008), [anon_sym_AMP] = ACTIONS(2006), [anon_sym_SEMI] = ACTIONS(2008), [anon_sym_typedef] = ACTIONS(2006), [anon_sym_extern] = ACTIONS(2006), [anon_sym___attribute__] = ACTIONS(2006), [anon_sym_COLON_COLON] = ACTIONS(2008), [anon_sym_LBRACK_LBRACK] = ACTIONS(2008), [anon_sym___declspec] = ACTIONS(2006), [anon_sym___based] = ACTIONS(2006), [anon_sym___cdecl] = ACTIONS(2006), [anon_sym___clrcall] = ACTIONS(2006), [anon_sym___stdcall] = ACTIONS(2006), [anon_sym___fastcall] = ACTIONS(2006), [anon_sym___thiscall] = ACTIONS(2006), [anon_sym___vectorcall] = ACTIONS(2006), [anon_sym_LBRACE] = ACTIONS(2008), [anon_sym_RBRACE] = ACTIONS(2008), [anon_sym_LBRACK] = ACTIONS(2006), [anon_sym_static] = ACTIONS(2006), [anon_sym_register] = ACTIONS(2006), [anon_sym_inline] = ACTIONS(2006), [anon_sym_thread_local] = ACTIONS(2006), [anon_sym_const] = ACTIONS(2006), [anon_sym_volatile] = ACTIONS(2006), [anon_sym_restrict] = ACTIONS(2006), [anon_sym__Atomic] = ACTIONS(2006), [anon_sym_mutable] = ACTIONS(2006), [anon_sym_constexpr] = ACTIONS(2006), [anon_sym_signed] = ACTIONS(2006), [anon_sym_unsigned] = ACTIONS(2006), [anon_sym_long] = ACTIONS(2006), [anon_sym_short] = ACTIONS(2006), [sym_primitive_type] = ACTIONS(2006), [anon_sym_enum] = ACTIONS(2006), [anon_sym_class] = ACTIONS(2006), [anon_sym_struct] = ACTIONS(2006), [anon_sym_union] = ACTIONS(2006), [anon_sym_if] = ACTIONS(2006), [anon_sym_else] = ACTIONS(2006), [anon_sym_switch] = ACTIONS(2006), [anon_sym_case] = ACTIONS(2006), [anon_sym_default] = ACTIONS(2006), [anon_sym_while] = ACTIONS(2006), [anon_sym_do] = ACTIONS(2006), [anon_sym_for] = ACTIONS(2006), [anon_sym_return] = ACTIONS(2006), [anon_sym_break] = ACTIONS(2006), [anon_sym_continue] = ACTIONS(2006), [anon_sym_goto] = ACTIONS(2006), [anon_sym_DASH_DASH] = ACTIONS(2008), [anon_sym_PLUS_PLUS] = ACTIONS(2008), [anon_sym_sizeof] = ACTIONS(2006), [sym_number_literal] = ACTIONS(2008), [anon_sym_L_SQUOTE] = ACTIONS(2008), [anon_sym_u_SQUOTE] = ACTIONS(2008), [anon_sym_U_SQUOTE] = ACTIONS(2008), [anon_sym_u8_SQUOTE] = ACTIONS(2008), [anon_sym_SQUOTE] = ACTIONS(2008), [anon_sym_L_DQUOTE] = ACTIONS(2008), [anon_sym_u_DQUOTE] = ACTIONS(2008), [anon_sym_U_DQUOTE] = ACTIONS(2008), [anon_sym_u8_DQUOTE] = ACTIONS(2008), [anon_sym_DQUOTE] = ACTIONS(2008), [sym_true] = ACTIONS(2006), [sym_false] = ACTIONS(2006), [sym_null] = ACTIONS(2006), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2006), [anon_sym_virtual] = ACTIONS(2006), [anon_sym_explicit] = ACTIONS(2006), [sym_auto] = ACTIONS(2006), [anon_sym_typename] = ACTIONS(2006), [anon_sym_template] = ACTIONS(2006), [anon_sym_operator] = ACTIONS(2006), [anon_sym_delete] = ACTIONS(2006), [anon_sym_throw] = ACTIONS(2006), [anon_sym_namespace] = ACTIONS(2006), [anon_sym_using] = ACTIONS(2006), [anon_sym_static_assert] = ACTIONS(2006), [anon_sym_co_return] = ACTIONS(2006), [anon_sym_co_yield] = ACTIONS(2006), [anon_sym_try] = ACTIONS(2006), [anon_sym_co_await] = ACTIONS(2006), [anon_sym_new] = ACTIONS(2006), [sym_this] = ACTIONS(2006), [sym_nullptr] = ACTIONS(2006), [sym_raw_string_literal] = ACTIONS(2008), }, [566] = { [sym_identifier] = ACTIONS(1778), [aux_sym_preproc_include_token1] = ACTIONS(1778), [aux_sym_preproc_def_token1] = ACTIONS(1778), [aux_sym_preproc_if_token1] = ACTIONS(1778), [aux_sym_preproc_ifdef_token1] = ACTIONS(1778), [aux_sym_preproc_ifdef_token2] = ACTIONS(1778), [sym_preproc_directive] = ACTIONS(1778), [anon_sym_LPAREN2] = ACTIONS(1780), [anon_sym_BANG] = ACTIONS(1780), [anon_sym_TILDE] = ACTIONS(1780), [anon_sym_DASH] = ACTIONS(1778), [anon_sym_PLUS] = ACTIONS(1778), [anon_sym_STAR] = ACTIONS(1780), [anon_sym_AMP_AMP] = ACTIONS(1780), [anon_sym_AMP] = ACTIONS(1778), [anon_sym_SEMI] = ACTIONS(1780), [anon_sym_typedef] = ACTIONS(1778), [anon_sym_extern] = ACTIONS(1778), [anon_sym___attribute__] = ACTIONS(1778), [anon_sym_COLON_COLON] = ACTIONS(1780), [anon_sym_LBRACK_LBRACK] = ACTIONS(1780), [anon_sym___declspec] = ACTIONS(1778), [anon_sym___based] = ACTIONS(1778), [anon_sym___cdecl] = ACTIONS(1778), [anon_sym___clrcall] = ACTIONS(1778), [anon_sym___stdcall] = ACTIONS(1778), [anon_sym___fastcall] = ACTIONS(1778), [anon_sym___thiscall] = ACTIONS(1778), [anon_sym___vectorcall] = ACTIONS(1778), [anon_sym_LBRACE] = ACTIONS(1780), [anon_sym_RBRACE] = ACTIONS(1780), [anon_sym_LBRACK] = ACTIONS(1778), [anon_sym_static] = ACTIONS(1778), [anon_sym_register] = ACTIONS(1778), [anon_sym_inline] = ACTIONS(1778), [anon_sym_thread_local] = ACTIONS(1778), [anon_sym_const] = ACTIONS(1778), [anon_sym_volatile] = ACTIONS(1778), [anon_sym_restrict] = ACTIONS(1778), [anon_sym__Atomic] = ACTIONS(1778), [anon_sym_mutable] = ACTIONS(1778), [anon_sym_constexpr] = ACTIONS(1778), [anon_sym_signed] = ACTIONS(1778), [anon_sym_unsigned] = ACTIONS(1778), [anon_sym_long] = ACTIONS(1778), [anon_sym_short] = ACTIONS(1778), [sym_primitive_type] = ACTIONS(1778), [anon_sym_enum] = ACTIONS(1778), [anon_sym_class] = ACTIONS(1778), [anon_sym_struct] = ACTIONS(1778), [anon_sym_union] = ACTIONS(1778), [anon_sym_if] = ACTIONS(1778), [anon_sym_else] = ACTIONS(1778), [anon_sym_switch] = ACTIONS(1778), [anon_sym_case] = ACTIONS(1778), [anon_sym_default] = ACTIONS(1778), [anon_sym_while] = ACTIONS(1778), [anon_sym_do] = ACTIONS(1778), [anon_sym_for] = ACTIONS(1778), [anon_sym_return] = ACTIONS(1778), [anon_sym_break] = ACTIONS(1778), [anon_sym_continue] = ACTIONS(1778), [anon_sym_goto] = ACTIONS(1778), [anon_sym_DASH_DASH] = ACTIONS(1780), [anon_sym_PLUS_PLUS] = ACTIONS(1780), [anon_sym_sizeof] = ACTIONS(1778), [sym_number_literal] = ACTIONS(1780), [anon_sym_L_SQUOTE] = ACTIONS(1780), [anon_sym_u_SQUOTE] = ACTIONS(1780), [anon_sym_U_SQUOTE] = ACTIONS(1780), [anon_sym_u8_SQUOTE] = ACTIONS(1780), [anon_sym_SQUOTE] = ACTIONS(1780), [anon_sym_L_DQUOTE] = ACTIONS(1780), [anon_sym_u_DQUOTE] = ACTIONS(1780), [anon_sym_U_DQUOTE] = ACTIONS(1780), [anon_sym_u8_DQUOTE] = ACTIONS(1780), [anon_sym_DQUOTE] = ACTIONS(1780), [sym_true] = ACTIONS(1778), [sym_false] = ACTIONS(1778), [sym_null] = ACTIONS(1778), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1778), [anon_sym_virtual] = ACTIONS(1778), [anon_sym_explicit] = ACTIONS(1778), [sym_auto] = ACTIONS(1778), [anon_sym_typename] = ACTIONS(1778), [anon_sym_template] = ACTIONS(1778), [anon_sym_operator] = ACTIONS(1778), [anon_sym_delete] = ACTIONS(1778), [anon_sym_throw] = ACTIONS(1778), [anon_sym_namespace] = ACTIONS(1778), [anon_sym_using] = ACTIONS(1778), [anon_sym_static_assert] = ACTIONS(1778), [anon_sym_co_return] = ACTIONS(1778), [anon_sym_co_yield] = ACTIONS(1778), [anon_sym_try] = ACTIONS(1778), [anon_sym_co_await] = ACTIONS(1778), [anon_sym_new] = ACTIONS(1778), [sym_this] = ACTIONS(1778), [sym_nullptr] = ACTIONS(1778), [sym_raw_string_literal] = ACTIONS(1780), }, [567] = { [sym_identifier] = ACTIONS(1990), [aux_sym_preproc_include_token1] = ACTIONS(1990), [aux_sym_preproc_def_token1] = ACTIONS(1990), [aux_sym_preproc_if_token1] = ACTIONS(1990), [aux_sym_preproc_if_token2] = ACTIONS(1990), [aux_sym_preproc_ifdef_token1] = ACTIONS(1990), [aux_sym_preproc_ifdef_token2] = ACTIONS(1990), [sym_preproc_directive] = ACTIONS(1990), [anon_sym_LPAREN2] = ACTIONS(1992), [anon_sym_BANG] = ACTIONS(1992), [anon_sym_TILDE] = ACTIONS(1992), [anon_sym_DASH] = ACTIONS(1990), [anon_sym_PLUS] = ACTIONS(1990), [anon_sym_STAR] = ACTIONS(1992), [anon_sym_AMP_AMP] = ACTIONS(1992), [anon_sym_AMP] = ACTIONS(1990), [anon_sym_SEMI] = ACTIONS(1992), [anon_sym_typedef] = ACTIONS(1990), [anon_sym_extern] = ACTIONS(1990), [anon_sym___attribute__] = ACTIONS(1990), [anon_sym_COLON_COLON] = ACTIONS(1992), [anon_sym_LBRACK_LBRACK] = ACTIONS(1992), [anon_sym___declspec] = ACTIONS(1990), [anon_sym___based] = ACTIONS(1990), [anon_sym___cdecl] = ACTIONS(1990), [anon_sym___clrcall] = ACTIONS(1990), [anon_sym___stdcall] = ACTIONS(1990), [anon_sym___fastcall] = ACTIONS(1990), [anon_sym___thiscall] = ACTIONS(1990), [anon_sym___vectorcall] = ACTIONS(1990), [anon_sym_LBRACE] = ACTIONS(1992), [anon_sym_LBRACK] = ACTIONS(1990), [anon_sym_static] = ACTIONS(1990), [anon_sym_register] = ACTIONS(1990), [anon_sym_inline] = ACTIONS(1990), [anon_sym_thread_local] = ACTIONS(1990), [anon_sym_const] = ACTIONS(1990), [anon_sym_volatile] = ACTIONS(1990), [anon_sym_restrict] = ACTIONS(1990), [anon_sym__Atomic] = ACTIONS(1990), [anon_sym_mutable] = ACTIONS(1990), [anon_sym_constexpr] = ACTIONS(1990), [anon_sym_signed] = ACTIONS(1990), [anon_sym_unsigned] = ACTIONS(1990), [anon_sym_long] = ACTIONS(1990), [anon_sym_short] = ACTIONS(1990), [sym_primitive_type] = ACTIONS(1990), [anon_sym_enum] = ACTIONS(1990), [anon_sym_class] = ACTIONS(1990), [anon_sym_struct] = ACTIONS(1990), [anon_sym_union] = ACTIONS(1990), [anon_sym_if] = ACTIONS(1990), [anon_sym_else] = ACTIONS(1990), [anon_sym_switch] = ACTIONS(1990), [anon_sym_case] = ACTIONS(1990), [anon_sym_default] = ACTIONS(1990), [anon_sym_while] = ACTIONS(1990), [anon_sym_do] = ACTIONS(1990), [anon_sym_for] = ACTIONS(1990), [anon_sym_return] = ACTIONS(1990), [anon_sym_break] = ACTIONS(1990), [anon_sym_continue] = ACTIONS(1990), [anon_sym_goto] = ACTIONS(1990), [anon_sym_DASH_DASH] = ACTIONS(1992), [anon_sym_PLUS_PLUS] = ACTIONS(1992), [anon_sym_sizeof] = ACTIONS(1990), [sym_number_literal] = ACTIONS(1992), [anon_sym_L_SQUOTE] = ACTIONS(1992), [anon_sym_u_SQUOTE] = ACTIONS(1992), [anon_sym_U_SQUOTE] = ACTIONS(1992), [anon_sym_u8_SQUOTE] = ACTIONS(1992), [anon_sym_SQUOTE] = ACTIONS(1992), [anon_sym_L_DQUOTE] = ACTIONS(1992), [anon_sym_u_DQUOTE] = ACTIONS(1992), [anon_sym_U_DQUOTE] = ACTIONS(1992), [anon_sym_u8_DQUOTE] = ACTIONS(1992), [anon_sym_DQUOTE] = ACTIONS(1992), [sym_true] = ACTIONS(1990), [sym_false] = ACTIONS(1990), [sym_null] = ACTIONS(1990), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1990), [anon_sym_virtual] = ACTIONS(1990), [anon_sym_explicit] = ACTIONS(1990), [sym_auto] = ACTIONS(1990), [anon_sym_typename] = ACTIONS(1990), [anon_sym_template] = ACTIONS(1990), [anon_sym_operator] = ACTIONS(1990), [anon_sym_delete] = ACTIONS(1990), [anon_sym_throw] = ACTIONS(1990), [anon_sym_namespace] = ACTIONS(1990), [anon_sym_using] = ACTIONS(1990), [anon_sym_static_assert] = ACTIONS(1990), [anon_sym_co_return] = ACTIONS(1990), [anon_sym_co_yield] = ACTIONS(1990), [anon_sym_try] = ACTIONS(1990), [anon_sym_co_await] = ACTIONS(1990), [anon_sym_new] = ACTIONS(1990), [sym_this] = ACTIONS(1990), [sym_nullptr] = ACTIONS(1990), [sym_raw_string_literal] = ACTIONS(1992), }, [568] = { [sym_identifier] = ACTIONS(2002), [aux_sym_preproc_include_token1] = ACTIONS(2002), [aux_sym_preproc_def_token1] = ACTIONS(2002), [aux_sym_preproc_if_token1] = ACTIONS(2002), [aux_sym_preproc_ifdef_token1] = ACTIONS(2002), [aux_sym_preproc_ifdef_token2] = ACTIONS(2002), [sym_preproc_directive] = ACTIONS(2002), [anon_sym_LPAREN2] = ACTIONS(2004), [anon_sym_BANG] = ACTIONS(2004), [anon_sym_TILDE] = ACTIONS(2004), [anon_sym_DASH] = ACTIONS(2002), [anon_sym_PLUS] = ACTIONS(2002), [anon_sym_STAR] = ACTIONS(2004), [anon_sym_AMP_AMP] = ACTIONS(2004), [anon_sym_AMP] = ACTIONS(2002), [anon_sym_SEMI] = ACTIONS(2004), [anon_sym_typedef] = ACTIONS(2002), [anon_sym_extern] = ACTIONS(2002), [anon_sym___attribute__] = ACTIONS(2002), [anon_sym_COLON_COLON] = ACTIONS(2004), [anon_sym_LBRACK_LBRACK] = ACTIONS(2004), [anon_sym___declspec] = ACTIONS(2002), [anon_sym___based] = ACTIONS(2002), [anon_sym___cdecl] = ACTIONS(2002), [anon_sym___clrcall] = ACTIONS(2002), [anon_sym___stdcall] = ACTIONS(2002), [anon_sym___fastcall] = ACTIONS(2002), [anon_sym___thiscall] = ACTIONS(2002), [anon_sym___vectorcall] = ACTIONS(2002), [anon_sym_LBRACE] = ACTIONS(2004), [anon_sym_RBRACE] = ACTIONS(2004), [anon_sym_LBRACK] = ACTIONS(2002), [anon_sym_static] = ACTIONS(2002), [anon_sym_register] = ACTIONS(2002), [anon_sym_inline] = ACTIONS(2002), [anon_sym_thread_local] = ACTIONS(2002), [anon_sym_const] = ACTIONS(2002), [anon_sym_volatile] = ACTIONS(2002), [anon_sym_restrict] = ACTIONS(2002), [anon_sym__Atomic] = ACTIONS(2002), [anon_sym_mutable] = ACTIONS(2002), [anon_sym_constexpr] = ACTIONS(2002), [anon_sym_signed] = ACTIONS(2002), [anon_sym_unsigned] = ACTIONS(2002), [anon_sym_long] = ACTIONS(2002), [anon_sym_short] = ACTIONS(2002), [sym_primitive_type] = ACTIONS(2002), [anon_sym_enum] = ACTIONS(2002), [anon_sym_class] = ACTIONS(2002), [anon_sym_struct] = ACTIONS(2002), [anon_sym_union] = ACTIONS(2002), [anon_sym_if] = ACTIONS(2002), [anon_sym_else] = ACTIONS(2002), [anon_sym_switch] = ACTIONS(2002), [anon_sym_case] = ACTIONS(2002), [anon_sym_default] = ACTIONS(2002), [anon_sym_while] = ACTIONS(2002), [anon_sym_do] = ACTIONS(2002), [anon_sym_for] = ACTIONS(2002), [anon_sym_return] = ACTIONS(2002), [anon_sym_break] = ACTIONS(2002), [anon_sym_continue] = ACTIONS(2002), [anon_sym_goto] = ACTIONS(2002), [anon_sym_DASH_DASH] = ACTIONS(2004), [anon_sym_PLUS_PLUS] = ACTIONS(2004), [anon_sym_sizeof] = ACTIONS(2002), [sym_number_literal] = ACTIONS(2004), [anon_sym_L_SQUOTE] = ACTIONS(2004), [anon_sym_u_SQUOTE] = ACTIONS(2004), [anon_sym_U_SQUOTE] = ACTIONS(2004), [anon_sym_u8_SQUOTE] = ACTIONS(2004), [anon_sym_SQUOTE] = ACTIONS(2004), [anon_sym_L_DQUOTE] = ACTIONS(2004), [anon_sym_u_DQUOTE] = ACTIONS(2004), [anon_sym_U_DQUOTE] = ACTIONS(2004), [anon_sym_u8_DQUOTE] = ACTIONS(2004), [anon_sym_DQUOTE] = ACTIONS(2004), [sym_true] = ACTIONS(2002), [sym_false] = ACTIONS(2002), [sym_null] = ACTIONS(2002), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2002), [anon_sym_virtual] = ACTIONS(2002), [anon_sym_explicit] = ACTIONS(2002), [sym_auto] = ACTIONS(2002), [anon_sym_typename] = ACTIONS(2002), [anon_sym_template] = ACTIONS(2002), [anon_sym_operator] = ACTIONS(2002), [anon_sym_delete] = ACTIONS(2002), [anon_sym_throw] = ACTIONS(2002), [anon_sym_namespace] = ACTIONS(2002), [anon_sym_using] = ACTIONS(2002), [anon_sym_static_assert] = ACTIONS(2002), [anon_sym_co_return] = ACTIONS(2002), [anon_sym_co_yield] = ACTIONS(2002), [anon_sym_try] = ACTIONS(2002), [anon_sym_co_await] = ACTIONS(2002), [anon_sym_new] = ACTIONS(2002), [sym_this] = ACTIONS(2002), [sym_nullptr] = ACTIONS(2002), [sym_raw_string_literal] = ACTIONS(2004), }, [569] = { [sym_identifier] = ACTIONS(1994), [aux_sym_preproc_include_token1] = ACTIONS(1994), [aux_sym_preproc_def_token1] = ACTIONS(1994), [aux_sym_preproc_if_token1] = ACTIONS(1994), [aux_sym_preproc_if_token2] = ACTIONS(1994), [aux_sym_preproc_ifdef_token1] = ACTIONS(1994), [aux_sym_preproc_ifdef_token2] = ACTIONS(1994), [sym_preproc_directive] = ACTIONS(1994), [anon_sym_LPAREN2] = ACTIONS(1996), [anon_sym_BANG] = ACTIONS(1996), [anon_sym_TILDE] = ACTIONS(1996), [anon_sym_DASH] = ACTIONS(1994), [anon_sym_PLUS] = ACTIONS(1994), [anon_sym_STAR] = ACTIONS(1996), [anon_sym_AMP_AMP] = ACTIONS(1996), [anon_sym_AMP] = ACTIONS(1994), [anon_sym_SEMI] = ACTIONS(1996), [anon_sym_typedef] = ACTIONS(1994), [anon_sym_extern] = ACTIONS(1994), [anon_sym___attribute__] = ACTIONS(1994), [anon_sym_COLON_COLON] = ACTIONS(1996), [anon_sym_LBRACK_LBRACK] = ACTIONS(1996), [anon_sym___declspec] = ACTIONS(1994), [anon_sym___based] = ACTIONS(1994), [anon_sym___cdecl] = ACTIONS(1994), [anon_sym___clrcall] = ACTIONS(1994), [anon_sym___stdcall] = ACTIONS(1994), [anon_sym___fastcall] = ACTIONS(1994), [anon_sym___thiscall] = ACTIONS(1994), [anon_sym___vectorcall] = ACTIONS(1994), [anon_sym_LBRACE] = ACTIONS(1996), [anon_sym_LBRACK] = ACTIONS(1994), [anon_sym_static] = ACTIONS(1994), [anon_sym_register] = ACTIONS(1994), [anon_sym_inline] = ACTIONS(1994), [anon_sym_thread_local] = ACTIONS(1994), [anon_sym_const] = ACTIONS(1994), [anon_sym_volatile] = ACTIONS(1994), [anon_sym_restrict] = ACTIONS(1994), [anon_sym__Atomic] = ACTIONS(1994), [anon_sym_mutable] = ACTIONS(1994), [anon_sym_constexpr] = ACTIONS(1994), [anon_sym_signed] = ACTIONS(1994), [anon_sym_unsigned] = ACTIONS(1994), [anon_sym_long] = ACTIONS(1994), [anon_sym_short] = ACTIONS(1994), [sym_primitive_type] = ACTIONS(1994), [anon_sym_enum] = ACTIONS(1994), [anon_sym_class] = ACTIONS(1994), [anon_sym_struct] = ACTIONS(1994), [anon_sym_union] = ACTIONS(1994), [anon_sym_if] = ACTIONS(1994), [anon_sym_else] = ACTIONS(1994), [anon_sym_switch] = ACTIONS(1994), [anon_sym_case] = ACTIONS(1994), [anon_sym_default] = ACTIONS(1994), [anon_sym_while] = ACTIONS(1994), [anon_sym_do] = ACTIONS(1994), [anon_sym_for] = ACTIONS(1994), [anon_sym_return] = ACTIONS(1994), [anon_sym_break] = ACTIONS(1994), [anon_sym_continue] = ACTIONS(1994), [anon_sym_goto] = ACTIONS(1994), [anon_sym_DASH_DASH] = ACTIONS(1996), [anon_sym_PLUS_PLUS] = ACTIONS(1996), [anon_sym_sizeof] = ACTIONS(1994), [sym_number_literal] = ACTIONS(1996), [anon_sym_L_SQUOTE] = ACTIONS(1996), [anon_sym_u_SQUOTE] = ACTIONS(1996), [anon_sym_U_SQUOTE] = ACTIONS(1996), [anon_sym_u8_SQUOTE] = ACTIONS(1996), [anon_sym_SQUOTE] = ACTIONS(1996), [anon_sym_L_DQUOTE] = ACTIONS(1996), [anon_sym_u_DQUOTE] = ACTIONS(1996), [anon_sym_U_DQUOTE] = ACTIONS(1996), [anon_sym_u8_DQUOTE] = ACTIONS(1996), [anon_sym_DQUOTE] = ACTIONS(1996), [sym_true] = ACTIONS(1994), [sym_false] = ACTIONS(1994), [sym_null] = ACTIONS(1994), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1994), [anon_sym_virtual] = ACTIONS(1994), [anon_sym_explicit] = ACTIONS(1994), [sym_auto] = ACTIONS(1994), [anon_sym_typename] = ACTIONS(1994), [anon_sym_template] = ACTIONS(1994), [anon_sym_operator] = ACTIONS(1994), [anon_sym_delete] = ACTIONS(1994), [anon_sym_throw] = ACTIONS(1994), [anon_sym_namespace] = ACTIONS(1994), [anon_sym_using] = ACTIONS(1994), [anon_sym_static_assert] = ACTIONS(1994), [anon_sym_co_return] = ACTIONS(1994), [anon_sym_co_yield] = ACTIONS(1994), [anon_sym_try] = ACTIONS(1994), [anon_sym_co_await] = ACTIONS(1994), [anon_sym_new] = ACTIONS(1994), [sym_this] = ACTIONS(1994), [sym_nullptr] = ACTIONS(1994), [sym_raw_string_literal] = ACTIONS(1996), }, [570] = { [sym_identifier] = ACTIONS(1998), [aux_sym_preproc_include_token1] = ACTIONS(1998), [aux_sym_preproc_def_token1] = ACTIONS(1998), [aux_sym_preproc_if_token1] = ACTIONS(1998), [aux_sym_preproc_if_token2] = ACTIONS(1998), [aux_sym_preproc_ifdef_token1] = ACTIONS(1998), [aux_sym_preproc_ifdef_token2] = ACTIONS(1998), [sym_preproc_directive] = ACTIONS(1998), [anon_sym_LPAREN2] = ACTIONS(2000), [anon_sym_BANG] = ACTIONS(2000), [anon_sym_TILDE] = ACTIONS(2000), [anon_sym_DASH] = ACTIONS(1998), [anon_sym_PLUS] = ACTIONS(1998), [anon_sym_STAR] = ACTIONS(2000), [anon_sym_AMP_AMP] = ACTIONS(2000), [anon_sym_AMP] = ACTIONS(1998), [anon_sym_SEMI] = ACTIONS(2000), [anon_sym_typedef] = ACTIONS(1998), [anon_sym_extern] = ACTIONS(1998), [anon_sym___attribute__] = ACTIONS(1998), [anon_sym_COLON_COLON] = ACTIONS(2000), [anon_sym_LBRACK_LBRACK] = ACTIONS(2000), [anon_sym___declspec] = ACTIONS(1998), [anon_sym___based] = ACTIONS(1998), [anon_sym___cdecl] = ACTIONS(1998), [anon_sym___clrcall] = ACTIONS(1998), [anon_sym___stdcall] = ACTIONS(1998), [anon_sym___fastcall] = ACTIONS(1998), [anon_sym___thiscall] = ACTIONS(1998), [anon_sym___vectorcall] = ACTIONS(1998), [anon_sym_LBRACE] = ACTIONS(2000), [anon_sym_LBRACK] = ACTIONS(1998), [anon_sym_static] = ACTIONS(1998), [anon_sym_register] = ACTIONS(1998), [anon_sym_inline] = ACTIONS(1998), [anon_sym_thread_local] = ACTIONS(1998), [anon_sym_const] = ACTIONS(1998), [anon_sym_volatile] = ACTIONS(1998), [anon_sym_restrict] = ACTIONS(1998), [anon_sym__Atomic] = ACTIONS(1998), [anon_sym_mutable] = ACTIONS(1998), [anon_sym_constexpr] = ACTIONS(1998), [anon_sym_signed] = ACTIONS(1998), [anon_sym_unsigned] = ACTIONS(1998), [anon_sym_long] = ACTIONS(1998), [anon_sym_short] = ACTIONS(1998), [sym_primitive_type] = ACTIONS(1998), [anon_sym_enum] = ACTIONS(1998), [anon_sym_class] = ACTIONS(1998), [anon_sym_struct] = ACTIONS(1998), [anon_sym_union] = ACTIONS(1998), [anon_sym_if] = ACTIONS(1998), [anon_sym_else] = ACTIONS(1998), [anon_sym_switch] = ACTIONS(1998), [anon_sym_case] = ACTIONS(1998), [anon_sym_default] = ACTIONS(1998), [anon_sym_while] = ACTIONS(1998), [anon_sym_do] = ACTIONS(1998), [anon_sym_for] = ACTIONS(1998), [anon_sym_return] = ACTIONS(1998), [anon_sym_break] = ACTIONS(1998), [anon_sym_continue] = ACTIONS(1998), [anon_sym_goto] = ACTIONS(1998), [anon_sym_DASH_DASH] = ACTIONS(2000), [anon_sym_PLUS_PLUS] = ACTIONS(2000), [anon_sym_sizeof] = ACTIONS(1998), [sym_number_literal] = ACTIONS(2000), [anon_sym_L_SQUOTE] = ACTIONS(2000), [anon_sym_u_SQUOTE] = ACTIONS(2000), [anon_sym_U_SQUOTE] = ACTIONS(2000), [anon_sym_u8_SQUOTE] = ACTIONS(2000), [anon_sym_SQUOTE] = ACTIONS(2000), [anon_sym_L_DQUOTE] = ACTIONS(2000), [anon_sym_u_DQUOTE] = ACTIONS(2000), [anon_sym_U_DQUOTE] = ACTIONS(2000), [anon_sym_u8_DQUOTE] = ACTIONS(2000), [anon_sym_DQUOTE] = ACTIONS(2000), [sym_true] = ACTIONS(1998), [sym_false] = ACTIONS(1998), [sym_null] = ACTIONS(1998), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1998), [anon_sym_virtual] = ACTIONS(1998), [anon_sym_explicit] = ACTIONS(1998), [sym_auto] = ACTIONS(1998), [anon_sym_typename] = ACTIONS(1998), [anon_sym_template] = ACTIONS(1998), [anon_sym_operator] = ACTIONS(1998), [anon_sym_delete] = ACTIONS(1998), [anon_sym_throw] = ACTIONS(1998), [anon_sym_namespace] = ACTIONS(1998), [anon_sym_using] = ACTIONS(1998), [anon_sym_static_assert] = ACTIONS(1998), [anon_sym_co_return] = ACTIONS(1998), [anon_sym_co_yield] = ACTIONS(1998), [anon_sym_try] = ACTIONS(1998), [anon_sym_co_await] = ACTIONS(1998), [anon_sym_new] = ACTIONS(1998), [sym_this] = ACTIONS(1998), [sym_nullptr] = ACTIONS(1998), [sym_raw_string_literal] = ACTIONS(2000), }, [571] = { [sym_identifier] = ACTIONS(1998), [aux_sym_preproc_include_token1] = ACTIONS(1998), [aux_sym_preproc_def_token1] = ACTIONS(1998), [aux_sym_preproc_if_token1] = ACTIONS(1998), [aux_sym_preproc_ifdef_token1] = ACTIONS(1998), [aux_sym_preproc_ifdef_token2] = ACTIONS(1998), [sym_preproc_directive] = ACTIONS(1998), [anon_sym_LPAREN2] = ACTIONS(2000), [anon_sym_BANG] = ACTIONS(2000), [anon_sym_TILDE] = ACTIONS(2000), [anon_sym_DASH] = ACTIONS(1998), [anon_sym_PLUS] = ACTIONS(1998), [anon_sym_STAR] = ACTIONS(2000), [anon_sym_AMP_AMP] = ACTIONS(2000), [anon_sym_AMP] = ACTIONS(1998), [anon_sym_SEMI] = ACTIONS(2000), [anon_sym_typedef] = ACTIONS(1998), [anon_sym_extern] = ACTIONS(1998), [anon_sym___attribute__] = ACTIONS(1998), [anon_sym_COLON_COLON] = ACTIONS(2000), [anon_sym_LBRACK_LBRACK] = ACTIONS(2000), [anon_sym___declspec] = ACTIONS(1998), [anon_sym___based] = ACTIONS(1998), [anon_sym___cdecl] = ACTIONS(1998), [anon_sym___clrcall] = ACTIONS(1998), [anon_sym___stdcall] = ACTIONS(1998), [anon_sym___fastcall] = ACTIONS(1998), [anon_sym___thiscall] = ACTIONS(1998), [anon_sym___vectorcall] = ACTIONS(1998), [anon_sym_LBRACE] = ACTIONS(2000), [anon_sym_RBRACE] = ACTIONS(2000), [anon_sym_LBRACK] = ACTIONS(1998), [anon_sym_static] = ACTIONS(1998), [anon_sym_register] = ACTIONS(1998), [anon_sym_inline] = ACTIONS(1998), [anon_sym_thread_local] = ACTIONS(1998), [anon_sym_const] = ACTIONS(1998), [anon_sym_volatile] = ACTIONS(1998), [anon_sym_restrict] = ACTIONS(1998), [anon_sym__Atomic] = ACTIONS(1998), [anon_sym_mutable] = ACTIONS(1998), [anon_sym_constexpr] = ACTIONS(1998), [anon_sym_signed] = ACTIONS(1998), [anon_sym_unsigned] = ACTIONS(1998), [anon_sym_long] = ACTIONS(1998), [anon_sym_short] = ACTIONS(1998), [sym_primitive_type] = ACTIONS(1998), [anon_sym_enum] = ACTIONS(1998), [anon_sym_class] = ACTIONS(1998), [anon_sym_struct] = ACTIONS(1998), [anon_sym_union] = ACTIONS(1998), [anon_sym_if] = ACTIONS(1998), [anon_sym_else] = ACTIONS(1998), [anon_sym_switch] = ACTIONS(1998), [anon_sym_case] = ACTIONS(1998), [anon_sym_default] = ACTIONS(1998), [anon_sym_while] = ACTIONS(1998), [anon_sym_do] = ACTIONS(1998), [anon_sym_for] = ACTIONS(1998), [anon_sym_return] = ACTIONS(1998), [anon_sym_break] = ACTIONS(1998), [anon_sym_continue] = ACTIONS(1998), [anon_sym_goto] = ACTIONS(1998), [anon_sym_DASH_DASH] = ACTIONS(2000), [anon_sym_PLUS_PLUS] = ACTIONS(2000), [anon_sym_sizeof] = ACTIONS(1998), [sym_number_literal] = ACTIONS(2000), [anon_sym_L_SQUOTE] = ACTIONS(2000), [anon_sym_u_SQUOTE] = ACTIONS(2000), [anon_sym_U_SQUOTE] = ACTIONS(2000), [anon_sym_u8_SQUOTE] = ACTIONS(2000), [anon_sym_SQUOTE] = ACTIONS(2000), [anon_sym_L_DQUOTE] = ACTIONS(2000), [anon_sym_u_DQUOTE] = ACTIONS(2000), [anon_sym_U_DQUOTE] = ACTIONS(2000), [anon_sym_u8_DQUOTE] = ACTIONS(2000), [anon_sym_DQUOTE] = ACTIONS(2000), [sym_true] = ACTIONS(1998), [sym_false] = ACTIONS(1998), [sym_null] = ACTIONS(1998), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1998), [anon_sym_virtual] = ACTIONS(1998), [anon_sym_explicit] = ACTIONS(1998), [sym_auto] = ACTIONS(1998), [anon_sym_typename] = ACTIONS(1998), [anon_sym_template] = ACTIONS(1998), [anon_sym_operator] = ACTIONS(1998), [anon_sym_delete] = ACTIONS(1998), [anon_sym_throw] = ACTIONS(1998), [anon_sym_namespace] = ACTIONS(1998), [anon_sym_using] = ACTIONS(1998), [anon_sym_static_assert] = ACTIONS(1998), [anon_sym_co_return] = ACTIONS(1998), [anon_sym_co_yield] = ACTIONS(1998), [anon_sym_try] = ACTIONS(1998), [anon_sym_co_await] = ACTIONS(1998), [anon_sym_new] = ACTIONS(1998), [sym_this] = ACTIONS(1998), [sym_nullptr] = ACTIONS(1998), [sym_raw_string_literal] = ACTIONS(2000), }, [572] = { [sym_identifier] = ACTIONS(2002), [aux_sym_preproc_include_token1] = ACTIONS(2002), [aux_sym_preproc_def_token1] = ACTIONS(2002), [aux_sym_preproc_if_token1] = ACTIONS(2002), [aux_sym_preproc_if_token2] = ACTIONS(2002), [aux_sym_preproc_ifdef_token1] = ACTIONS(2002), [aux_sym_preproc_ifdef_token2] = ACTIONS(2002), [sym_preproc_directive] = ACTIONS(2002), [anon_sym_LPAREN2] = ACTIONS(2004), [anon_sym_BANG] = ACTIONS(2004), [anon_sym_TILDE] = ACTIONS(2004), [anon_sym_DASH] = ACTIONS(2002), [anon_sym_PLUS] = ACTIONS(2002), [anon_sym_STAR] = ACTIONS(2004), [anon_sym_AMP_AMP] = ACTIONS(2004), [anon_sym_AMP] = ACTIONS(2002), [anon_sym_SEMI] = ACTIONS(2004), [anon_sym_typedef] = ACTIONS(2002), [anon_sym_extern] = ACTIONS(2002), [anon_sym___attribute__] = ACTIONS(2002), [anon_sym_COLON_COLON] = ACTIONS(2004), [anon_sym_LBRACK_LBRACK] = ACTIONS(2004), [anon_sym___declspec] = ACTIONS(2002), [anon_sym___based] = ACTIONS(2002), [anon_sym___cdecl] = ACTIONS(2002), [anon_sym___clrcall] = ACTIONS(2002), [anon_sym___stdcall] = ACTIONS(2002), [anon_sym___fastcall] = ACTIONS(2002), [anon_sym___thiscall] = ACTIONS(2002), [anon_sym___vectorcall] = ACTIONS(2002), [anon_sym_LBRACE] = ACTIONS(2004), [anon_sym_LBRACK] = ACTIONS(2002), [anon_sym_static] = ACTIONS(2002), [anon_sym_register] = ACTIONS(2002), [anon_sym_inline] = ACTIONS(2002), [anon_sym_thread_local] = ACTIONS(2002), [anon_sym_const] = ACTIONS(2002), [anon_sym_volatile] = ACTIONS(2002), [anon_sym_restrict] = ACTIONS(2002), [anon_sym__Atomic] = ACTIONS(2002), [anon_sym_mutable] = ACTIONS(2002), [anon_sym_constexpr] = ACTIONS(2002), [anon_sym_signed] = ACTIONS(2002), [anon_sym_unsigned] = ACTIONS(2002), [anon_sym_long] = ACTIONS(2002), [anon_sym_short] = ACTIONS(2002), [sym_primitive_type] = ACTIONS(2002), [anon_sym_enum] = ACTIONS(2002), [anon_sym_class] = ACTIONS(2002), [anon_sym_struct] = ACTIONS(2002), [anon_sym_union] = ACTIONS(2002), [anon_sym_if] = ACTIONS(2002), [anon_sym_else] = ACTIONS(2002), [anon_sym_switch] = ACTIONS(2002), [anon_sym_case] = ACTIONS(2002), [anon_sym_default] = ACTIONS(2002), [anon_sym_while] = ACTIONS(2002), [anon_sym_do] = ACTIONS(2002), [anon_sym_for] = ACTIONS(2002), [anon_sym_return] = ACTIONS(2002), [anon_sym_break] = ACTIONS(2002), [anon_sym_continue] = ACTIONS(2002), [anon_sym_goto] = ACTIONS(2002), [anon_sym_DASH_DASH] = ACTIONS(2004), [anon_sym_PLUS_PLUS] = ACTIONS(2004), [anon_sym_sizeof] = ACTIONS(2002), [sym_number_literal] = ACTIONS(2004), [anon_sym_L_SQUOTE] = ACTIONS(2004), [anon_sym_u_SQUOTE] = ACTIONS(2004), [anon_sym_U_SQUOTE] = ACTIONS(2004), [anon_sym_u8_SQUOTE] = ACTIONS(2004), [anon_sym_SQUOTE] = ACTIONS(2004), [anon_sym_L_DQUOTE] = ACTIONS(2004), [anon_sym_u_DQUOTE] = ACTIONS(2004), [anon_sym_U_DQUOTE] = ACTIONS(2004), [anon_sym_u8_DQUOTE] = ACTIONS(2004), [anon_sym_DQUOTE] = ACTIONS(2004), [sym_true] = ACTIONS(2002), [sym_false] = ACTIONS(2002), [sym_null] = ACTIONS(2002), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2002), [anon_sym_virtual] = ACTIONS(2002), [anon_sym_explicit] = ACTIONS(2002), [sym_auto] = ACTIONS(2002), [anon_sym_typename] = ACTIONS(2002), [anon_sym_template] = ACTIONS(2002), [anon_sym_operator] = ACTIONS(2002), [anon_sym_delete] = ACTIONS(2002), [anon_sym_throw] = ACTIONS(2002), [anon_sym_namespace] = ACTIONS(2002), [anon_sym_using] = ACTIONS(2002), [anon_sym_static_assert] = ACTIONS(2002), [anon_sym_co_return] = ACTIONS(2002), [anon_sym_co_yield] = ACTIONS(2002), [anon_sym_try] = ACTIONS(2002), [anon_sym_co_await] = ACTIONS(2002), [anon_sym_new] = ACTIONS(2002), [sym_this] = ACTIONS(2002), [sym_nullptr] = ACTIONS(2002), [sym_raw_string_literal] = ACTIONS(2004), }, [573] = { [sym_identifier] = ACTIONS(1994), [aux_sym_preproc_include_token1] = ACTIONS(1994), [aux_sym_preproc_def_token1] = ACTIONS(1994), [aux_sym_preproc_if_token1] = ACTIONS(1994), [aux_sym_preproc_ifdef_token1] = ACTIONS(1994), [aux_sym_preproc_ifdef_token2] = ACTIONS(1994), [sym_preproc_directive] = ACTIONS(1994), [anon_sym_LPAREN2] = ACTIONS(1996), [anon_sym_BANG] = ACTIONS(1996), [anon_sym_TILDE] = ACTIONS(1996), [anon_sym_DASH] = ACTIONS(1994), [anon_sym_PLUS] = ACTIONS(1994), [anon_sym_STAR] = ACTIONS(1996), [anon_sym_AMP_AMP] = ACTIONS(1996), [anon_sym_AMP] = ACTIONS(1994), [anon_sym_SEMI] = ACTIONS(1996), [anon_sym_typedef] = ACTIONS(1994), [anon_sym_extern] = ACTIONS(1994), [anon_sym___attribute__] = ACTIONS(1994), [anon_sym_COLON_COLON] = ACTIONS(1996), [anon_sym_LBRACK_LBRACK] = ACTIONS(1996), [anon_sym___declspec] = ACTIONS(1994), [anon_sym___based] = ACTIONS(1994), [anon_sym___cdecl] = ACTIONS(1994), [anon_sym___clrcall] = ACTIONS(1994), [anon_sym___stdcall] = ACTIONS(1994), [anon_sym___fastcall] = ACTIONS(1994), [anon_sym___thiscall] = ACTIONS(1994), [anon_sym___vectorcall] = ACTIONS(1994), [anon_sym_LBRACE] = ACTIONS(1996), [anon_sym_RBRACE] = ACTIONS(1996), [anon_sym_LBRACK] = ACTIONS(1994), [anon_sym_static] = ACTIONS(1994), [anon_sym_register] = ACTIONS(1994), [anon_sym_inline] = ACTIONS(1994), [anon_sym_thread_local] = ACTIONS(1994), [anon_sym_const] = ACTIONS(1994), [anon_sym_volatile] = ACTIONS(1994), [anon_sym_restrict] = ACTIONS(1994), [anon_sym__Atomic] = ACTIONS(1994), [anon_sym_mutable] = ACTIONS(1994), [anon_sym_constexpr] = ACTIONS(1994), [anon_sym_signed] = ACTIONS(1994), [anon_sym_unsigned] = ACTIONS(1994), [anon_sym_long] = ACTIONS(1994), [anon_sym_short] = ACTIONS(1994), [sym_primitive_type] = ACTIONS(1994), [anon_sym_enum] = ACTIONS(1994), [anon_sym_class] = ACTIONS(1994), [anon_sym_struct] = ACTIONS(1994), [anon_sym_union] = ACTIONS(1994), [anon_sym_if] = ACTIONS(1994), [anon_sym_else] = ACTIONS(1994), [anon_sym_switch] = ACTIONS(1994), [anon_sym_case] = ACTIONS(1994), [anon_sym_default] = ACTIONS(1994), [anon_sym_while] = ACTIONS(1994), [anon_sym_do] = ACTIONS(1994), [anon_sym_for] = ACTIONS(1994), [anon_sym_return] = ACTIONS(1994), [anon_sym_break] = ACTIONS(1994), [anon_sym_continue] = ACTIONS(1994), [anon_sym_goto] = ACTIONS(1994), [anon_sym_DASH_DASH] = ACTIONS(1996), [anon_sym_PLUS_PLUS] = ACTIONS(1996), [anon_sym_sizeof] = ACTIONS(1994), [sym_number_literal] = ACTIONS(1996), [anon_sym_L_SQUOTE] = ACTIONS(1996), [anon_sym_u_SQUOTE] = ACTIONS(1996), [anon_sym_U_SQUOTE] = ACTIONS(1996), [anon_sym_u8_SQUOTE] = ACTIONS(1996), [anon_sym_SQUOTE] = ACTIONS(1996), [anon_sym_L_DQUOTE] = ACTIONS(1996), [anon_sym_u_DQUOTE] = ACTIONS(1996), [anon_sym_U_DQUOTE] = ACTIONS(1996), [anon_sym_u8_DQUOTE] = ACTIONS(1996), [anon_sym_DQUOTE] = ACTIONS(1996), [sym_true] = ACTIONS(1994), [sym_false] = ACTIONS(1994), [sym_null] = ACTIONS(1994), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1994), [anon_sym_virtual] = ACTIONS(1994), [anon_sym_explicit] = ACTIONS(1994), [sym_auto] = ACTIONS(1994), [anon_sym_typename] = ACTIONS(1994), [anon_sym_template] = ACTIONS(1994), [anon_sym_operator] = ACTIONS(1994), [anon_sym_delete] = ACTIONS(1994), [anon_sym_throw] = ACTIONS(1994), [anon_sym_namespace] = ACTIONS(1994), [anon_sym_using] = ACTIONS(1994), [anon_sym_static_assert] = ACTIONS(1994), [anon_sym_co_return] = ACTIONS(1994), [anon_sym_co_yield] = ACTIONS(1994), [anon_sym_try] = ACTIONS(1994), [anon_sym_co_await] = ACTIONS(1994), [anon_sym_new] = ACTIONS(1994), [sym_this] = ACTIONS(1994), [sym_nullptr] = ACTIONS(1994), [sym_raw_string_literal] = ACTIONS(1996), }, [574] = { [sym_identifier] = ACTIONS(1990), [aux_sym_preproc_include_token1] = ACTIONS(1990), [aux_sym_preproc_def_token1] = ACTIONS(1990), [aux_sym_preproc_if_token1] = ACTIONS(1990), [aux_sym_preproc_ifdef_token1] = ACTIONS(1990), [aux_sym_preproc_ifdef_token2] = ACTIONS(1990), [sym_preproc_directive] = ACTIONS(1990), [anon_sym_LPAREN2] = ACTIONS(1992), [anon_sym_BANG] = ACTIONS(1992), [anon_sym_TILDE] = ACTIONS(1992), [anon_sym_DASH] = ACTIONS(1990), [anon_sym_PLUS] = ACTIONS(1990), [anon_sym_STAR] = ACTIONS(1992), [anon_sym_AMP_AMP] = ACTIONS(1992), [anon_sym_AMP] = ACTIONS(1990), [anon_sym_SEMI] = ACTIONS(1992), [anon_sym_typedef] = ACTIONS(1990), [anon_sym_extern] = ACTIONS(1990), [anon_sym___attribute__] = ACTIONS(1990), [anon_sym_COLON_COLON] = ACTIONS(1992), [anon_sym_LBRACK_LBRACK] = ACTIONS(1992), [anon_sym___declspec] = ACTIONS(1990), [anon_sym___based] = ACTIONS(1990), [anon_sym___cdecl] = ACTIONS(1990), [anon_sym___clrcall] = ACTIONS(1990), [anon_sym___stdcall] = ACTIONS(1990), [anon_sym___fastcall] = ACTIONS(1990), [anon_sym___thiscall] = ACTIONS(1990), [anon_sym___vectorcall] = ACTIONS(1990), [anon_sym_LBRACE] = ACTIONS(1992), [anon_sym_RBRACE] = ACTIONS(1992), [anon_sym_LBRACK] = ACTIONS(1990), [anon_sym_static] = ACTIONS(1990), [anon_sym_register] = ACTIONS(1990), [anon_sym_inline] = ACTIONS(1990), [anon_sym_thread_local] = ACTIONS(1990), [anon_sym_const] = ACTIONS(1990), [anon_sym_volatile] = ACTIONS(1990), [anon_sym_restrict] = ACTIONS(1990), [anon_sym__Atomic] = ACTIONS(1990), [anon_sym_mutable] = ACTIONS(1990), [anon_sym_constexpr] = ACTIONS(1990), [anon_sym_signed] = ACTIONS(1990), [anon_sym_unsigned] = ACTIONS(1990), [anon_sym_long] = ACTIONS(1990), [anon_sym_short] = ACTIONS(1990), [sym_primitive_type] = ACTIONS(1990), [anon_sym_enum] = ACTIONS(1990), [anon_sym_class] = ACTIONS(1990), [anon_sym_struct] = ACTIONS(1990), [anon_sym_union] = ACTIONS(1990), [anon_sym_if] = ACTIONS(1990), [anon_sym_else] = ACTIONS(1990), [anon_sym_switch] = ACTIONS(1990), [anon_sym_case] = ACTIONS(1990), [anon_sym_default] = ACTIONS(1990), [anon_sym_while] = ACTIONS(1990), [anon_sym_do] = ACTIONS(1990), [anon_sym_for] = ACTIONS(1990), [anon_sym_return] = ACTIONS(1990), [anon_sym_break] = ACTIONS(1990), [anon_sym_continue] = ACTIONS(1990), [anon_sym_goto] = ACTIONS(1990), [anon_sym_DASH_DASH] = ACTIONS(1992), [anon_sym_PLUS_PLUS] = ACTIONS(1992), [anon_sym_sizeof] = ACTIONS(1990), [sym_number_literal] = ACTIONS(1992), [anon_sym_L_SQUOTE] = ACTIONS(1992), [anon_sym_u_SQUOTE] = ACTIONS(1992), [anon_sym_U_SQUOTE] = ACTIONS(1992), [anon_sym_u8_SQUOTE] = ACTIONS(1992), [anon_sym_SQUOTE] = ACTIONS(1992), [anon_sym_L_DQUOTE] = ACTIONS(1992), [anon_sym_u_DQUOTE] = ACTIONS(1992), [anon_sym_U_DQUOTE] = ACTIONS(1992), [anon_sym_u8_DQUOTE] = ACTIONS(1992), [anon_sym_DQUOTE] = ACTIONS(1992), [sym_true] = ACTIONS(1990), [sym_false] = ACTIONS(1990), [sym_null] = ACTIONS(1990), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1990), [anon_sym_virtual] = ACTIONS(1990), [anon_sym_explicit] = ACTIONS(1990), [sym_auto] = ACTIONS(1990), [anon_sym_typename] = ACTIONS(1990), [anon_sym_template] = ACTIONS(1990), [anon_sym_operator] = ACTIONS(1990), [anon_sym_delete] = ACTIONS(1990), [anon_sym_throw] = ACTIONS(1990), [anon_sym_namespace] = ACTIONS(1990), [anon_sym_using] = ACTIONS(1990), [anon_sym_static_assert] = ACTIONS(1990), [anon_sym_co_return] = ACTIONS(1990), [anon_sym_co_yield] = ACTIONS(1990), [anon_sym_try] = ACTIONS(1990), [anon_sym_co_await] = ACTIONS(1990), [anon_sym_new] = ACTIONS(1990), [sym_this] = ACTIONS(1990), [sym_nullptr] = ACTIONS(1990), [sym_raw_string_literal] = ACTIONS(1992), }, [575] = { [sym_identifier] = ACTIONS(1778), [aux_sym_preproc_include_token1] = ACTIONS(1778), [aux_sym_preproc_def_token1] = ACTIONS(1778), [aux_sym_preproc_if_token1] = ACTIONS(1778), [aux_sym_preproc_if_token2] = ACTIONS(1778), [aux_sym_preproc_ifdef_token1] = ACTIONS(1778), [aux_sym_preproc_ifdef_token2] = ACTIONS(1778), [sym_preproc_directive] = ACTIONS(1778), [anon_sym_LPAREN2] = ACTIONS(1780), [anon_sym_BANG] = ACTIONS(1780), [anon_sym_TILDE] = ACTIONS(1780), [anon_sym_DASH] = ACTIONS(1778), [anon_sym_PLUS] = ACTIONS(1778), [anon_sym_STAR] = ACTIONS(1780), [anon_sym_AMP_AMP] = ACTIONS(1780), [anon_sym_AMP] = ACTIONS(1778), [anon_sym_SEMI] = ACTIONS(1780), [anon_sym_typedef] = ACTIONS(1778), [anon_sym_extern] = ACTIONS(1778), [anon_sym___attribute__] = ACTIONS(1778), [anon_sym_COLON_COLON] = ACTIONS(1780), [anon_sym_LBRACK_LBRACK] = ACTIONS(1780), [anon_sym___declspec] = ACTIONS(1778), [anon_sym___based] = ACTIONS(1778), [anon_sym___cdecl] = ACTIONS(1778), [anon_sym___clrcall] = ACTIONS(1778), [anon_sym___stdcall] = ACTIONS(1778), [anon_sym___fastcall] = ACTIONS(1778), [anon_sym___thiscall] = ACTIONS(1778), [anon_sym___vectorcall] = ACTIONS(1778), [anon_sym_LBRACE] = ACTIONS(1780), [anon_sym_LBRACK] = ACTIONS(1778), [anon_sym_static] = ACTIONS(1778), [anon_sym_register] = ACTIONS(1778), [anon_sym_inline] = ACTIONS(1778), [anon_sym_thread_local] = ACTIONS(1778), [anon_sym_const] = ACTIONS(1778), [anon_sym_volatile] = ACTIONS(1778), [anon_sym_restrict] = ACTIONS(1778), [anon_sym__Atomic] = ACTIONS(1778), [anon_sym_mutable] = ACTIONS(1778), [anon_sym_constexpr] = ACTIONS(1778), [anon_sym_signed] = ACTIONS(1778), [anon_sym_unsigned] = ACTIONS(1778), [anon_sym_long] = ACTIONS(1778), [anon_sym_short] = ACTIONS(1778), [sym_primitive_type] = ACTIONS(1778), [anon_sym_enum] = ACTIONS(1778), [anon_sym_class] = ACTIONS(1778), [anon_sym_struct] = ACTIONS(1778), [anon_sym_union] = ACTIONS(1778), [anon_sym_if] = ACTIONS(1778), [anon_sym_else] = ACTIONS(1778), [anon_sym_switch] = ACTIONS(1778), [anon_sym_case] = ACTIONS(1778), [anon_sym_default] = ACTIONS(1778), [anon_sym_while] = ACTIONS(1778), [anon_sym_do] = ACTIONS(1778), [anon_sym_for] = ACTIONS(1778), [anon_sym_return] = ACTIONS(1778), [anon_sym_break] = ACTIONS(1778), [anon_sym_continue] = ACTIONS(1778), [anon_sym_goto] = ACTIONS(1778), [anon_sym_DASH_DASH] = ACTIONS(1780), [anon_sym_PLUS_PLUS] = ACTIONS(1780), [anon_sym_sizeof] = ACTIONS(1778), [sym_number_literal] = ACTIONS(1780), [anon_sym_L_SQUOTE] = ACTIONS(1780), [anon_sym_u_SQUOTE] = ACTIONS(1780), [anon_sym_U_SQUOTE] = ACTIONS(1780), [anon_sym_u8_SQUOTE] = ACTIONS(1780), [anon_sym_SQUOTE] = ACTIONS(1780), [anon_sym_L_DQUOTE] = ACTIONS(1780), [anon_sym_u_DQUOTE] = ACTIONS(1780), [anon_sym_U_DQUOTE] = ACTIONS(1780), [anon_sym_u8_DQUOTE] = ACTIONS(1780), [anon_sym_DQUOTE] = ACTIONS(1780), [sym_true] = ACTIONS(1778), [sym_false] = ACTIONS(1778), [sym_null] = ACTIONS(1778), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1778), [anon_sym_virtual] = ACTIONS(1778), [anon_sym_explicit] = ACTIONS(1778), [sym_auto] = ACTIONS(1778), [anon_sym_typename] = ACTIONS(1778), [anon_sym_template] = ACTIONS(1778), [anon_sym_operator] = ACTIONS(1778), [anon_sym_delete] = ACTIONS(1778), [anon_sym_throw] = ACTIONS(1778), [anon_sym_namespace] = ACTIONS(1778), [anon_sym_using] = ACTIONS(1778), [anon_sym_static_assert] = ACTIONS(1778), [anon_sym_co_return] = ACTIONS(1778), [anon_sym_co_yield] = ACTIONS(1778), [anon_sym_try] = ACTIONS(1778), [anon_sym_co_await] = ACTIONS(1778), [anon_sym_new] = ACTIONS(1778), [sym_this] = ACTIONS(1778), [sym_nullptr] = ACTIONS(1778), [sym_raw_string_literal] = ACTIONS(1780), }, [576] = { [sym_identifier] = ACTIONS(1986), [aux_sym_preproc_include_token1] = ACTIONS(1986), [aux_sym_preproc_def_token1] = ACTIONS(1986), [aux_sym_preproc_if_token1] = ACTIONS(1986), [aux_sym_preproc_ifdef_token1] = ACTIONS(1986), [aux_sym_preproc_ifdef_token2] = ACTIONS(1986), [sym_preproc_directive] = ACTIONS(1986), [anon_sym_LPAREN2] = ACTIONS(1988), [anon_sym_BANG] = ACTIONS(1988), [anon_sym_TILDE] = ACTIONS(1988), [anon_sym_DASH] = ACTIONS(1986), [anon_sym_PLUS] = ACTIONS(1986), [anon_sym_STAR] = ACTIONS(1988), [anon_sym_AMP_AMP] = ACTIONS(1988), [anon_sym_AMP] = ACTIONS(1986), [anon_sym_SEMI] = ACTIONS(1988), [anon_sym_typedef] = ACTIONS(1986), [anon_sym_extern] = ACTIONS(1986), [anon_sym___attribute__] = ACTIONS(1986), [anon_sym_COLON_COLON] = ACTIONS(1988), [anon_sym_LBRACK_LBRACK] = ACTIONS(1988), [anon_sym___declspec] = ACTIONS(1986), [anon_sym___based] = ACTIONS(1986), [anon_sym___cdecl] = ACTIONS(1986), [anon_sym___clrcall] = ACTIONS(1986), [anon_sym___stdcall] = ACTIONS(1986), [anon_sym___fastcall] = ACTIONS(1986), [anon_sym___thiscall] = ACTIONS(1986), [anon_sym___vectorcall] = ACTIONS(1986), [anon_sym_LBRACE] = ACTIONS(1988), [anon_sym_RBRACE] = ACTIONS(1988), [anon_sym_LBRACK] = ACTIONS(1986), [anon_sym_static] = ACTIONS(1986), [anon_sym_register] = ACTIONS(1986), [anon_sym_inline] = ACTIONS(1986), [anon_sym_thread_local] = ACTIONS(1986), [anon_sym_const] = ACTIONS(1986), [anon_sym_volatile] = ACTIONS(1986), [anon_sym_restrict] = ACTIONS(1986), [anon_sym__Atomic] = ACTIONS(1986), [anon_sym_mutable] = ACTIONS(1986), [anon_sym_constexpr] = ACTIONS(1986), [anon_sym_signed] = ACTIONS(1986), [anon_sym_unsigned] = ACTIONS(1986), [anon_sym_long] = ACTIONS(1986), [anon_sym_short] = ACTIONS(1986), [sym_primitive_type] = ACTIONS(1986), [anon_sym_enum] = ACTIONS(1986), [anon_sym_class] = ACTIONS(1986), [anon_sym_struct] = ACTIONS(1986), [anon_sym_union] = ACTIONS(1986), [anon_sym_if] = ACTIONS(1986), [anon_sym_else] = ACTIONS(1986), [anon_sym_switch] = ACTIONS(1986), [anon_sym_case] = ACTIONS(1986), [anon_sym_default] = ACTIONS(1986), [anon_sym_while] = ACTIONS(1986), [anon_sym_do] = ACTIONS(1986), [anon_sym_for] = ACTIONS(1986), [anon_sym_return] = ACTIONS(1986), [anon_sym_break] = ACTIONS(1986), [anon_sym_continue] = ACTIONS(1986), [anon_sym_goto] = ACTIONS(1986), [anon_sym_DASH_DASH] = ACTIONS(1988), [anon_sym_PLUS_PLUS] = ACTIONS(1988), [anon_sym_sizeof] = ACTIONS(1986), [sym_number_literal] = ACTIONS(1988), [anon_sym_L_SQUOTE] = ACTIONS(1988), [anon_sym_u_SQUOTE] = ACTIONS(1988), [anon_sym_U_SQUOTE] = ACTIONS(1988), [anon_sym_u8_SQUOTE] = ACTIONS(1988), [anon_sym_SQUOTE] = ACTIONS(1988), [anon_sym_L_DQUOTE] = ACTIONS(1988), [anon_sym_u_DQUOTE] = ACTIONS(1988), [anon_sym_U_DQUOTE] = ACTIONS(1988), [anon_sym_u8_DQUOTE] = ACTIONS(1988), [anon_sym_DQUOTE] = ACTIONS(1988), [sym_true] = ACTIONS(1986), [sym_false] = ACTIONS(1986), [sym_null] = ACTIONS(1986), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1986), [anon_sym_virtual] = ACTIONS(1986), [anon_sym_explicit] = ACTIONS(1986), [sym_auto] = ACTIONS(1986), [anon_sym_typename] = ACTIONS(1986), [anon_sym_template] = ACTIONS(1986), [anon_sym_operator] = ACTIONS(1986), [anon_sym_delete] = ACTIONS(1986), [anon_sym_throw] = ACTIONS(1986), [anon_sym_namespace] = ACTIONS(1986), [anon_sym_using] = ACTIONS(1986), [anon_sym_static_assert] = ACTIONS(1986), [anon_sym_co_return] = ACTIONS(1986), [anon_sym_co_yield] = ACTIONS(1986), [anon_sym_try] = ACTIONS(1986), [anon_sym_co_await] = ACTIONS(1986), [anon_sym_new] = ACTIONS(1986), [sym_this] = ACTIONS(1986), [sym_nullptr] = ACTIONS(1986), [sym_raw_string_literal] = ACTIONS(1988), }, [577] = { [sym_identifier] = ACTIONS(1982), [aux_sym_preproc_include_token1] = ACTIONS(1982), [aux_sym_preproc_def_token1] = ACTIONS(1982), [aux_sym_preproc_if_token1] = ACTIONS(1982), [aux_sym_preproc_ifdef_token1] = ACTIONS(1982), [aux_sym_preproc_ifdef_token2] = ACTIONS(1982), [sym_preproc_directive] = ACTIONS(1982), [anon_sym_LPAREN2] = ACTIONS(1984), [anon_sym_BANG] = ACTIONS(1984), [anon_sym_TILDE] = ACTIONS(1984), [anon_sym_DASH] = ACTIONS(1982), [anon_sym_PLUS] = ACTIONS(1982), [anon_sym_STAR] = ACTIONS(1984), [anon_sym_AMP_AMP] = ACTIONS(1984), [anon_sym_AMP] = ACTIONS(1982), [anon_sym_SEMI] = ACTIONS(1984), [anon_sym_typedef] = ACTIONS(1982), [anon_sym_extern] = ACTIONS(1982), [anon_sym___attribute__] = ACTIONS(1982), [anon_sym_COLON_COLON] = ACTIONS(1984), [anon_sym_LBRACK_LBRACK] = ACTIONS(1984), [anon_sym___declspec] = ACTIONS(1982), [anon_sym___based] = ACTIONS(1982), [anon_sym___cdecl] = ACTIONS(1982), [anon_sym___clrcall] = ACTIONS(1982), [anon_sym___stdcall] = ACTIONS(1982), [anon_sym___fastcall] = ACTIONS(1982), [anon_sym___thiscall] = ACTIONS(1982), [anon_sym___vectorcall] = ACTIONS(1982), [anon_sym_LBRACE] = ACTIONS(1984), [anon_sym_RBRACE] = ACTIONS(1984), [anon_sym_LBRACK] = ACTIONS(1982), [anon_sym_static] = ACTIONS(1982), [anon_sym_register] = ACTIONS(1982), [anon_sym_inline] = ACTIONS(1982), [anon_sym_thread_local] = ACTIONS(1982), [anon_sym_const] = ACTIONS(1982), [anon_sym_volatile] = ACTIONS(1982), [anon_sym_restrict] = ACTIONS(1982), [anon_sym__Atomic] = ACTIONS(1982), [anon_sym_mutable] = ACTIONS(1982), [anon_sym_constexpr] = ACTIONS(1982), [anon_sym_signed] = ACTIONS(1982), [anon_sym_unsigned] = ACTIONS(1982), [anon_sym_long] = ACTIONS(1982), [anon_sym_short] = ACTIONS(1982), [sym_primitive_type] = ACTIONS(1982), [anon_sym_enum] = ACTIONS(1982), [anon_sym_class] = ACTIONS(1982), [anon_sym_struct] = ACTIONS(1982), [anon_sym_union] = ACTIONS(1982), [anon_sym_if] = ACTIONS(1982), [anon_sym_else] = ACTIONS(1982), [anon_sym_switch] = ACTIONS(1982), [anon_sym_case] = ACTIONS(1982), [anon_sym_default] = ACTIONS(1982), [anon_sym_while] = ACTIONS(1982), [anon_sym_do] = ACTIONS(1982), [anon_sym_for] = ACTIONS(1982), [anon_sym_return] = ACTIONS(1982), [anon_sym_break] = ACTIONS(1982), [anon_sym_continue] = ACTIONS(1982), [anon_sym_goto] = ACTIONS(1982), [anon_sym_DASH_DASH] = ACTIONS(1984), [anon_sym_PLUS_PLUS] = ACTIONS(1984), [anon_sym_sizeof] = ACTIONS(1982), [sym_number_literal] = ACTIONS(1984), [anon_sym_L_SQUOTE] = ACTIONS(1984), [anon_sym_u_SQUOTE] = ACTIONS(1984), [anon_sym_U_SQUOTE] = ACTIONS(1984), [anon_sym_u8_SQUOTE] = ACTIONS(1984), [anon_sym_SQUOTE] = ACTIONS(1984), [anon_sym_L_DQUOTE] = ACTIONS(1984), [anon_sym_u_DQUOTE] = ACTIONS(1984), [anon_sym_U_DQUOTE] = ACTIONS(1984), [anon_sym_u8_DQUOTE] = ACTIONS(1984), [anon_sym_DQUOTE] = ACTIONS(1984), [sym_true] = ACTIONS(1982), [sym_false] = ACTIONS(1982), [sym_null] = ACTIONS(1982), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1982), [anon_sym_virtual] = ACTIONS(1982), [anon_sym_explicit] = ACTIONS(1982), [sym_auto] = ACTIONS(1982), [anon_sym_typename] = ACTIONS(1982), [anon_sym_template] = ACTIONS(1982), [anon_sym_operator] = ACTIONS(1982), [anon_sym_delete] = ACTIONS(1982), [anon_sym_throw] = ACTIONS(1982), [anon_sym_namespace] = ACTIONS(1982), [anon_sym_using] = ACTIONS(1982), [anon_sym_static_assert] = ACTIONS(1982), [anon_sym_co_return] = ACTIONS(1982), [anon_sym_co_yield] = ACTIONS(1982), [anon_sym_try] = ACTIONS(1982), [anon_sym_co_await] = ACTIONS(1982), [anon_sym_new] = ACTIONS(1982), [sym_this] = ACTIONS(1982), [sym_nullptr] = ACTIONS(1982), [sym_raw_string_literal] = ACTIONS(1984), }, [578] = { [ts_builtin_sym_end] = ACTIONS(1996), [sym_identifier] = ACTIONS(1994), [aux_sym_preproc_include_token1] = ACTIONS(1994), [aux_sym_preproc_def_token1] = ACTIONS(1994), [aux_sym_preproc_if_token1] = ACTIONS(1994), [aux_sym_preproc_ifdef_token1] = ACTIONS(1994), [aux_sym_preproc_ifdef_token2] = ACTIONS(1994), [sym_preproc_directive] = ACTIONS(1994), [anon_sym_LPAREN2] = ACTIONS(1996), [anon_sym_BANG] = ACTIONS(1996), [anon_sym_TILDE] = ACTIONS(1996), [anon_sym_DASH] = ACTIONS(1994), [anon_sym_PLUS] = ACTIONS(1994), [anon_sym_STAR] = ACTIONS(1996), [anon_sym_AMP_AMP] = ACTIONS(1996), [anon_sym_AMP] = ACTIONS(1994), [anon_sym_SEMI] = ACTIONS(1996), [anon_sym_typedef] = ACTIONS(1994), [anon_sym_extern] = ACTIONS(1994), [anon_sym___attribute__] = ACTIONS(1994), [anon_sym_COLON_COLON] = ACTIONS(1996), [anon_sym_LBRACK_LBRACK] = ACTIONS(1996), [anon_sym___declspec] = ACTIONS(1994), [anon_sym___based] = ACTIONS(1994), [anon_sym___cdecl] = ACTIONS(1994), [anon_sym___clrcall] = ACTIONS(1994), [anon_sym___stdcall] = ACTIONS(1994), [anon_sym___fastcall] = ACTIONS(1994), [anon_sym___thiscall] = ACTIONS(1994), [anon_sym___vectorcall] = ACTIONS(1994), [anon_sym_LBRACE] = ACTIONS(1996), [anon_sym_LBRACK] = ACTIONS(1994), [anon_sym_static] = ACTIONS(1994), [anon_sym_register] = ACTIONS(1994), [anon_sym_inline] = ACTIONS(1994), [anon_sym_thread_local] = ACTIONS(1994), [anon_sym_const] = ACTIONS(1994), [anon_sym_volatile] = ACTIONS(1994), [anon_sym_restrict] = ACTIONS(1994), [anon_sym__Atomic] = ACTIONS(1994), [anon_sym_mutable] = ACTIONS(1994), [anon_sym_constexpr] = ACTIONS(1994), [anon_sym_signed] = ACTIONS(1994), [anon_sym_unsigned] = ACTIONS(1994), [anon_sym_long] = ACTIONS(1994), [anon_sym_short] = ACTIONS(1994), [sym_primitive_type] = ACTIONS(1994), [anon_sym_enum] = ACTIONS(1994), [anon_sym_class] = ACTIONS(1994), [anon_sym_struct] = ACTIONS(1994), [anon_sym_union] = ACTIONS(1994), [anon_sym_if] = ACTIONS(1994), [anon_sym_else] = ACTIONS(1994), [anon_sym_switch] = ACTIONS(1994), [anon_sym_case] = ACTIONS(1994), [anon_sym_default] = ACTIONS(1994), [anon_sym_while] = ACTIONS(1994), [anon_sym_do] = ACTIONS(1994), [anon_sym_for] = ACTIONS(1994), [anon_sym_return] = ACTIONS(1994), [anon_sym_break] = ACTIONS(1994), [anon_sym_continue] = ACTIONS(1994), [anon_sym_goto] = ACTIONS(1994), [anon_sym_DASH_DASH] = ACTIONS(1996), [anon_sym_PLUS_PLUS] = ACTIONS(1996), [anon_sym_sizeof] = ACTIONS(1994), [sym_number_literal] = ACTIONS(1996), [anon_sym_L_SQUOTE] = ACTIONS(1996), [anon_sym_u_SQUOTE] = ACTIONS(1996), [anon_sym_U_SQUOTE] = ACTIONS(1996), [anon_sym_u8_SQUOTE] = ACTIONS(1996), [anon_sym_SQUOTE] = ACTIONS(1996), [anon_sym_L_DQUOTE] = ACTIONS(1996), [anon_sym_u_DQUOTE] = ACTIONS(1996), [anon_sym_U_DQUOTE] = ACTIONS(1996), [anon_sym_u8_DQUOTE] = ACTIONS(1996), [anon_sym_DQUOTE] = ACTIONS(1996), [sym_true] = ACTIONS(1994), [sym_false] = ACTIONS(1994), [sym_null] = ACTIONS(1994), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1994), [anon_sym_virtual] = ACTIONS(1994), [anon_sym_explicit] = ACTIONS(1994), [sym_auto] = ACTIONS(1994), [anon_sym_typename] = ACTIONS(1994), [anon_sym_template] = ACTIONS(1994), [anon_sym_operator] = ACTIONS(1994), [anon_sym_delete] = ACTIONS(1994), [anon_sym_throw] = ACTIONS(1994), [anon_sym_namespace] = ACTIONS(1994), [anon_sym_using] = ACTIONS(1994), [anon_sym_static_assert] = ACTIONS(1994), [anon_sym_co_return] = ACTIONS(1994), [anon_sym_co_yield] = ACTIONS(1994), [anon_sym_try] = ACTIONS(1994), [anon_sym_co_await] = ACTIONS(1994), [anon_sym_new] = ACTIONS(1994), [sym_this] = ACTIONS(1994), [sym_nullptr] = ACTIONS(1994), [sym_raw_string_literal] = ACTIONS(1996), }, [579] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [580] = { [sym_identifier] = ACTIONS(1848), [aux_sym_preproc_include_token1] = ACTIONS(1848), [aux_sym_preproc_def_token1] = ACTIONS(1848), [aux_sym_preproc_if_token1] = ACTIONS(1848), [aux_sym_preproc_ifdef_token1] = ACTIONS(1848), [aux_sym_preproc_ifdef_token2] = ACTIONS(1848), [sym_preproc_directive] = ACTIONS(1848), [anon_sym_LPAREN2] = ACTIONS(1850), [anon_sym_BANG] = ACTIONS(1850), [anon_sym_TILDE] = ACTIONS(1850), [anon_sym_DASH] = ACTIONS(1848), [anon_sym_PLUS] = ACTIONS(1848), [anon_sym_STAR] = ACTIONS(1850), [anon_sym_AMP_AMP] = ACTIONS(1850), [anon_sym_AMP] = ACTIONS(1848), [anon_sym_SEMI] = ACTIONS(1850), [anon_sym_typedef] = ACTIONS(1848), [anon_sym_extern] = ACTIONS(1848), [anon_sym___attribute__] = ACTIONS(1848), [anon_sym_COLON_COLON] = ACTIONS(1850), [anon_sym_LBRACK_LBRACK] = ACTIONS(1850), [anon_sym___declspec] = ACTIONS(1848), [anon_sym___based] = ACTIONS(1848), [anon_sym___cdecl] = ACTIONS(1848), [anon_sym___clrcall] = ACTIONS(1848), [anon_sym___stdcall] = ACTIONS(1848), [anon_sym___fastcall] = ACTIONS(1848), [anon_sym___thiscall] = ACTIONS(1848), [anon_sym___vectorcall] = ACTIONS(1848), [anon_sym_LBRACE] = ACTIONS(1850), [anon_sym_RBRACE] = ACTIONS(1850), [anon_sym_LBRACK] = ACTIONS(1848), [anon_sym_static] = ACTIONS(1848), [anon_sym_register] = ACTIONS(1848), [anon_sym_inline] = ACTIONS(1848), [anon_sym_thread_local] = ACTIONS(1848), [anon_sym_const] = ACTIONS(1848), [anon_sym_volatile] = ACTIONS(1848), [anon_sym_restrict] = ACTIONS(1848), [anon_sym__Atomic] = ACTIONS(1848), [anon_sym_mutable] = ACTIONS(1848), [anon_sym_constexpr] = ACTIONS(1848), [anon_sym_signed] = ACTIONS(1848), [anon_sym_unsigned] = ACTIONS(1848), [anon_sym_long] = ACTIONS(1848), [anon_sym_short] = ACTIONS(1848), [sym_primitive_type] = ACTIONS(1848), [anon_sym_enum] = ACTIONS(1848), [anon_sym_class] = ACTIONS(1848), [anon_sym_struct] = ACTIONS(1848), [anon_sym_union] = ACTIONS(1848), [anon_sym_if] = ACTIONS(1848), [anon_sym_else] = ACTIONS(1848), [anon_sym_switch] = ACTIONS(1848), [anon_sym_case] = ACTIONS(1848), [anon_sym_default] = ACTIONS(1848), [anon_sym_while] = ACTIONS(1848), [anon_sym_do] = ACTIONS(1848), [anon_sym_for] = ACTIONS(1848), [anon_sym_return] = ACTIONS(1848), [anon_sym_break] = ACTIONS(1848), [anon_sym_continue] = ACTIONS(1848), [anon_sym_goto] = ACTIONS(1848), [anon_sym_DASH_DASH] = ACTIONS(1850), [anon_sym_PLUS_PLUS] = ACTIONS(1850), [anon_sym_sizeof] = ACTIONS(1848), [sym_number_literal] = ACTIONS(1850), [anon_sym_L_SQUOTE] = ACTIONS(1850), [anon_sym_u_SQUOTE] = ACTIONS(1850), [anon_sym_U_SQUOTE] = ACTIONS(1850), [anon_sym_u8_SQUOTE] = ACTIONS(1850), [anon_sym_SQUOTE] = ACTIONS(1850), [anon_sym_L_DQUOTE] = ACTIONS(1850), [anon_sym_u_DQUOTE] = ACTIONS(1850), [anon_sym_U_DQUOTE] = ACTIONS(1850), [anon_sym_u8_DQUOTE] = ACTIONS(1850), [anon_sym_DQUOTE] = ACTIONS(1850), [sym_true] = ACTIONS(1848), [sym_false] = ACTIONS(1848), [sym_null] = ACTIONS(1848), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1848), [anon_sym_virtual] = ACTIONS(1848), [anon_sym_explicit] = ACTIONS(1848), [sym_auto] = ACTIONS(1848), [anon_sym_typename] = ACTIONS(1848), [anon_sym_template] = ACTIONS(1848), [anon_sym_operator] = ACTIONS(1848), [anon_sym_delete] = ACTIONS(1848), [anon_sym_throw] = ACTIONS(1848), [anon_sym_namespace] = ACTIONS(1848), [anon_sym_using] = ACTIONS(1848), [anon_sym_static_assert] = ACTIONS(1848), [anon_sym_co_return] = ACTIONS(1848), [anon_sym_co_yield] = ACTIONS(1848), [anon_sym_try] = ACTIONS(1848), [anon_sym_co_await] = ACTIONS(1848), [anon_sym_new] = ACTIONS(1848), [sym_this] = ACTIONS(1848), [sym_nullptr] = ACTIONS(1848), [sym_raw_string_literal] = ACTIONS(1850), }, [581] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [582] = { [sym_identifier] = ACTIONS(1852), [aux_sym_preproc_include_token1] = ACTIONS(1852), [aux_sym_preproc_def_token1] = ACTIONS(1852), [aux_sym_preproc_if_token1] = ACTIONS(1852), [aux_sym_preproc_ifdef_token1] = ACTIONS(1852), [aux_sym_preproc_ifdef_token2] = ACTIONS(1852), [sym_preproc_directive] = ACTIONS(1852), [anon_sym_LPAREN2] = ACTIONS(1854), [anon_sym_BANG] = ACTIONS(1854), [anon_sym_TILDE] = ACTIONS(1854), [anon_sym_DASH] = ACTIONS(1852), [anon_sym_PLUS] = ACTIONS(1852), [anon_sym_STAR] = ACTIONS(1854), [anon_sym_AMP_AMP] = ACTIONS(1854), [anon_sym_AMP] = ACTIONS(1852), [anon_sym_SEMI] = ACTIONS(1854), [anon_sym_typedef] = ACTIONS(1852), [anon_sym_extern] = ACTIONS(1852), [anon_sym___attribute__] = ACTIONS(1852), [anon_sym_COLON_COLON] = ACTIONS(1854), [anon_sym_LBRACK_LBRACK] = ACTIONS(1854), [anon_sym___declspec] = ACTIONS(1852), [anon_sym___based] = ACTIONS(1852), [anon_sym___cdecl] = ACTIONS(1852), [anon_sym___clrcall] = ACTIONS(1852), [anon_sym___stdcall] = ACTIONS(1852), [anon_sym___fastcall] = ACTIONS(1852), [anon_sym___thiscall] = ACTIONS(1852), [anon_sym___vectorcall] = ACTIONS(1852), [anon_sym_LBRACE] = ACTIONS(1854), [anon_sym_RBRACE] = ACTIONS(1854), [anon_sym_LBRACK] = ACTIONS(1852), [anon_sym_static] = ACTIONS(1852), [anon_sym_register] = ACTIONS(1852), [anon_sym_inline] = ACTIONS(1852), [anon_sym_thread_local] = ACTIONS(1852), [anon_sym_const] = ACTIONS(1852), [anon_sym_volatile] = ACTIONS(1852), [anon_sym_restrict] = ACTIONS(1852), [anon_sym__Atomic] = ACTIONS(1852), [anon_sym_mutable] = ACTIONS(1852), [anon_sym_constexpr] = ACTIONS(1852), [anon_sym_signed] = ACTIONS(1852), [anon_sym_unsigned] = ACTIONS(1852), [anon_sym_long] = ACTIONS(1852), [anon_sym_short] = ACTIONS(1852), [sym_primitive_type] = ACTIONS(1852), [anon_sym_enum] = ACTIONS(1852), [anon_sym_class] = ACTIONS(1852), [anon_sym_struct] = ACTIONS(1852), [anon_sym_union] = ACTIONS(1852), [anon_sym_if] = ACTIONS(1852), [anon_sym_else] = ACTIONS(1852), [anon_sym_switch] = ACTIONS(1852), [anon_sym_case] = ACTIONS(1852), [anon_sym_default] = ACTIONS(1852), [anon_sym_while] = ACTIONS(1852), [anon_sym_do] = ACTIONS(1852), [anon_sym_for] = ACTIONS(1852), [anon_sym_return] = ACTIONS(1852), [anon_sym_break] = ACTIONS(1852), [anon_sym_continue] = ACTIONS(1852), [anon_sym_goto] = ACTIONS(1852), [anon_sym_DASH_DASH] = ACTIONS(1854), [anon_sym_PLUS_PLUS] = ACTIONS(1854), [anon_sym_sizeof] = ACTIONS(1852), [sym_number_literal] = ACTIONS(1854), [anon_sym_L_SQUOTE] = ACTIONS(1854), [anon_sym_u_SQUOTE] = ACTIONS(1854), [anon_sym_U_SQUOTE] = ACTIONS(1854), [anon_sym_u8_SQUOTE] = ACTIONS(1854), [anon_sym_SQUOTE] = ACTIONS(1854), [anon_sym_L_DQUOTE] = ACTIONS(1854), [anon_sym_u_DQUOTE] = ACTIONS(1854), [anon_sym_U_DQUOTE] = ACTIONS(1854), [anon_sym_u8_DQUOTE] = ACTIONS(1854), [anon_sym_DQUOTE] = ACTIONS(1854), [sym_true] = ACTIONS(1852), [sym_false] = ACTIONS(1852), [sym_null] = ACTIONS(1852), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1852), [anon_sym_virtual] = ACTIONS(1852), [anon_sym_explicit] = ACTIONS(1852), [sym_auto] = ACTIONS(1852), [anon_sym_typename] = ACTIONS(1852), [anon_sym_template] = ACTIONS(1852), [anon_sym_operator] = ACTIONS(1852), [anon_sym_delete] = ACTIONS(1852), [anon_sym_throw] = ACTIONS(1852), [anon_sym_namespace] = ACTIONS(1852), [anon_sym_using] = ACTIONS(1852), [anon_sym_static_assert] = ACTIONS(1852), [anon_sym_co_return] = ACTIONS(1852), [anon_sym_co_yield] = ACTIONS(1852), [anon_sym_try] = ACTIONS(1852), [anon_sym_co_await] = ACTIONS(1852), [anon_sym_new] = ACTIONS(1852), [sym_this] = ACTIONS(1852), [sym_nullptr] = ACTIONS(1852), [sym_raw_string_literal] = ACTIONS(1854), }, [583] = { [ts_builtin_sym_end] = ACTIONS(2000), [sym_identifier] = ACTIONS(1998), [aux_sym_preproc_include_token1] = ACTIONS(1998), [aux_sym_preproc_def_token1] = ACTIONS(1998), [aux_sym_preproc_if_token1] = ACTIONS(1998), [aux_sym_preproc_ifdef_token1] = ACTIONS(1998), [aux_sym_preproc_ifdef_token2] = ACTIONS(1998), [sym_preproc_directive] = ACTIONS(1998), [anon_sym_LPAREN2] = ACTIONS(2000), [anon_sym_BANG] = ACTIONS(2000), [anon_sym_TILDE] = ACTIONS(2000), [anon_sym_DASH] = ACTIONS(1998), [anon_sym_PLUS] = ACTIONS(1998), [anon_sym_STAR] = ACTIONS(2000), [anon_sym_AMP_AMP] = ACTIONS(2000), [anon_sym_AMP] = ACTIONS(1998), [anon_sym_SEMI] = ACTIONS(2000), [anon_sym_typedef] = ACTIONS(1998), [anon_sym_extern] = ACTIONS(1998), [anon_sym___attribute__] = ACTIONS(1998), [anon_sym_COLON_COLON] = ACTIONS(2000), [anon_sym_LBRACK_LBRACK] = ACTIONS(2000), [anon_sym___declspec] = ACTIONS(1998), [anon_sym___based] = ACTIONS(1998), [anon_sym___cdecl] = ACTIONS(1998), [anon_sym___clrcall] = ACTIONS(1998), [anon_sym___stdcall] = ACTIONS(1998), [anon_sym___fastcall] = ACTIONS(1998), [anon_sym___thiscall] = ACTIONS(1998), [anon_sym___vectorcall] = ACTIONS(1998), [anon_sym_LBRACE] = ACTIONS(2000), [anon_sym_LBRACK] = ACTIONS(1998), [anon_sym_static] = ACTIONS(1998), [anon_sym_register] = ACTIONS(1998), [anon_sym_inline] = ACTIONS(1998), [anon_sym_thread_local] = ACTIONS(1998), [anon_sym_const] = ACTIONS(1998), [anon_sym_volatile] = ACTIONS(1998), [anon_sym_restrict] = ACTIONS(1998), [anon_sym__Atomic] = ACTIONS(1998), [anon_sym_mutable] = ACTIONS(1998), [anon_sym_constexpr] = ACTIONS(1998), [anon_sym_signed] = ACTIONS(1998), [anon_sym_unsigned] = ACTIONS(1998), [anon_sym_long] = ACTIONS(1998), [anon_sym_short] = ACTIONS(1998), [sym_primitive_type] = ACTIONS(1998), [anon_sym_enum] = ACTIONS(1998), [anon_sym_class] = ACTIONS(1998), [anon_sym_struct] = ACTIONS(1998), [anon_sym_union] = ACTIONS(1998), [anon_sym_if] = ACTIONS(1998), [anon_sym_else] = ACTIONS(1998), [anon_sym_switch] = ACTIONS(1998), [anon_sym_case] = ACTIONS(1998), [anon_sym_default] = ACTIONS(1998), [anon_sym_while] = ACTIONS(1998), [anon_sym_do] = ACTIONS(1998), [anon_sym_for] = ACTIONS(1998), [anon_sym_return] = ACTIONS(1998), [anon_sym_break] = ACTIONS(1998), [anon_sym_continue] = ACTIONS(1998), [anon_sym_goto] = ACTIONS(1998), [anon_sym_DASH_DASH] = ACTIONS(2000), [anon_sym_PLUS_PLUS] = ACTIONS(2000), [anon_sym_sizeof] = ACTIONS(1998), [sym_number_literal] = ACTIONS(2000), [anon_sym_L_SQUOTE] = ACTIONS(2000), [anon_sym_u_SQUOTE] = ACTIONS(2000), [anon_sym_U_SQUOTE] = ACTIONS(2000), [anon_sym_u8_SQUOTE] = ACTIONS(2000), [anon_sym_SQUOTE] = ACTIONS(2000), [anon_sym_L_DQUOTE] = ACTIONS(2000), [anon_sym_u_DQUOTE] = ACTIONS(2000), [anon_sym_U_DQUOTE] = ACTIONS(2000), [anon_sym_u8_DQUOTE] = ACTIONS(2000), [anon_sym_DQUOTE] = ACTIONS(2000), [sym_true] = ACTIONS(1998), [sym_false] = ACTIONS(1998), [sym_null] = ACTIONS(1998), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1998), [anon_sym_virtual] = ACTIONS(1998), [anon_sym_explicit] = ACTIONS(1998), [sym_auto] = ACTIONS(1998), [anon_sym_typename] = ACTIONS(1998), [anon_sym_template] = ACTIONS(1998), [anon_sym_operator] = ACTIONS(1998), [anon_sym_delete] = ACTIONS(1998), [anon_sym_throw] = ACTIONS(1998), [anon_sym_namespace] = ACTIONS(1998), [anon_sym_using] = ACTIONS(1998), [anon_sym_static_assert] = ACTIONS(1998), [anon_sym_co_return] = ACTIONS(1998), [anon_sym_co_yield] = ACTIONS(1998), [anon_sym_try] = ACTIONS(1998), [anon_sym_co_await] = ACTIONS(1998), [anon_sym_new] = ACTIONS(1998), [sym_this] = ACTIONS(1998), [sym_nullptr] = ACTIONS(1998), [sym_raw_string_literal] = ACTIONS(2000), }, [584] = { [sym_identifier] = ACTIONS(1938), [aux_sym_preproc_include_token1] = ACTIONS(1938), [aux_sym_preproc_def_token1] = ACTIONS(1938), [aux_sym_preproc_if_token1] = ACTIONS(1938), [aux_sym_preproc_ifdef_token1] = ACTIONS(1938), [aux_sym_preproc_ifdef_token2] = ACTIONS(1938), [sym_preproc_directive] = ACTIONS(1938), [anon_sym_LPAREN2] = ACTIONS(1940), [anon_sym_BANG] = ACTIONS(1940), [anon_sym_TILDE] = ACTIONS(1940), [anon_sym_DASH] = ACTIONS(1938), [anon_sym_PLUS] = ACTIONS(1938), [anon_sym_STAR] = ACTIONS(1940), [anon_sym_AMP_AMP] = ACTIONS(1940), [anon_sym_AMP] = ACTIONS(1938), [anon_sym_SEMI] = ACTIONS(1940), [anon_sym_typedef] = ACTIONS(1938), [anon_sym_extern] = ACTIONS(1938), [anon_sym___attribute__] = ACTIONS(1938), [anon_sym_COLON_COLON] = ACTIONS(1940), [anon_sym_LBRACK_LBRACK] = ACTIONS(1940), [anon_sym___declspec] = ACTIONS(1938), [anon_sym___based] = ACTIONS(1938), [anon_sym___cdecl] = ACTIONS(1938), [anon_sym___clrcall] = ACTIONS(1938), [anon_sym___stdcall] = ACTIONS(1938), [anon_sym___fastcall] = ACTIONS(1938), [anon_sym___thiscall] = ACTIONS(1938), [anon_sym___vectorcall] = ACTIONS(1938), [anon_sym_LBRACE] = ACTIONS(1940), [anon_sym_RBRACE] = ACTIONS(1940), [anon_sym_LBRACK] = ACTIONS(1938), [anon_sym_static] = ACTIONS(1938), [anon_sym_register] = ACTIONS(1938), [anon_sym_inline] = ACTIONS(1938), [anon_sym_thread_local] = ACTIONS(1938), [anon_sym_const] = ACTIONS(1938), [anon_sym_volatile] = ACTIONS(1938), [anon_sym_restrict] = ACTIONS(1938), [anon_sym__Atomic] = ACTIONS(1938), [anon_sym_mutable] = ACTIONS(1938), [anon_sym_constexpr] = ACTIONS(1938), [anon_sym_signed] = ACTIONS(1938), [anon_sym_unsigned] = ACTIONS(1938), [anon_sym_long] = ACTIONS(1938), [anon_sym_short] = ACTIONS(1938), [sym_primitive_type] = ACTIONS(1938), [anon_sym_enum] = ACTIONS(1938), [anon_sym_class] = ACTIONS(1938), [anon_sym_struct] = ACTIONS(1938), [anon_sym_union] = ACTIONS(1938), [anon_sym_if] = ACTIONS(1938), [anon_sym_else] = ACTIONS(1938), [anon_sym_switch] = ACTIONS(1938), [anon_sym_case] = ACTIONS(1938), [anon_sym_default] = ACTIONS(1938), [anon_sym_while] = ACTIONS(1938), [anon_sym_do] = ACTIONS(1938), [anon_sym_for] = ACTIONS(1938), [anon_sym_return] = ACTIONS(1938), [anon_sym_break] = ACTIONS(1938), [anon_sym_continue] = ACTIONS(1938), [anon_sym_goto] = ACTIONS(1938), [anon_sym_DASH_DASH] = ACTIONS(1940), [anon_sym_PLUS_PLUS] = ACTIONS(1940), [anon_sym_sizeof] = ACTIONS(1938), [sym_number_literal] = ACTIONS(1940), [anon_sym_L_SQUOTE] = ACTIONS(1940), [anon_sym_u_SQUOTE] = ACTIONS(1940), [anon_sym_U_SQUOTE] = ACTIONS(1940), [anon_sym_u8_SQUOTE] = ACTIONS(1940), [anon_sym_SQUOTE] = ACTIONS(1940), [anon_sym_L_DQUOTE] = ACTIONS(1940), [anon_sym_u_DQUOTE] = ACTIONS(1940), [anon_sym_U_DQUOTE] = ACTIONS(1940), [anon_sym_u8_DQUOTE] = ACTIONS(1940), [anon_sym_DQUOTE] = ACTIONS(1940), [sym_true] = ACTIONS(1938), [sym_false] = ACTIONS(1938), [sym_null] = ACTIONS(1938), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1938), [anon_sym_virtual] = ACTIONS(1938), [anon_sym_explicit] = ACTIONS(1938), [sym_auto] = ACTIONS(1938), [anon_sym_typename] = ACTIONS(1938), [anon_sym_template] = ACTIONS(1938), [anon_sym_operator] = ACTIONS(1938), [anon_sym_delete] = ACTIONS(1938), [anon_sym_throw] = ACTIONS(1938), [anon_sym_namespace] = ACTIONS(1938), [anon_sym_using] = ACTIONS(1938), [anon_sym_static_assert] = ACTIONS(1938), [anon_sym_co_return] = ACTIONS(1938), [anon_sym_co_yield] = ACTIONS(1938), [anon_sym_try] = ACTIONS(1938), [anon_sym_co_await] = ACTIONS(1938), [anon_sym_new] = ACTIONS(1938), [sym_this] = ACTIONS(1938), [sym_nullptr] = ACTIONS(1938), [sym_raw_string_literal] = ACTIONS(1940), }, [585] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [586] = { [sym_identifier] = ACTIONS(1942), [aux_sym_preproc_include_token1] = ACTIONS(1942), [aux_sym_preproc_def_token1] = ACTIONS(1942), [aux_sym_preproc_if_token1] = ACTIONS(1942), [aux_sym_preproc_ifdef_token1] = ACTIONS(1942), [aux_sym_preproc_ifdef_token2] = ACTIONS(1942), [sym_preproc_directive] = ACTIONS(1942), [anon_sym_LPAREN2] = ACTIONS(1944), [anon_sym_BANG] = ACTIONS(1944), [anon_sym_TILDE] = ACTIONS(1944), [anon_sym_DASH] = ACTIONS(1942), [anon_sym_PLUS] = ACTIONS(1942), [anon_sym_STAR] = ACTIONS(1944), [anon_sym_AMP_AMP] = ACTIONS(1944), [anon_sym_AMP] = ACTIONS(1942), [anon_sym_SEMI] = ACTIONS(1944), [anon_sym_typedef] = ACTIONS(1942), [anon_sym_extern] = ACTIONS(1942), [anon_sym___attribute__] = ACTIONS(1942), [anon_sym_COLON_COLON] = ACTIONS(1944), [anon_sym_LBRACK_LBRACK] = ACTIONS(1944), [anon_sym___declspec] = ACTIONS(1942), [anon_sym___based] = ACTIONS(1942), [anon_sym___cdecl] = ACTIONS(1942), [anon_sym___clrcall] = ACTIONS(1942), [anon_sym___stdcall] = ACTIONS(1942), [anon_sym___fastcall] = ACTIONS(1942), [anon_sym___thiscall] = ACTIONS(1942), [anon_sym___vectorcall] = ACTIONS(1942), [anon_sym_LBRACE] = ACTIONS(1944), [anon_sym_RBRACE] = ACTIONS(1944), [anon_sym_LBRACK] = ACTIONS(1942), [anon_sym_static] = ACTIONS(1942), [anon_sym_register] = ACTIONS(1942), [anon_sym_inline] = ACTIONS(1942), [anon_sym_thread_local] = ACTIONS(1942), [anon_sym_const] = ACTIONS(1942), [anon_sym_volatile] = ACTIONS(1942), [anon_sym_restrict] = ACTIONS(1942), [anon_sym__Atomic] = ACTIONS(1942), [anon_sym_mutable] = ACTIONS(1942), [anon_sym_constexpr] = ACTIONS(1942), [anon_sym_signed] = ACTIONS(1942), [anon_sym_unsigned] = ACTIONS(1942), [anon_sym_long] = ACTIONS(1942), [anon_sym_short] = ACTIONS(1942), [sym_primitive_type] = ACTIONS(1942), [anon_sym_enum] = ACTIONS(1942), [anon_sym_class] = ACTIONS(1942), [anon_sym_struct] = ACTIONS(1942), [anon_sym_union] = ACTIONS(1942), [anon_sym_if] = ACTIONS(1942), [anon_sym_else] = ACTIONS(1942), [anon_sym_switch] = ACTIONS(1942), [anon_sym_case] = ACTIONS(1942), [anon_sym_default] = ACTIONS(1942), [anon_sym_while] = ACTIONS(1942), [anon_sym_do] = ACTIONS(1942), [anon_sym_for] = ACTIONS(1942), [anon_sym_return] = ACTIONS(1942), [anon_sym_break] = ACTIONS(1942), [anon_sym_continue] = ACTIONS(1942), [anon_sym_goto] = ACTIONS(1942), [anon_sym_DASH_DASH] = ACTIONS(1944), [anon_sym_PLUS_PLUS] = ACTIONS(1944), [anon_sym_sizeof] = ACTIONS(1942), [sym_number_literal] = ACTIONS(1944), [anon_sym_L_SQUOTE] = ACTIONS(1944), [anon_sym_u_SQUOTE] = ACTIONS(1944), [anon_sym_U_SQUOTE] = ACTIONS(1944), [anon_sym_u8_SQUOTE] = ACTIONS(1944), [anon_sym_SQUOTE] = ACTIONS(1944), [anon_sym_L_DQUOTE] = ACTIONS(1944), [anon_sym_u_DQUOTE] = ACTIONS(1944), [anon_sym_U_DQUOTE] = ACTIONS(1944), [anon_sym_u8_DQUOTE] = ACTIONS(1944), [anon_sym_DQUOTE] = ACTIONS(1944), [sym_true] = ACTIONS(1942), [sym_false] = ACTIONS(1942), [sym_null] = ACTIONS(1942), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1942), [anon_sym_virtual] = ACTIONS(1942), [anon_sym_explicit] = ACTIONS(1942), [sym_auto] = ACTIONS(1942), [anon_sym_typename] = ACTIONS(1942), [anon_sym_template] = ACTIONS(1942), [anon_sym_operator] = ACTIONS(1942), [anon_sym_delete] = ACTIONS(1942), [anon_sym_throw] = ACTIONS(1942), [anon_sym_namespace] = ACTIONS(1942), [anon_sym_using] = ACTIONS(1942), [anon_sym_static_assert] = ACTIONS(1942), [anon_sym_co_return] = ACTIONS(1942), [anon_sym_co_yield] = ACTIONS(1942), [anon_sym_try] = ACTIONS(1942), [anon_sym_co_await] = ACTIONS(1942), [anon_sym_new] = ACTIONS(1942), [sym_this] = ACTIONS(1942), [sym_nullptr] = ACTIONS(1942), [sym_raw_string_literal] = ACTIONS(1944), }, [587] = { [ts_builtin_sym_end] = ACTIONS(2004), [sym_identifier] = ACTIONS(2002), [aux_sym_preproc_include_token1] = ACTIONS(2002), [aux_sym_preproc_def_token1] = ACTIONS(2002), [aux_sym_preproc_if_token1] = ACTIONS(2002), [aux_sym_preproc_ifdef_token1] = ACTIONS(2002), [aux_sym_preproc_ifdef_token2] = ACTIONS(2002), [sym_preproc_directive] = ACTIONS(2002), [anon_sym_LPAREN2] = ACTIONS(2004), [anon_sym_BANG] = ACTIONS(2004), [anon_sym_TILDE] = ACTIONS(2004), [anon_sym_DASH] = ACTIONS(2002), [anon_sym_PLUS] = ACTIONS(2002), [anon_sym_STAR] = ACTIONS(2004), [anon_sym_AMP_AMP] = ACTIONS(2004), [anon_sym_AMP] = ACTIONS(2002), [anon_sym_SEMI] = ACTIONS(2004), [anon_sym_typedef] = ACTIONS(2002), [anon_sym_extern] = ACTIONS(2002), [anon_sym___attribute__] = ACTIONS(2002), [anon_sym_COLON_COLON] = ACTIONS(2004), [anon_sym_LBRACK_LBRACK] = ACTIONS(2004), [anon_sym___declspec] = ACTIONS(2002), [anon_sym___based] = ACTIONS(2002), [anon_sym___cdecl] = ACTIONS(2002), [anon_sym___clrcall] = ACTIONS(2002), [anon_sym___stdcall] = ACTIONS(2002), [anon_sym___fastcall] = ACTIONS(2002), [anon_sym___thiscall] = ACTIONS(2002), [anon_sym___vectorcall] = ACTIONS(2002), [anon_sym_LBRACE] = ACTIONS(2004), [anon_sym_LBRACK] = ACTIONS(2002), [anon_sym_static] = ACTIONS(2002), [anon_sym_register] = ACTIONS(2002), [anon_sym_inline] = ACTIONS(2002), [anon_sym_thread_local] = ACTIONS(2002), [anon_sym_const] = ACTIONS(2002), [anon_sym_volatile] = ACTIONS(2002), [anon_sym_restrict] = ACTIONS(2002), [anon_sym__Atomic] = ACTIONS(2002), [anon_sym_mutable] = ACTIONS(2002), [anon_sym_constexpr] = ACTIONS(2002), [anon_sym_signed] = ACTIONS(2002), [anon_sym_unsigned] = ACTIONS(2002), [anon_sym_long] = ACTIONS(2002), [anon_sym_short] = ACTIONS(2002), [sym_primitive_type] = ACTIONS(2002), [anon_sym_enum] = ACTIONS(2002), [anon_sym_class] = ACTIONS(2002), [anon_sym_struct] = ACTIONS(2002), [anon_sym_union] = ACTIONS(2002), [anon_sym_if] = ACTIONS(2002), [anon_sym_else] = ACTIONS(2002), [anon_sym_switch] = ACTIONS(2002), [anon_sym_case] = ACTIONS(2002), [anon_sym_default] = ACTIONS(2002), [anon_sym_while] = ACTIONS(2002), [anon_sym_do] = ACTIONS(2002), [anon_sym_for] = ACTIONS(2002), [anon_sym_return] = ACTIONS(2002), [anon_sym_break] = ACTIONS(2002), [anon_sym_continue] = ACTIONS(2002), [anon_sym_goto] = ACTIONS(2002), [anon_sym_DASH_DASH] = ACTIONS(2004), [anon_sym_PLUS_PLUS] = ACTIONS(2004), [anon_sym_sizeof] = ACTIONS(2002), [sym_number_literal] = ACTIONS(2004), [anon_sym_L_SQUOTE] = ACTIONS(2004), [anon_sym_u_SQUOTE] = ACTIONS(2004), [anon_sym_U_SQUOTE] = ACTIONS(2004), [anon_sym_u8_SQUOTE] = ACTIONS(2004), [anon_sym_SQUOTE] = ACTIONS(2004), [anon_sym_L_DQUOTE] = ACTIONS(2004), [anon_sym_u_DQUOTE] = ACTIONS(2004), [anon_sym_U_DQUOTE] = ACTIONS(2004), [anon_sym_u8_DQUOTE] = ACTIONS(2004), [anon_sym_DQUOTE] = ACTIONS(2004), [sym_true] = ACTIONS(2002), [sym_false] = ACTIONS(2002), [sym_null] = ACTIONS(2002), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2002), [anon_sym_virtual] = ACTIONS(2002), [anon_sym_explicit] = ACTIONS(2002), [sym_auto] = ACTIONS(2002), [anon_sym_typename] = ACTIONS(2002), [anon_sym_template] = ACTIONS(2002), [anon_sym_operator] = ACTIONS(2002), [anon_sym_delete] = ACTIONS(2002), [anon_sym_throw] = ACTIONS(2002), [anon_sym_namespace] = ACTIONS(2002), [anon_sym_using] = ACTIONS(2002), [anon_sym_static_assert] = ACTIONS(2002), [anon_sym_co_return] = ACTIONS(2002), [anon_sym_co_yield] = ACTIONS(2002), [anon_sym_try] = ACTIONS(2002), [anon_sym_co_await] = ACTIONS(2002), [anon_sym_new] = ACTIONS(2002), [sym_this] = ACTIONS(2002), [sym_nullptr] = ACTIONS(2002), [sym_raw_string_literal] = ACTIONS(2004), }, [588] = { [ts_builtin_sym_end] = ACTIONS(1780), [sym_identifier] = ACTIONS(1778), [aux_sym_preproc_include_token1] = ACTIONS(1778), [aux_sym_preproc_def_token1] = ACTIONS(1778), [aux_sym_preproc_if_token1] = ACTIONS(1778), [aux_sym_preproc_ifdef_token1] = ACTIONS(1778), [aux_sym_preproc_ifdef_token2] = ACTIONS(1778), [sym_preproc_directive] = ACTIONS(1778), [anon_sym_LPAREN2] = ACTIONS(1780), [anon_sym_BANG] = ACTIONS(1780), [anon_sym_TILDE] = ACTIONS(1780), [anon_sym_DASH] = ACTIONS(1778), [anon_sym_PLUS] = ACTIONS(1778), [anon_sym_STAR] = ACTIONS(1780), [anon_sym_AMP_AMP] = ACTIONS(1780), [anon_sym_AMP] = ACTIONS(1778), [anon_sym_SEMI] = ACTIONS(1780), [anon_sym_typedef] = ACTIONS(1778), [anon_sym_extern] = ACTIONS(1778), [anon_sym___attribute__] = ACTIONS(1778), [anon_sym_COLON_COLON] = ACTIONS(1780), [anon_sym_LBRACK_LBRACK] = ACTIONS(1780), [anon_sym___declspec] = ACTIONS(1778), [anon_sym___based] = ACTIONS(1778), [anon_sym___cdecl] = ACTIONS(1778), [anon_sym___clrcall] = ACTIONS(1778), [anon_sym___stdcall] = ACTIONS(1778), [anon_sym___fastcall] = ACTIONS(1778), [anon_sym___thiscall] = ACTIONS(1778), [anon_sym___vectorcall] = ACTIONS(1778), [anon_sym_LBRACE] = ACTIONS(1780), [anon_sym_LBRACK] = ACTIONS(1778), [anon_sym_static] = ACTIONS(1778), [anon_sym_register] = ACTIONS(1778), [anon_sym_inline] = ACTIONS(1778), [anon_sym_thread_local] = ACTIONS(1778), [anon_sym_const] = ACTIONS(1778), [anon_sym_volatile] = ACTIONS(1778), [anon_sym_restrict] = ACTIONS(1778), [anon_sym__Atomic] = ACTIONS(1778), [anon_sym_mutable] = ACTIONS(1778), [anon_sym_constexpr] = ACTIONS(1778), [anon_sym_signed] = ACTIONS(1778), [anon_sym_unsigned] = ACTIONS(1778), [anon_sym_long] = ACTIONS(1778), [anon_sym_short] = ACTIONS(1778), [sym_primitive_type] = ACTIONS(1778), [anon_sym_enum] = ACTIONS(1778), [anon_sym_class] = ACTIONS(1778), [anon_sym_struct] = ACTIONS(1778), [anon_sym_union] = ACTIONS(1778), [anon_sym_if] = ACTIONS(1778), [anon_sym_else] = ACTIONS(1778), [anon_sym_switch] = ACTIONS(1778), [anon_sym_case] = ACTIONS(1778), [anon_sym_default] = ACTIONS(1778), [anon_sym_while] = ACTIONS(1778), [anon_sym_do] = ACTIONS(1778), [anon_sym_for] = ACTIONS(1778), [anon_sym_return] = ACTIONS(1778), [anon_sym_break] = ACTIONS(1778), [anon_sym_continue] = ACTIONS(1778), [anon_sym_goto] = ACTIONS(1778), [anon_sym_DASH_DASH] = ACTIONS(1780), [anon_sym_PLUS_PLUS] = ACTIONS(1780), [anon_sym_sizeof] = ACTIONS(1778), [sym_number_literal] = ACTIONS(1780), [anon_sym_L_SQUOTE] = ACTIONS(1780), [anon_sym_u_SQUOTE] = ACTIONS(1780), [anon_sym_U_SQUOTE] = ACTIONS(1780), [anon_sym_u8_SQUOTE] = ACTIONS(1780), [anon_sym_SQUOTE] = ACTIONS(1780), [anon_sym_L_DQUOTE] = ACTIONS(1780), [anon_sym_u_DQUOTE] = ACTIONS(1780), [anon_sym_U_DQUOTE] = ACTIONS(1780), [anon_sym_u8_DQUOTE] = ACTIONS(1780), [anon_sym_DQUOTE] = ACTIONS(1780), [sym_true] = ACTIONS(1778), [sym_false] = ACTIONS(1778), [sym_null] = ACTIONS(1778), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1778), [anon_sym_virtual] = ACTIONS(1778), [anon_sym_explicit] = ACTIONS(1778), [sym_auto] = ACTIONS(1778), [anon_sym_typename] = ACTIONS(1778), [anon_sym_template] = ACTIONS(1778), [anon_sym_operator] = ACTIONS(1778), [anon_sym_delete] = ACTIONS(1778), [anon_sym_throw] = ACTIONS(1778), [anon_sym_namespace] = ACTIONS(1778), [anon_sym_using] = ACTIONS(1778), [anon_sym_static_assert] = ACTIONS(1778), [anon_sym_co_return] = ACTIONS(1778), [anon_sym_co_yield] = ACTIONS(1778), [anon_sym_try] = ACTIONS(1778), [anon_sym_co_await] = ACTIONS(1778), [anon_sym_new] = ACTIONS(1778), [sym_this] = ACTIONS(1778), [sym_nullptr] = ACTIONS(1778), [sym_raw_string_literal] = ACTIONS(1780), }, [589] = { [ts_builtin_sym_end] = ACTIONS(2008), [sym_identifier] = ACTIONS(2006), [aux_sym_preproc_include_token1] = ACTIONS(2006), [aux_sym_preproc_def_token1] = ACTIONS(2006), [aux_sym_preproc_if_token1] = ACTIONS(2006), [aux_sym_preproc_ifdef_token1] = ACTIONS(2006), [aux_sym_preproc_ifdef_token2] = ACTIONS(2006), [sym_preproc_directive] = ACTIONS(2006), [anon_sym_LPAREN2] = ACTIONS(2008), [anon_sym_BANG] = ACTIONS(2008), [anon_sym_TILDE] = ACTIONS(2008), [anon_sym_DASH] = ACTIONS(2006), [anon_sym_PLUS] = ACTIONS(2006), [anon_sym_STAR] = ACTIONS(2008), [anon_sym_AMP_AMP] = ACTIONS(2008), [anon_sym_AMP] = ACTIONS(2006), [anon_sym_SEMI] = ACTIONS(2008), [anon_sym_typedef] = ACTIONS(2006), [anon_sym_extern] = ACTIONS(2006), [anon_sym___attribute__] = ACTIONS(2006), [anon_sym_COLON_COLON] = ACTIONS(2008), [anon_sym_LBRACK_LBRACK] = ACTIONS(2008), [anon_sym___declspec] = ACTIONS(2006), [anon_sym___based] = ACTIONS(2006), [anon_sym___cdecl] = ACTIONS(2006), [anon_sym___clrcall] = ACTIONS(2006), [anon_sym___stdcall] = ACTIONS(2006), [anon_sym___fastcall] = ACTIONS(2006), [anon_sym___thiscall] = ACTIONS(2006), [anon_sym___vectorcall] = ACTIONS(2006), [anon_sym_LBRACE] = ACTIONS(2008), [anon_sym_LBRACK] = ACTIONS(2006), [anon_sym_static] = ACTIONS(2006), [anon_sym_register] = ACTIONS(2006), [anon_sym_inline] = ACTIONS(2006), [anon_sym_thread_local] = ACTIONS(2006), [anon_sym_const] = ACTIONS(2006), [anon_sym_volatile] = ACTIONS(2006), [anon_sym_restrict] = ACTIONS(2006), [anon_sym__Atomic] = ACTIONS(2006), [anon_sym_mutable] = ACTIONS(2006), [anon_sym_constexpr] = ACTIONS(2006), [anon_sym_signed] = ACTIONS(2006), [anon_sym_unsigned] = ACTIONS(2006), [anon_sym_long] = ACTIONS(2006), [anon_sym_short] = ACTIONS(2006), [sym_primitive_type] = ACTIONS(2006), [anon_sym_enum] = ACTIONS(2006), [anon_sym_class] = ACTIONS(2006), [anon_sym_struct] = ACTIONS(2006), [anon_sym_union] = ACTIONS(2006), [anon_sym_if] = ACTIONS(2006), [anon_sym_else] = ACTIONS(2006), [anon_sym_switch] = ACTIONS(2006), [anon_sym_case] = ACTIONS(2006), [anon_sym_default] = ACTIONS(2006), [anon_sym_while] = ACTIONS(2006), [anon_sym_do] = ACTIONS(2006), [anon_sym_for] = ACTIONS(2006), [anon_sym_return] = ACTIONS(2006), [anon_sym_break] = ACTIONS(2006), [anon_sym_continue] = ACTIONS(2006), [anon_sym_goto] = ACTIONS(2006), [anon_sym_DASH_DASH] = ACTIONS(2008), [anon_sym_PLUS_PLUS] = ACTIONS(2008), [anon_sym_sizeof] = ACTIONS(2006), [sym_number_literal] = ACTIONS(2008), [anon_sym_L_SQUOTE] = ACTIONS(2008), [anon_sym_u_SQUOTE] = ACTIONS(2008), [anon_sym_U_SQUOTE] = ACTIONS(2008), [anon_sym_u8_SQUOTE] = ACTIONS(2008), [anon_sym_SQUOTE] = ACTIONS(2008), [anon_sym_L_DQUOTE] = ACTIONS(2008), [anon_sym_u_DQUOTE] = ACTIONS(2008), [anon_sym_U_DQUOTE] = ACTIONS(2008), [anon_sym_u8_DQUOTE] = ACTIONS(2008), [anon_sym_DQUOTE] = ACTIONS(2008), [sym_true] = ACTIONS(2006), [sym_false] = ACTIONS(2006), [sym_null] = ACTIONS(2006), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2006), [anon_sym_virtual] = ACTIONS(2006), [anon_sym_explicit] = ACTIONS(2006), [sym_auto] = ACTIONS(2006), [anon_sym_typename] = ACTIONS(2006), [anon_sym_template] = ACTIONS(2006), [anon_sym_operator] = ACTIONS(2006), [anon_sym_delete] = ACTIONS(2006), [anon_sym_throw] = ACTIONS(2006), [anon_sym_namespace] = ACTIONS(2006), [anon_sym_using] = ACTIONS(2006), [anon_sym_static_assert] = ACTIONS(2006), [anon_sym_co_return] = ACTIONS(2006), [anon_sym_co_yield] = ACTIONS(2006), [anon_sym_try] = ACTIONS(2006), [anon_sym_co_await] = ACTIONS(2006), [anon_sym_new] = ACTIONS(2006), [sym_this] = ACTIONS(2006), [sym_nullptr] = ACTIONS(2006), [sym_raw_string_literal] = ACTIONS(2008), }, [590] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [591] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [592] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [593] = { [sym_identifier] = ACTIONS(1860), [aux_sym_preproc_include_token1] = ACTIONS(1860), [aux_sym_preproc_def_token1] = ACTIONS(1860), [aux_sym_preproc_if_token1] = ACTIONS(1860), [aux_sym_preproc_ifdef_token1] = ACTIONS(1860), [aux_sym_preproc_ifdef_token2] = ACTIONS(1860), [sym_preproc_directive] = ACTIONS(1860), [anon_sym_LPAREN2] = ACTIONS(1862), [anon_sym_BANG] = ACTIONS(1862), [anon_sym_TILDE] = ACTIONS(1862), [anon_sym_DASH] = ACTIONS(1860), [anon_sym_PLUS] = ACTIONS(1860), [anon_sym_STAR] = ACTIONS(1862), [anon_sym_AMP_AMP] = ACTIONS(1862), [anon_sym_AMP] = ACTIONS(1860), [anon_sym_SEMI] = ACTIONS(1862), [anon_sym_typedef] = ACTIONS(1860), [anon_sym_extern] = ACTIONS(1860), [anon_sym___attribute__] = ACTIONS(1860), [anon_sym_COLON_COLON] = ACTIONS(1862), [anon_sym_LBRACK_LBRACK] = ACTIONS(1862), [anon_sym___declspec] = ACTIONS(1860), [anon_sym___based] = ACTIONS(1860), [anon_sym___cdecl] = ACTIONS(1860), [anon_sym___clrcall] = ACTIONS(1860), [anon_sym___stdcall] = ACTIONS(1860), [anon_sym___fastcall] = ACTIONS(1860), [anon_sym___thiscall] = ACTIONS(1860), [anon_sym___vectorcall] = ACTIONS(1860), [anon_sym_LBRACE] = ACTIONS(1862), [anon_sym_RBRACE] = ACTIONS(1862), [anon_sym_LBRACK] = ACTIONS(1860), [anon_sym_static] = ACTIONS(1860), [anon_sym_register] = ACTIONS(1860), [anon_sym_inline] = ACTIONS(1860), [anon_sym_thread_local] = ACTIONS(1860), [anon_sym_const] = ACTIONS(1860), [anon_sym_volatile] = ACTIONS(1860), [anon_sym_restrict] = ACTIONS(1860), [anon_sym__Atomic] = ACTIONS(1860), [anon_sym_mutable] = ACTIONS(1860), [anon_sym_constexpr] = ACTIONS(1860), [anon_sym_signed] = ACTIONS(1860), [anon_sym_unsigned] = ACTIONS(1860), [anon_sym_long] = ACTIONS(1860), [anon_sym_short] = ACTIONS(1860), [sym_primitive_type] = ACTIONS(1860), [anon_sym_enum] = ACTIONS(1860), [anon_sym_class] = ACTIONS(1860), [anon_sym_struct] = ACTIONS(1860), [anon_sym_union] = ACTIONS(1860), [anon_sym_if] = ACTIONS(1860), [anon_sym_else] = ACTIONS(1860), [anon_sym_switch] = ACTIONS(1860), [anon_sym_case] = ACTIONS(1860), [anon_sym_default] = ACTIONS(1860), [anon_sym_while] = ACTIONS(1860), [anon_sym_do] = ACTIONS(1860), [anon_sym_for] = ACTIONS(1860), [anon_sym_return] = ACTIONS(1860), [anon_sym_break] = ACTIONS(1860), [anon_sym_continue] = ACTIONS(1860), [anon_sym_goto] = ACTIONS(1860), [anon_sym_DASH_DASH] = ACTIONS(1862), [anon_sym_PLUS_PLUS] = ACTIONS(1862), [anon_sym_sizeof] = ACTIONS(1860), [sym_number_literal] = ACTIONS(1862), [anon_sym_L_SQUOTE] = ACTIONS(1862), [anon_sym_u_SQUOTE] = ACTIONS(1862), [anon_sym_U_SQUOTE] = ACTIONS(1862), [anon_sym_u8_SQUOTE] = ACTIONS(1862), [anon_sym_SQUOTE] = ACTIONS(1862), [anon_sym_L_DQUOTE] = ACTIONS(1862), [anon_sym_u_DQUOTE] = ACTIONS(1862), [anon_sym_U_DQUOTE] = ACTIONS(1862), [anon_sym_u8_DQUOTE] = ACTIONS(1862), [anon_sym_DQUOTE] = ACTIONS(1862), [sym_true] = ACTIONS(1860), [sym_false] = ACTIONS(1860), [sym_null] = ACTIONS(1860), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1860), [anon_sym_virtual] = ACTIONS(1860), [anon_sym_explicit] = ACTIONS(1860), [sym_auto] = ACTIONS(1860), [anon_sym_typename] = ACTIONS(1860), [anon_sym_template] = ACTIONS(1860), [anon_sym_operator] = ACTIONS(1860), [anon_sym_delete] = ACTIONS(1860), [anon_sym_throw] = ACTIONS(1860), [anon_sym_namespace] = ACTIONS(1860), [anon_sym_using] = ACTIONS(1860), [anon_sym_static_assert] = ACTIONS(1860), [anon_sym_co_return] = ACTIONS(1860), [anon_sym_co_yield] = ACTIONS(1860), [anon_sym_try] = ACTIONS(1860), [anon_sym_co_await] = ACTIONS(1860), [anon_sym_new] = ACTIONS(1860), [sym_this] = ACTIONS(1860), [sym_nullptr] = ACTIONS(1860), [sym_raw_string_literal] = ACTIONS(1862), }, [594] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [595] = { [sym_identifier] = ACTIONS(1856), [aux_sym_preproc_include_token1] = ACTIONS(1856), [aux_sym_preproc_def_token1] = ACTIONS(1856), [aux_sym_preproc_if_token1] = ACTIONS(1856), [aux_sym_preproc_ifdef_token1] = ACTIONS(1856), [aux_sym_preproc_ifdef_token2] = ACTIONS(1856), [sym_preproc_directive] = ACTIONS(1856), [anon_sym_LPAREN2] = ACTIONS(1858), [anon_sym_BANG] = ACTIONS(1858), [anon_sym_TILDE] = ACTIONS(1858), [anon_sym_DASH] = ACTIONS(1856), [anon_sym_PLUS] = ACTIONS(1856), [anon_sym_STAR] = ACTIONS(1858), [anon_sym_AMP_AMP] = ACTIONS(1858), [anon_sym_AMP] = ACTIONS(1856), [anon_sym_SEMI] = ACTIONS(1858), [anon_sym_typedef] = ACTIONS(1856), [anon_sym_extern] = ACTIONS(1856), [anon_sym___attribute__] = ACTIONS(1856), [anon_sym_COLON_COLON] = ACTIONS(1858), [anon_sym_LBRACK_LBRACK] = ACTIONS(1858), [anon_sym___declspec] = ACTIONS(1856), [anon_sym___based] = ACTIONS(1856), [anon_sym___cdecl] = ACTIONS(1856), [anon_sym___clrcall] = ACTIONS(1856), [anon_sym___stdcall] = ACTIONS(1856), [anon_sym___fastcall] = ACTIONS(1856), [anon_sym___thiscall] = ACTIONS(1856), [anon_sym___vectorcall] = ACTIONS(1856), [anon_sym_LBRACE] = ACTIONS(1858), [anon_sym_RBRACE] = ACTIONS(1858), [anon_sym_LBRACK] = ACTIONS(1856), [anon_sym_static] = ACTIONS(1856), [anon_sym_register] = ACTIONS(1856), [anon_sym_inline] = ACTIONS(1856), [anon_sym_thread_local] = ACTIONS(1856), [anon_sym_const] = ACTIONS(1856), [anon_sym_volatile] = ACTIONS(1856), [anon_sym_restrict] = ACTIONS(1856), [anon_sym__Atomic] = ACTIONS(1856), [anon_sym_mutable] = ACTIONS(1856), [anon_sym_constexpr] = ACTIONS(1856), [anon_sym_signed] = ACTIONS(1856), [anon_sym_unsigned] = ACTIONS(1856), [anon_sym_long] = ACTIONS(1856), [anon_sym_short] = ACTIONS(1856), [sym_primitive_type] = ACTIONS(1856), [anon_sym_enum] = ACTIONS(1856), [anon_sym_class] = ACTIONS(1856), [anon_sym_struct] = ACTIONS(1856), [anon_sym_union] = ACTIONS(1856), [anon_sym_if] = ACTIONS(1856), [anon_sym_else] = ACTIONS(1856), [anon_sym_switch] = ACTIONS(1856), [anon_sym_case] = ACTIONS(1856), [anon_sym_default] = ACTIONS(1856), [anon_sym_while] = ACTIONS(1856), [anon_sym_do] = ACTIONS(1856), [anon_sym_for] = ACTIONS(1856), [anon_sym_return] = ACTIONS(1856), [anon_sym_break] = ACTIONS(1856), [anon_sym_continue] = ACTIONS(1856), [anon_sym_goto] = ACTIONS(1856), [anon_sym_DASH_DASH] = ACTIONS(1858), [anon_sym_PLUS_PLUS] = ACTIONS(1858), [anon_sym_sizeof] = ACTIONS(1856), [sym_number_literal] = ACTIONS(1858), [anon_sym_L_SQUOTE] = ACTIONS(1858), [anon_sym_u_SQUOTE] = ACTIONS(1858), [anon_sym_U_SQUOTE] = ACTIONS(1858), [anon_sym_u8_SQUOTE] = ACTIONS(1858), [anon_sym_SQUOTE] = ACTIONS(1858), [anon_sym_L_DQUOTE] = ACTIONS(1858), [anon_sym_u_DQUOTE] = ACTIONS(1858), [anon_sym_U_DQUOTE] = ACTIONS(1858), [anon_sym_u8_DQUOTE] = ACTIONS(1858), [anon_sym_DQUOTE] = ACTIONS(1858), [sym_true] = ACTIONS(1856), [sym_false] = ACTIONS(1856), [sym_null] = ACTIONS(1856), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1856), [anon_sym_virtual] = ACTIONS(1856), [anon_sym_explicit] = ACTIONS(1856), [sym_auto] = ACTIONS(1856), [anon_sym_typename] = ACTIONS(1856), [anon_sym_template] = ACTIONS(1856), [anon_sym_operator] = ACTIONS(1856), [anon_sym_delete] = ACTIONS(1856), [anon_sym_throw] = ACTIONS(1856), [anon_sym_namespace] = ACTIONS(1856), [anon_sym_using] = ACTIONS(1856), [anon_sym_static_assert] = ACTIONS(1856), [anon_sym_co_return] = ACTIONS(1856), [anon_sym_co_yield] = ACTIONS(1856), [anon_sym_try] = ACTIONS(1856), [anon_sym_co_await] = ACTIONS(1856), [anon_sym_new] = ACTIONS(1856), [sym_this] = ACTIONS(1856), [sym_nullptr] = ACTIONS(1856), [sym_raw_string_literal] = ACTIONS(1858), }, [596] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [597] = { [ts_builtin_sym_end] = ACTIONS(1822), [sym_identifier] = ACTIONS(1820), [aux_sym_preproc_include_token1] = ACTIONS(1820), [aux_sym_preproc_def_token1] = ACTIONS(1820), [aux_sym_preproc_if_token1] = ACTIONS(1820), [aux_sym_preproc_ifdef_token1] = ACTIONS(1820), [aux_sym_preproc_ifdef_token2] = ACTIONS(1820), [sym_preproc_directive] = ACTIONS(1820), [anon_sym_LPAREN2] = ACTIONS(1822), [anon_sym_BANG] = ACTIONS(1822), [anon_sym_TILDE] = ACTIONS(1822), [anon_sym_DASH] = ACTIONS(1820), [anon_sym_PLUS] = ACTIONS(1820), [anon_sym_STAR] = ACTIONS(1822), [anon_sym_AMP_AMP] = ACTIONS(1822), [anon_sym_AMP] = ACTIONS(1820), [anon_sym_SEMI] = ACTIONS(1822), [anon_sym_typedef] = ACTIONS(1820), [anon_sym_extern] = ACTIONS(1820), [anon_sym___attribute__] = ACTIONS(1820), [anon_sym_COLON_COLON] = ACTIONS(1822), [anon_sym_LBRACK_LBRACK] = ACTIONS(1822), [anon_sym___declspec] = ACTIONS(1820), [anon_sym___based] = ACTIONS(1820), [anon_sym___cdecl] = ACTIONS(1820), [anon_sym___clrcall] = ACTIONS(1820), [anon_sym___stdcall] = ACTIONS(1820), [anon_sym___fastcall] = ACTIONS(1820), [anon_sym___thiscall] = ACTIONS(1820), [anon_sym___vectorcall] = ACTIONS(1820), [anon_sym_LBRACE] = ACTIONS(1822), [anon_sym_LBRACK] = ACTIONS(1820), [anon_sym_static] = ACTIONS(1820), [anon_sym_register] = ACTIONS(1820), [anon_sym_inline] = ACTIONS(1820), [anon_sym_thread_local] = ACTIONS(1820), [anon_sym_const] = ACTIONS(1820), [anon_sym_volatile] = ACTIONS(1820), [anon_sym_restrict] = ACTIONS(1820), [anon_sym__Atomic] = ACTIONS(1820), [anon_sym_mutable] = ACTIONS(1820), [anon_sym_constexpr] = ACTIONS(1820), [anon_sym_signed] = ACTIONS(1820), [anon_sym_unsigned] = ACTIONS(1820), [anon_sym_long] = ACTIONS(1820), [anon_sym_short] = ACTIONS(1820), [sym_primitive_type] = ACTIONS(1820), [anon_sym_enum] = ACTIONS(1820), [anon_sym_class] = ACTIONS(1820), [anon_sym_struct] = ACTIONS(1820), [anon_sym_union] = ACTIONS(1820), [anon_sym_if] = ACTIONS(1820), [anon_sym_else] = ACTIONS(1820), [anon_sym_switch] = ACTIONS(1820), [anon_sym_case] = ACTIONS(1820), [anon_sym_default] = ACTIONS(1820), [anon_sym_while] = ACTIONS(1820), [anon_sym_do] = ACTIONS(1820), [anon_sym_for] = ACTIONS(1820), [anon_sym_return] = ACTIONS(1820), [anon_sym_break] = ACTIONS(1820), [anon_sym_continue] = ACTIONS(1820), [anon_sym_goto] = ACTIONS(1820), [anon_sym_DASH_DASH] = ACTIONS(1822), [anon_sym_PLUS_PLUS] = ACTIONS(1822), [anon_sym_sizeof] = ACTIONS(1820), [sym_number_literal] = ACTIONS(1822), [anon_sym_L_SQUOTE] = ACTIONS(1822), [anon_sym_u_SQUOTE] = ACTIONS(1822), [anon_sym_U_SQUOTE] = ACTIONS(1822), [anon_sym_u8_SQUOTE] = ACTIONS(1822), [anon_sym_SQUOTE] = ACTIONS(1822), [anon_sym_L_DQUOTE] = ACTIONS(1822), [anon_sym_u_DQUOTE] = ACTIONS(1822), [anon_sym_U_DQUOTE] = ACTIONS(1822), [anon_sym_u8_DQUOTE] = ACTIONS(1822), [anon_sym_DQUOTE] = ACTIONS(1822), [sym_true] = ACTIONS(1820), [sym_false] = ACTIONS(1820), [sym_null] = ACTIONS(1820), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1820), [anon_sym_virtual] = ACTIONS(1820), [anon_sym_explicit] = ACTIONS(1820), [sym_auto] = ACTIONS(1820), [anon_sym_typename] = ACTIONS(1820), [anon_sym_template] = ACTIONS(1820), [anon_sym_operator] = ACTIONS(1820), [anon_sym_delete] = ACTIONS(1820), [anon_sym_throw] = ACTIONS(1820), [anon_sym_namespace] = ACTIONS(1820), [anon_sym_using] = ACTIONS(1820), [anon_sym_static_assert] = ACTIONS(1820), [anon_sym_co_return] = ACTIONS(1820), [anon_sym_co_yield] = ACTIONS(1820), [anon_sym_try] = ACTIONS(1820), [anon_sym_co_await] = ACTIONS(1820), [anon_sym_new] = ACTIONS(1820), [sym_this] = ACTIONS(1820), [sym_nullptr] = ACTIONS(1820), [sym_raw_string_literal] = ACTIONS(1822), }, [598] = { [ts_builtin_sym_end] = ACTIONS(1826), [sym_identifier] = ACTIONS(1824), [aux_sym_preproc_include_token1] = ACTIONS(1824), [aux_sym_preproc_def_token1] = ACTIONS(1824), [aux_sym_preproc_if_token1] = ACTIONS(1824), [aux_sym_preproc_ifdef_token1] = ACTIONS(1824), [aux_sym_preproc_ifdef_token2] = ACTIONS(1824), [sym_preproc_directive] = ACTIONS(1824), [anon_sym_LPAREN2] = ACTIONS(1826), [anon_sym_BANG] = ACTIONS(1826), [anon_sym_TILDE] = ACTIONS(1826), [anon_sym_DASH] = ACTIONS(1824), [anon_sym_PLUS] = ACTIONS(1824), [anon_sym_STAR] = ACTIONS(1826), [anon_sym_AMP_AMP] = ACTIONS(1826), [anon_sym_AMP] = ACTIONS(1824), [anon_sym_SEMI] = ACTIONS(1826), [anon_sym_typedef] = ACTIONS(1824), [anon_sym_extern] = ACTIONS(1824), [anon_sym___attribute__] = ACTIONS(1824), [anon_sym_COLON_COLON] = ACTIONS(1826), [anon_sym_LBRACK_LBRACK] = ACTIONS(1826), [anon_sym___declspec] = ACTIONS(1824), [anon_sym___based] = ACTIONS(1824), [anon_sym___cdecl] = ACTIONS(1824), [anon_sym___clrcall] = ACTIONS(1824), [anon_sym___stdcall] = ACTIONS(1824), [anon_sym___fastcall] = ACTIONS(1824), [anon_sym___thiscall] = ACTIONS(1824), [anon_sym___vectorcall] = ACTIONS(1824), [anon_sym_LBRACE] = ACTIONS(1826), [anon_sym_LBRACK] = ACTIONS(1824), [anon_sym_static] = ACTIONS(1824), [anon_sym_register] = ACTIONS(1824), [anon_sym_inline] = ACTIONS(1824), [anon_sym_thread_local] = ACTIONS(1824), [anon_sym_const] = ACTIONS(1824), [anon_sym_volatile] = ACTIONS(1824), [anon_sym_restrict] = ACTIONS(1824), [anon_sym__Atomic] = ACTIONS(1824), [anon_sym_mutable] = ACTIONS(1824), [anon_sym_constexpr] = ACTIONS(1824), [anon_sym_signed] = ACTIONS(1824), [anon_sym_unsigned] = ACTIONS(1824), [anon_sym_long] = ACTIONS(1824), [anon_sym_short] = ACTIONS(1824), [sym_primitive_type] = ACTIONS(1824), [anon_sym_enum] = ACTIONS(1824), [anon_sym_class] = ACTIONS(1824), [anon_sym_struct] = ACTIONS(1824), [anon_sym_union] = ACTIONS(1824), [anon_sym_if] = ACTIONS(1824), [anon_sym_else] = ACTIONS(1824), [anon_sym_switch] = ACTIONS(1824), [anon_sym_case] = ACTIONS(1824), [anon_sym_default] = ACTIONS(1824), [anon_sym_while] = ACTIONS(1824), [anon_sym_do] = ACTIONS(1824), [anon_sym_for] = ACTIONS(1824), [anon_sym_return] = ACTIONS(1824), [anon_sym_break] = ACTIONS(1824), [anon_sym_continue] = ACTIONS(1824), [anon_sym_goto] = ACTIONS(1824), [anon_sym_DASH_DASH] = ACTIONS(1826), [anon_sym_PLUS_PLUS] = ACTIONS(1826), [anon_sym_sizeof] = ACTIONS(1824), [sym_number_literal] = ACTIONS(1826), [anon_sym_L_SQUOTE] = ACTIONS(1826), [anon_sym_u_SQUOTE] = ACTIONS(1826), [anon_sym_U_SQUOTE] = ACTIONS(1826), [anon_sym_u8_SQUOTE] = ACTIONS(1826), [anon_sym_SQUOTE] = ACTIONS(1826), [anon_sym_L_DQUOTE] = ACTIONS(1826), [anon_sym_u_DQUOTE] = ACTIONS(1826), [anon_sym_U_DQUOTE] = ACTIONS(1826), [anon_sym_u8_DQUOTE] = ACTIONS(1826), [anon_sym_DQUOTE] = ACTIONS(1826), [sym_true] = ACTIONS(1824), [sym_false] = ACTIONS(1824), [sym_null] = ACTIONS(1824), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1824), [anon_sym_virtual] = ACTIONS(1824), [anon_sym_explicit] = ACTIONS(1824), [sym_auto] = ACTIONS(1824), [anon_sym_typename] = ACTIONS(1824), [anon_sym_template] = ACTIONS(1824), [anon_sym_operator] = ACTIONS(1824), [anon_sym_delete] = ACTIONS(1824), [anon_sym_throw] = ACTIONS(1824), [anon_sym_namespace] = ACTIONS(1824), [anon_sym_using] = ACTIONS(1824), [anon_sym_static_assert] = ACTIONS(1824), [anon_sym_co_return] = ACTIONS(1824), [anon_sym_co_yield] = ACTIONS(1824), [anon_sym_try] = ACTIONS(1824), [anon_sym_co_await] = ACTIONS(1824), [anon_sym_new] = ACTIONS(1824), [sym_this] = ACTIONS(1824), [sym_nullptr] = ACTIONS(1824), [sym_raw_string_literal] = ACTIONS(1826), }, [599] = { [ts_builtin_sym_end] = ACTIONS(1830), [sym_identifier] = ACTIONS(1828), [aux_sym_preproc_include_token1] = ACTIONS(1828), [aux_sym_preproc_def_token1] = ACTIONS(1828), [aux_sym_preproc_if_token1] = ACTIONS(1828), [aux_sym_preproc_ifdef_token1] = ACTIONS(1828), [aux_sym_preproc_ifdef_token2] = ACTIONS(1828), [sym_preproc_directive] = ACTIONS(1828), [anon_sym_LPAREN2] = ACTIONS(1830), [anon_sym_BANG] = ACTIONS(1830), [anon_sym_TILDE] = ACTIONS(1830), [anon_sym_DASH] = ACTIONS(1828), [anon_sym_PLUS] = ACTIONS(1828), [anon_sym_STAR] = ACTIONS(1830), [anon_sym_AMP_AMP] = ACTIONS(1830), [anon_sym_AMP] = ACTIONS(1828), [anon_sym_SEMI] = ACTIONS(1830), [anon_sym_typedef] = ACTIONS(1828), [anon_sym_extern] = ACTIONS(1828), [anon_sym___attribute__] = ACTIONS(1828), [anon_sym_COLON_COLON] = ACTIONS(1830), [anon_sym_LBRACK_LBRACK] = ACTIONS(1830), [anon_sym___declspec] = ACTIONS(1828), [anon_sym___based] = ACTIONS(1828), [anon_sym___cdecl] = ACTIONS(1828), [anon_sym___clrcall] = ACTIONS(1828), [anon_sym___stdcall] = ACTIONS(1828), [anon_sym___fastcall] = ACTIONS(1828), [anon_sym___thiscall] = ACTIONS(1828), [anon_sym___vectorcall] = ACTIONS(1828), [anon_sym_LBRACE] = ACTIONS(1830), [anon_sym_LBRACK] = ACTIONS(1828), [anon_sym_static] = ACTIONS(1828), [anon_sym_register] = ACTIONS(1828), [anon_sym_inline] = ACTIONS(1828), [anon_sym_thread_local] = ACTIONS(1828), [anon_sym_const] = ACTIONS(1828), [anon_sym_volatile] = ACTIONS(1828), [anon_sym_restrict] = ACTIONS(1828), [anon_sym__Atomic] = ACTIONS(1828), [anon_sym_mutable] = ACTIONS(1828), [anon_sym_constexpr] = ACTIONS(1828), [anon_sym_signed] = ACTIONS(1828), [anon_sym_unsigned] = ACTIONS(1828), [anon_sym_long] = ACTIONS(1828), [anon_sym_short] = ACTIONS(1828), [sym_primitive_type] = ACTIONS(1828), [anon_sym_enum] = ACTIONS(1828), [anon_sym_class] = ACTIONS(1828), [anon_sym_struct] = ACTIONS(1828), [anon_sym_union] = ACTIONS(1828), [anon_sym_if] = ACTIONS(1828), [anon_sym_else] = ACTIONS(1828), [anon_sym_switch] = ACTIONS(1828), [anon_sym_case] = ACTIONS(1828), [anon_sym_default] = ACTIONS(1828), [anon_sym_while] = ACTIONS(1828), [anon_sym_do] = ACTIONS(1828), [anon_sym_for] = ACTIONS(1828), [anon_sym_return] = ACTIONS(1828), [anon_sym_break] = ACTIONS(1828), [anon_sym_continue] = ACTIONS(1828), [anon_sym_goto] = ACTIONS(1828), [anon_sym_DASH_DASH] = ACTIONS(1830), [anon_sym_PLUS_PLUS] = ACTIONS(1830), [anon_sym_sizeof] = ACTIONS(1828), [sym_number_literal] = ACTIONS(1830), [anon_sym_L_SQUOTE] = ACTIONS(1830), [anon_sym_u_SQUOTE] = ACTIONS(1830), [anon_sym_U_SQUOTE] = ACTIONS(1830), [anon_sym_u8_SQUOTE] = ACTIONS(1830), [anon_sym_SQUOTE] = ACTIONS(1830), [anon_sym_L_DQUOTE] = ACTIONS(1830), [anon_sym_u_DQUOTE] = ACTIONS(1830), [anon_sym_U_DQUOTE] = ACTIONS(1830), [anon_sym_u8_DQUOTE] = ACTIONS(1830), [anon_sym_DQUOTE] = ACTIONS(1830), [sym_true] = ACTIONS(1828), [sym_false] = ACTIONS(1828), [sym_null] = ACTIONS(1828), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1828), [anon_sym_virtual] = ACTIONS(1828), [anon_sym_explicit] = ACTIONS(1828), [sym_auto] = ACTIONS(1828), [anon_sym_typename] = ACTIONS(1828), [anon_sym_template] = ACTIONS(1828), [anon_sym_operator] = ACTIONS(1828), [anon_sym_delete] = ACTIONS(1828), [anon_sym_throw] = ACTIONS(1828), [anon_sym_namespace] = ACTIONS(1828), [anon_sym_using] = ACTIONS(1828), [anon_sym_static_assert] = ACTIONS(1828), [anon_sym_co_return] = ACTIONS(1828), [anon_sym_co_yield] = ACTIONS(1828), [anon_sym_try] = ACTIONS(1828), [anon_sym_co_await] = ACTIONS(1828), [anon_sym_new] = ACTIONS(1828), [sym_this] = ACTIONS(1828), [sym_nullptr] = ACTIONS(1828), [sym_raw_string_literal] = ACTIONS(1830), }, [600] = { [ts_builtin_sym_end] = ACTIONS(2012), [sym_identifier] = ACTIONS(2010), [aux_sym_preproc_include_token1] = ACTIONS(2010), [aux_sym_preproc_def_token1] = ACTIONS(2010), [aux_sym_preproc_if_token1] = ACTIONS(2010), [aux_sym_preproc_ifdef_token1] = ACTIONS(2010), [aux_sym_preproc_ifdef_token2] = ACTIONS(2010), [sym_preproc_directive] = ACTIONS(2010), [anon_sym_LPAREN2] = ACTIONS(2012), [anon_sym_BANG] = ACTIONS(2012), [anon_sym_TILDE] = ACTIONS(2012), [anon_sym_DASH] = ACTIONS(2010), [anon_sym_PLUS] = ACTIONS(2010), [anon_sym_STAR] = ACTIONS(2012), [anon_sym_AMP_AMP] = ACTIONS(2012), [anon_sym_AMP] = ACTIONS(2010), [anon_sym_SEMI] = ACTIONS(2012), [anon_sym_typedef] = ACTIONS(2010), [anon_sym_extern] = ACTIONS(2010), [anon_sym___attribute__] = ACTIONS(2010), [anon_sym_COLON_COLON] = ACTIONS(2012), [anon_sym_LBRACK_LBRACK] = ACTIONS(2012), [anon_sym___declspec] = ACTIONS(2010), [anon_sym___based] = ACTIONS(2010), [anon_sym___cdecl] = ACTIONS(2010), [anon_sym___clrcall] = ACTIONS(2010), [anon_sym___stdcall] = ACTIONS(2010), [anon_sym___fastcall] = ACTIONS(2010), [anon_sym___thiscall] = ACTIONS(2010), [anon_sym___vectorcall] = ACTIONS(2010), [anon_sym_LBRACE] = ACTIONS(2012), [anon_sym_LBRACK] = ACTIONS(2010), [anon_sym_static] = ACTIONS(2010), [anon_sym_register] = ACTIONS(2010), [anon_sym_inline] = ACTIONS(2010), [anon_sym_thread_local] = ACTIONS(2010), [anon_sym_const] = ACTIONS(2010), [anon_sym_volatile] = ACTIONS(2010), [anon_sym_restrict] = ACTIONS(2010), [anon_sym__Atomic] = ACTIONS(2010), [anon_sym_mutable] = ACTIONS(2010), [anon_sym_constexpr] = ACTIONS(2010), [anon_sym_signed] = ACTIONS(2010), [anon_sym_unsigned] = ACTIONS(2010), [anon_sym_long] = ACTIONS(2010), [anon_sym_short] = ACTIONS(2010), [sym_primitive_type] = ACTIONS(2010), [anon_sym_enum] = ACTIONS(2010), [anon_sym_class] = ACTIONS(2010), [anon_sym_struct] = ACTIONS(2010), [anon_sym_union] = ACTIONS(2010), [anon_sym_if] = ACTIONS(2010), [anon_sym_else] = ACTIONS(2010), [anon_sym_switch] = ACTIONS(2010), [anon_sym_case] = ACTIONS(2010), [anon_sym_default] = ACTIONS(2010), [anon_sym_while] = ACTIONS(2010), [anon_sym_do] = ACTIONS(2010), [anon_sym_for] = ACTIONS(2010), [anon_sym_return] = ACTIONS(2010), [anon_sym_break] = ACTIONS(2010), [anon_sym_continue] = ACTIONS(2010), [anon_sym_goto] = ACTIONS(2010), [anon_sym_DASH_DASH] = ACTIONS(2012), [anon_sym_PLUS_PLUS] = ACTIONS(2012), [anon_sym_sizeof] = ACTIONS(2010), [sym_number_literal] = ACTIONS(2012), [anon_sym_L_SQUOTE] = ACTIONS(2012), [anon_sym_u_SQUOTE] = ACTIONS(2012), [anon_sym_U_SQUOTE] = ACTIONS(2012), [anon_sym_u8_SQUOTE] = ACTIONS(2012), [anon_sym_SQUOTE] = ACTIONS(2012), [anon_sym_L_DQUOTE] = ACTIONS(2012), [anon_sym_u_DQUOTE] = ACTIONS(2012), [anon_sym_U_DQUOTE] = ACTIONS(2012), [anon_sym_u8_DQUOTE] = ACTIONS(2012), [anon_sym_DQUOTE] = ACTIONS(2012), [sym_true] = ACTIONS(2010), [sym_false] = ACTIONS(2010), [sym_null] = ACTIONS(2010), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2010), [anon_sym_virtual] = ACTIONS(2010), [anon_sym_explicit] = ACTIONS(2010), [sym_auto] = ACTIONS(2010), [anon_sym_typename] = ACTIONS(2010), [anon_sym_template] = ACTIONS(2010), [anon_sym_operator] = ACTIONS(2010), [anon_sym_delete] = ACTIONS(2010), [anon_sym_throw] = ACTIONS(2010), [anon_sym_namespace] = ACTIONS(2010), [anon_sym_using] = ACTIONS(2010), [anon_sym_static_assert] = ACTIONS(2010), [anon_sym_co_return] = ACTIONS(2010), [anon_sym_co_yield] = ACTIONS(2010), [anon_sym_try] = ACTIONS(2010), [anon_sym_co_await] = ACTIONS(2010), [anon_sym_new] = ACTIONS(2010), [sym_this] = ACTIONS(2010), [sym_nullptr] = ACTIONS(2010), [sym_raw_string_literal] = ACTIONS(2012), }, [601] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [602] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [603] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [604] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [605] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [606] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [607] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [608] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [609] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [610] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [611] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [612] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [613] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [614] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [615] = { [ts_builtin_sym_end] = ACTIONS(2016), [sym_identifier] = ACTIONS(2014), [aux_sym_preproc_include_token1] = ACTIONS(2014), [aux_sym_preproc_def_token1] = ACTIONS(2014), [aux_sym_preproc_if_token1] = ACTIONS(2014), [aux_sym_preproc_ifdef_token1] = ACTIONS(2014), [aux_sym_preproc_ifdef_token2] = ACTIONS(2014), [sym_preproc_directive] = ACTIONS(2014), [anon_sym_LPAREN2] = ACTIONS(2016), [anon_sym_BANG] = ACTIONS(2016), [anon_sym_TILDE] = ACTIONS(2016), [anon_sym_DASH] = ACTIONS(2014), [anon_sym_PLUS] = ACTIONS(2014), [anon_sym_STAR] = ACTIONS(2016), [anon_sym_AMP_AMP] = ACTIONS(2016), [anon_sym_AMP] = ACTIONS(2014), [anon_sym_SEMI] = ACTIONS(2016), [anon_sym_typedef] = ACTIONS(2014), [anon_sym_extern] = ACTIONS(2014), [anon_sym___attribute__] = ACTIONS(2014), [anon_sym_COLON_COLON] = ACTIONS(2016), [anon_sym_LBRACK_LBRACK] = ACTIONS(2016), [anon_sym___declspec] = ACTIONS(2014), [anon_sym___based] = ACTIONS(2014), [anon_sym___cdecl] = ACTIONS(2014), [anon_sym___clrcall] = ACTIONS(2014), [anon_sym___stdcall] = ACTIONS(2014), [anon_sym___fastcall] = ACTIONS(2014), [anon_sym___thiscall] = ACTIONS(2014), [anon_sym___vectorcall] = ACTIONS(2014), [anon_sym_LBRACE] = ACTIONS(2016), [anon_sym_LBRACK] = ACTIONS(2014), [anon_sym_static] = ACTIONS(2014), [anon_sym_register] = ACTIONS(2014), [anon_sym_inline] = ACTIONS(2014), [anon_sym_thread_local] = ACTIONS(2014), [anon_sym_const] = ACTIONS(2014), [anon_sym_volatile] = ACTIONS(2014), [anon_sym_restrict] = ACTIONS(2014), [anon_sym__Atomic] = ACTIONS(2014), [anon_sym_mutable] = ACTIONS(2014), [anon_sym_constexpr] = ACTIONS(2014), [anon_sym_signed] = ACTIONS(2014), [anon_sym_unsigned] = ACTIONS(2014), [anon_sym_long] = ACTIONS(2014), [anon_sym_short] = ACTIONS(2014), [sym_primitive_type] = ACTIONS(2014), [anon_sym_enum] = ACTIONS(2014), [anon_sym_class] = ACTIONS(2014), [anon_sym_struct] = ACTIONS(2014), [anon_sym_union] = ACTIONS(2014), [anon_sym_if] = ACTIONS(2014), [anon_sym_else] = ACTIONS(2014), [anon_sym_switch] = ACTIONS(2014), [anon_sym_case] = ACTIONS(2014), [anon_sym_default] = ACTIONS(2014), [anon_sym_while] = ACTIONS(2014), [anon_sym_do] = ACTIONS(2014), [anon_sym_for] = ACTIONS(2014), [anon_sym_return] = ACTIONS(2014), [anon_sym_break] = ACTIONS(2014), [anon_sym_continue] = ACTIONS(2014), [anon_sym_goto] = ACTIONS(2014), [anon_sym_DASH_DASH] = ACTIONS(2016), [anon_sym_PLUS_PLUS] = ACTIONS(2016), [anon_sym_sizeof] = ACTIONS(2014), [sym_number_literal] = ACTIONS(2016), [anon_sym_L_SQUOTE] = ACTIONS(2016), [anon_sym_u_SQUOTE] = ACTIONS(2016), [anon_sym_U_SQUOTE] = ACTIONS(2016), [anon_sym_u8_SQUOTE] = ACTIONS(2016), [anon_sym_SQUOTE] = ACTIONS(2016), [anon_sym_L_DQUOTE] = ACTIONS(2016), [anon_sym_u_DQUOTE] = ACTIONS(2016), [anon_sym_U_DQUOTE] = ACTIONS(2016), [anon_sym_u8_DQUOTE] = ACTIONS(2016), [anon_sym_DQUOTE] = ACTIONS(2016), [sym_true] = ACTIONS(2014), [sym_false] = ACTIONS(2014), [sym_null] = ACTIONS(2014), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2014), [anon_sym_virtual] = ACTIONS(2014), [anon_sym_explicit] = ACTIONS(2014), [sym_auto] = ACTIONS(2014), [anon_sym_typename] = ACTIONS(2014), [anon_sym_template] = ACTIONS(2014), [anon_sym_operator] = ACTIONS(2014), [anon_sym_delete] = ACTIONS(2014), [anon_sym_throw] = ACTIONS(2014), [anon_sym_namespace] = ACTIONS(2014), [anon_sym_using] = ACTIONS(2014), [anon_sym_static_assert] = ACTIONS(2014), [anon_sym_co_return] = ACTIONS(2014), [anon_sym_co_yield] = ACTIONS(2014), [anon_sym_try] = ACTIONS(2014), [anon_sym_co_await] = ACTIONS(2014), [anon_sym_new] = ACTIONS(2014), [sym_this] = ACTIONS(2014), [sym_nullptr] = ACTIONS(2014), [sym_raw_string_literal] = ACTIONS(2016), }, [616] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [617] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [618] = { [sym_identifier] = ACTIONS(2006), [aux_sym_preproc_include_token1] = ACTIONS(2006), [aux_sym_preproc_def_token1] = ACTIONS(2006), [aux_sym_preproc_if_token1] = ACTIONS(2006), [aux_sym_preproc_if_token2] = ACTIONS(2006), [aux_sym_preproc_ifdef_token1] = ACTIONS(2006), [aux_sym_preproc_ifdef_token2] = ACTIONS(2006), [sym_preproc_directive] = ACTIONS(2006), [anon_sym_LPAREN2] = ACTIONS(2008), [anon_sym_BANG] = ACTIONS(2008), [anon_sym_TILDE] = ACTIONS(2008), [anon_sym_DASH] = ACTIONS(2006), [anon_sym_PLUS] = ACTIONS(2006), [anon_sym_STAR] = ACTIONS(2008), [anon_sym_AMP_AMP] = ACTIONS(2008), [anon_sym_AMP] = ACTIONS(2006), [anon_sym_SEMI] = ACTIONS(2008), [anon_sym_typedef] = ACTIONS(2006), [anon_sym_extern] = ACTIONS(2006), [anon_sym___attribute__] = ACTIONS(2006), [anon_sym_COLON_COLON] = ACTIONS(2008), [anon_sym_LBRACK_LBRACK] = ACTIONS(2008), [anon_sym___declspec] = ACTIONS(2006), [anon_sym___based] = ACTIONS(2006), [anon_sym___cdecl] = ACTIONS(2006), [anon_sym___clrcall] = ACTIONS(2006), [anon_sym___stdcall] = ACTIONS(2006), [anon_sym___fastcall] = ACTIONS(2006), [anon_sym___thiscall] = ACTIONS(2006), [anon_sym___vectorcall] = ACTIONS(2006), [anon_sym_LBRACE] = ACTIONS(2008), [anon_sym_LBRACK] = ACTIONS(2006), [anon_sym_static] = ACTIONS(2006), [anon_sym_register] = ACTIONS(2006), [anon_sym_inline] = ACTIONS(2006), [anon_sym_thread_local] = ACTIONS(2006), [anon_sym_const] = ACTIONS(2006), [anon_sym_volatile] = ACTIONS(2006), [anon_sym_restrict] = ACTIONS(2006), [anon_sym__Atomic] = ACTIONS(2006), [anon_sym_mutable] = ACTIONS(2006), [anon_sym_constexpr] = ACTIONS(2006), [anon_sym_signed] = ACTIONS(2006), [anon_sym_unsigned] = ACTIONS(2006), [anon_sym_long] = ACTIONS(2006), [anon_sym_short] = ACTIONS(2006), [sym_primitive_type] = ACTIONS(2006), [anon_sym_enum] = ACTIONS(2006), [anon_sym_class] = ACTIONS(2006), [anon_sym_struct] = ACTIONS(2006), [anon_sym_union] = ACTIONS(2006), [anon_sym_if] = ACTIONS(2006), [anon_sym_else] = ACTIONS(2006), [anon_sym_switch] = ACTIONS(2006), [anon_sym_case] = ACTIONS(2006), [anon_sym_default] = ACTIONS(2006), [anon_sym_while] = ACTIONS(2006), [anon_sym_do] = ACTIONS(2006), [anon_sym_for] = ACTIONS(2006), [anon_sym_return] = ACTIONS(2006), [anon_sym_break] = ACTIONS(2006), [anon_sym_continue] = ACTIONS(2006), [anon_sym_goto] = ACTIONS(2006), [anon_sym_DASH_DASH] = ACTIONS(2008), [anon_sym_PLUS_PLUS] = ACTIONS(2008), [anon_sym_sizeof] = ACTIONS(2006), [sym_number_literal] = ACTIONS(2008), [anon_sym_L_SQUOTE] = ACTIONS(2008), [anon_sym_u_SQUOTE] = ACTIONS(2008), [anon_sym_U_SQUOTE] = ACTIONS(2008), [anon_sym_u8_SQUOTE] = ACTIONS(2008), [anon_sym_SQUOTE] = ACTIONS(2008), [anon_sym_L_DQUOTE] = ACTIONS(2008), [anon_sym_u_DQUOTE] = ACTIONS(2008), [anon_sym_U_DQUOTE] = ACTIONS(2008), [anon_sym_u8_DQUOTE] = ACTIONS(2008), [anon_sym_DQUOTE] = ACTIONS(2008), [sym_true] = ACTIONS(2006), [sym_false] = ACTIONS(2006), [sym_null] = ACTIONS(2006), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2006), [anon_sym_virtual] = ACTIONS(2006), [anon_sym_explicit] = ACTIONS(2006), [sym_auto] = ACTIONS(2006), [anon_sym_typename] = ACTIONS(2006), [anon_sym_template] = ACTIONS(2006), [anon_sym_operator] = ACTIONS(2006), [anon_sym_delete] = ACTIONS(2006), [anon_sym_throw] = ACTIONS(2006), [anon_sym_namespace] = ACTIONS(2006), [anon_sym_using] = ACTIONS(2006), [anon_sym_static_assert] = ACTIONS(2006), [anon_sym_co_return] = ACTIONS(2006), [anon_sym_co_yield] = ACTIONS(2006), [anon_sym_try] = ACTIONS(2006), [anon_sym_co_await] = ACTIONS(2006), [anon_sym_new] = ACTIONS(2006), [sym_this] = ACTIONS(2006), [sym_nullptr] = ACTIONS(2006), [sym_raw_string_literal] = ACTIONS(2008), }, [619] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [620] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [621] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [622] = { [sym_identifier] = ACTIONS(2010), [aux_sym_preproc_include_token1] = ACTIONS(2010), [aux_sym_preproc_def_token1] = ACTIONS(2010), [aux_sym_preproc_if_token1] = ACTIONS(2010), [aux_sym_preproc_if_token2] = ACTIONS(2010), [aux_sym_preproc_ifdef_token1] = ACTIONS(2010), [aux_sym_preproc_ifdef_token2] = ACTIONS(2010), [sym_preproc_directive] = ACTIONS(2010), [anon_sym_LPAREN2] = ACTIONS(2012), [anon_sym_BANG] = ACTIONS(2012), [anon_sym_TILDE] = ACTIONS(2012), [anon_sym_DASH] = ACTIONS(2010), [anon_sym_PLUS] = ACTIONS(2010), [anon_sym_STAR] = ACTIONS(2012), [anon_sym_AMP_AMP] = ACTIONS(2012), [anon_sym_AMP] = ACTIONS(2010), [anon_sym_SEMI] = ACTIONS(2012), [anon_sym_typedef] = ACTIONS(2010), [anon_sym_extern] = ACTIONS(2010), [anon_sym___attribute__] = ACTIONS(2010), [anon_sym_COLON_COLON] = ACTIONS(2012), [anon_sym_LBRACK_LBRACK] = ACTIONS(2012), [anon_sym___declspec] = ACTIONS(2010), [anon_sym___based] = ACTIONS(2010), [anon_sym___cdecl] = ACTIONS(2010), [anon_sym___clrcall] = ACTIONS(2010), [anon_sym___stdcall] = ACTIONS(2010), [anon_sym___fastcall] = ACTIONS(2010), [anon_sym___thiscall] = ACTIONS(2010), [anon_sym___vectorcall] = ACTIONS(2010), [anon_sym_LBRACE] = ACTIONS(2012), [anon_sym_LBRACK] = ACTIONS(2010), [anon_sym_static] = ACTIONS(2010), [anon_sym_register] = ACTIONS(2010), [anon_sym_inline] = ACTIONS(2010), [anon_sym_thread_local] = ACTIONS(2010), [anon_sym_const] = ACTIONS(2010), [anon_sym_volatile] = ACTIONS(2010), [anon_sym_restrict] = ACTIONS(2010), [anon_sym__Atomic] = ACTIONS(2010), [anon_sym_mutable] = ACTIONS(2010), [anon_sym_constexpr] = ACTIONS(2010), [anon_sym_signed] = ACTIONS(2010), [anon_sym_unsigned] = ACTIONS(2010), [anon_sym_long] = ACTIONS(2010), [anon_sym_short] = ACTIONS(2010), [sym_primitive_type] = ACTIONS(2010), [anon_sym_enum] = ACTIONS(2010), [anon_sym_class] = ACTIONS(2010), [anon_sym_struct] = ACTIONS(2010), [anon_sym_union] = ACTIONS(2010), [anon_sym_if] = ACTIONS(2010), [anon_sym_else] = ACTIONS(2010), [anon_sym_switch] = ACTIONS(2010), [anon_sym_case] = ACTIONS(2010), [anon_sym_default] = ACTIONS(2010), [anon_sym_while] = ACTIONS(2010), [anon_sym_do] = ACTIONS(2010), [anon_sym_for] = ACTIONS(2010), [anon_sym_return] = ACTIONS(2010), [anon_sym_break] = ACTIONS(2010), [anon_sym_continue] = ACTIONS(2010), [anon_sym_goto] = ACTIONS(2010), [anon_sym_DASH_DASH] = ACTIONS(2012), [anon_sym_PLUS_PLUS] = ACTIONS(2012), [anon_sym_sizeof] = ACTIONS(2010), [sym_number_literal] = ACTIONS(2012), [anon_sym_L_SQUOTE] = ACTIONS(2012), [anon_sym_u_SQUOTE] = ACTIONS(2012), [anon_sym_U_SQUOTE] = ACTIONS(2012), [anon_sym_u8_SQUOTE] = ACTIONS(2012), [anon_sym_SQUOTE] = ACTIONS(2012), [anon_sym_L_DQUOTE] = ACTIONS(2012), [anon_sym_u_DQUOTE] = ACTIONS(2012), [anon_sym_U_DQUOTE] = ACTIONS(2012), [anon_sym_u8_DQUOTE] = ACTIONS(2012), [anon_sym_DQUOTE] = ACTIONS(2012), [sym_true] = ACTIONS(2010), [sym_false] = ACTIONS(2010), [sym_null] = ACTIONS(2010), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2010), [anon_sym_virtual] = ACTIONS(2010), [anon_sym_explicit] = ACTIONS(2010), [sym_auto] = ACTIONS(2010), [anon_sym_typename] = ACTIONS(2010), [anon_sym_template] = ACTIONS(2010), [anon_sym_operator] = ACTIONS(2010), [anon_sym_delete] = ACTIONS(2010), [anon_sym_throw] = ACTIONS(2010), [anon_sym_namespace] = ACTIONS(2010), [anon_sym_using] = ACTIONS(2010), [anon_sym_static_assert] = ACTIONS(2010), [anon_sym_co_return] = ACTIONS(2010), [anon_sym_co_yield] = ACTIONS(2010), [anon_sym_try] = ACTIONS(2010), [anon_sym_co_await] = ACTIONS(2010), [anon_sym_new] = ACTIONS(2010), [sym_this] = ACTIONS(2010), [sym_nullptr] = ACTIONS(2010), [sym_raw_string_literal] = ACTIONS(2012), }, [623] = { [sym_identifier] = ACTIONS(2014), [aux_sym_preproc_include_token1] = ACTIONS(2014), [aux_sym_preproc_def_token1] = ACTIONS(2014), [aux_sym_preproc_if_token1] = ACTIONS(2014), [aux_sym_preproc_if_token2] = ACTIONS(2014), [aux_sym_preproc_ifdef_token1] = ACTIONS(2014), [aux_sym_preproc_ifdef_token2] = ACTIONS(2014), [sym_preproc_directive] = ACTIONS(2014), [anon_sym_LPAREN2] = ACTIONS(2016), [anon_sym_BANG] = ACTIONS(2016), [anon_sym_TILDE] = ACTIONS(2016), [anon_sym_DASH] = ACTIONS(2014), [anon_sym_PLUS] = ACTIONS(2014), [anon_sym_STAR] = ACTIONS(2016), [anon_sym_AMP_AMP] = ACTIONS(2016), [anon_sym_AMP] = ACTIONS(2014), [anon_sym_SEMI] = ACTIONS(2016), [anon_sym_typedef] = ACTIONS(2014), [anon_sym_extern] = ACTIONS(2014), [anon_sym___attribute__] = ACTIONS(2014), [anon_sym_COLON_COLON] = ACTIONS(2016), [anon_sym_LBRACK_LBRACK] = ACTIONS(2016), [anon_sym___declspec] = ACTIONS(2014), [anon_sym___based] = ACTIONS(2014), [anon_sym___cdecl] = ACTIONS(2014), [anon_sym___clrcall] = ACTIONS(2014), [anon_sym___stdcall] = ACTIONS(2014), [anon_sym___fastcall] = ACTIONS(2014), [anon_sym___thiscall] = ACTIONS(2014), [anon_sym___vectorcall] = ACTIONS(2014), [anon_sym_LBRACE] = ACTIONS(2016), [anon_sym_LBRACK] = ACTIONS(2014), [anon_sym_static] = ACTIONS(2014), [anon_sym_register] = ACTIONS(2014), [anon_sym_inline] = ACTIONS(2014), [anon_sym_thread_local] = ACTIONS(2014), [anon_sym_const] = ACTIONS(2014), [anon_sym_volatile] = ACTIONS(2014), [anon_sym_restrict] = ACTIONS(2014), [anon_sym__Atomic] = ACTIONS(2014), [anon_sym_mutable] = ACTIONS(2014), [anon_sym_constexpr] = ACTIONS(2014), [anon_sym_signed] = ACTIONS(2014), [anon_sym_unsigned] = ACTIONS(2014), [anon_sym_long] = ACTIONS(2014), [anon_sym_short] = ACTIONS(2014), [sym_primitive_type] = ACTIONS(2014), [anon_sym_enum] = ACTIONS(2014), [anon_sym_class] = ACTIONS(2014), [anon_sym_struct] = ACTIONS(2014), [anon_sym_union] = ACTIONS(2014), [anon_sym_if] = ACTIONS(2014), [anon_sym_else] = ACTIONS(2014), [anon_sym_switch] = ACTIONS(2014), [anon_sym_case] = ACTIONS(2014), [anon_sym_default] = ACTIONS(2014), [anon_sym_while] = ACTIONS(2014), [anon_sym_do] = ACTIONS(2014), [anon_sym_for] = ACTIONS(2014), [anon_sym_return] = ACTIONS(2014), [anon_sym_break] = ACTIONS(2014), [anon_sym_continue] = ACTIONS(2014), [anon_sym_goto] = ACTIONS(2014), [anon_sym_DASH_DASH] = ACTIONS(2016), [anon_sym_PLUS_PLUS] = ACTIONS(2016), [anon_sym_sizeof] = ACTIONS(2014), [sym_number_literal] = ACTIONS(2016), [anon_sym_L_SQUOTE] = ACTIONS(2016), [anon_sym_u_SQUOTE] = ACTIONS(2016), [anon_sym_U_SQUOTE] = ACTIONS(2016), [anon_sym_u8_SQUOTE] = ACTIONS(2016), [anon_sym_SQUOTE] = ACTIONS(2016), [anon_sym_L_DQUOTE] = ACTIONS(2016), [anon_sym_u_DQUOTE] = ACTIONS(2016), [anon_sym_U_DQUOTE] = ACTIONS(2016), [anon_sym_u8_DQUOTE] = ACTIONS(2016), [anon_sym_DQUOTE] = ACTIONS(2016), [sym_true] = ACTIONS(2014), [sym_false] = ACTIONS(2014), [sym_null] = ACTIONS(2014), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2014), [anon_sym_virtual] = ACTIONS(2014), [anon_sym_explicit] = ACTIONS(2014), [sym_auto] = ACTIONS(2014), [anon_sym_typename] = ACTIONS(2014), [anon_sym_template] = ACTIONS(2014), [anon_sym_operator] = ACTIONS(2014), [anon_sym_delete] = ACTIONS(2014), [anon_sym_throw] = ACTIONS(2014), [anon_sym_namespace] = ACTIONS(2014), [anon_sym_using] = ACTIONS(2014), [anon_sym_static_assert] = ACTIONS(2014), [anon_sym_co_return] = ACTIONS(2014), [anon_sym_co_yield] = ACTIONS(2014), [anon_sym_try] = ACTIONS(2014), [anon_sym_co_await] = ACTIONS(2014), [anon_sym_new] = ACTIONS(2014), [sym_this] = ACTIONS(2014), [sym_nullptr] = ACTIONS(2014), [sym_raw_string_literal] = ACTIONS(2016), }, [624] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [625] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [626] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [627] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [628] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [629] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [630] = { [ts_builtin_sym_end] = ACTIONS(1842), [sym_identifier] = ACTIONS(1840), [aux_sym_preproc_include_token1] = ACTIONS(1840), [aux_sym_preproc_def_token1] = ACTIONS(1840), [aux_sym_preproc_if_token1] = ACTIONS(1840), [aux_sym_preproc_ifdef_token1] = ACTIONS(1840), [aux_sym_preproc_ifdef_token2] = ACTIONS(1840), [sym_preproc_directive] = ACTIONS(1840), [anon_sym_LPAREN2] = ACTIONS(1842), [anon_sym_BANG] = ACTIONS(1842), [anon_sym_TILDE] = ACTIONS(1842), [anon_sym_DASH] = ACTIONS(1840), [anon_sym_PLUS] = ACTIONS(1840), [anon_sym_STAR] = ACTIONS(1842), [anon_sym_AMP_AMP] = ACTIONS(1842), [anon_sym_AMP] = ACTIONS(1840), [anon_sym_SEMI] = ACTIONS(1842), [anon_sym_typedef] = ACTIONS(1840), [anon_sym_extern] = ACTIONS(1840), [anon_sym___attribute__] = ACTIONS(1840), [anon_sym_COLON_COLON] = ACTIONS(1842), [anon_sym_LBRACK_LBRACK] = ACTIONS(1842), [anon_sym___declspec] = ACTIONS(1840), [anon_sym___based] = ACTIONS(1840), [anon_sym___cdecl] = ACTIONS(1840), [anon_sym___clrcall] = ACTIONS(1840), [anon_sym___stdcall] = ACTIONS(1840), [anon_sym___fastcall] = ACTIONS(1840), [anon_sym___thiscall] = ACTIONS(1840), [anon_sym___vectorcall] = ACTIONS(1840), [anon_sym_LBRACE] = ACTIONS(1842), [anon_sym_LBRACK] = ACTIONS(1840), [anon_sym_static] = ACTIONS(1840), [anon_sym_register] = ACTIONS(1840), [anon_sym_inline] = ACTIONS(1840), [anon_sym_thread_local] = ACTIONS(1840), [anon_sym_const] = ACTIONS(1840), [anon_sym_volatile] = ACTIONS(1840), [anon_sym_restrict] = ACTIONS(1840), [anon_sym__Atomic] = ACTIONS(1840), [anon_sym_mutable] = ACTIONS(1840), [anon_sym_constexpr] = ACTIONS(1840), [anon_sym_signed] = ACTIONS(1840), [anon_sym_unsigned] = ACTIONS(1840), [anon_sym_long] = ACTIONS(1840), [anon_sym_short] = ACTIONS(1840), [sym_primitive_type] = ACTIONS(1840), [anon_sym_enum] = ACTIONS(1840), [anon_sym_class] = ACTIONS(1840), [anon_sym_struct] = ACTIONS(1840), [anon_sym_union] = ACTIONS(1840), [anon_sym_if] = ACTIONS(1840), [anon_sym_else] = ACTIONS(1840), [anon_sym_switch] = ACTIONS(1840), [anon_sym_case] = ACTIONS(1840), [anon_sym_default] = ACTIONS(1840), [anon_sym_while] = ACTIONS(1840), [anon_sym_do] = ACTIONS(1840), [anon_sym_for] = ACTIONS(1840), [anon_sym_return] = ACTIONS(1840), [anon_sym_break] = ACTIONS(1840), [anon_sym_continue] = ACTIONS(1840), [anon_sym_goto] = ACTIONS(1840), [anon_sym_DASH_DASH] = ACTIONS(1842), [anon_sym_PLUS_PLUS] = ACTIONS(1842), [anon_sym_sizeof] = ACTIONS(1840), [sym_number_literal] = ACTIONS(1842), [anon_sym_L_SQUOTE] = ACTIONS(1842), [anon_sym_u_SQUOTE] = ACTIONS(1842), [anon_sym_U_SQUOTE] = ACTIONS(1842), [anon_sym_u8_SQUOTE] = ACTIONS(1842), [anon_sym_SQUOTE] = ACTIONS(1842), [anon_sym_L_DQUOTE] = ACTIONS(1842), [anon_sym_u_DQUOTE] = ACTIONS(1842), [anon_sym_U_DQUOTE] = ACTIONS(1842), [anon_sym_u8_DQUOTE] = ACTIONS(1842), [anon_sym_DQUOTE] = ACTIONS(1842), [sym_true] = ACTIONS(1840), [sym_false] = ACTIONS(1840), [sym_null] = ACTIONS(1840), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1840), [anon_sym_virtual] = ACTIONS(1840), [anon_sym_explicit] = ACTIONS(1840), [sym_auto] = ACTIONS(1840), [anon_sym_typename] = ACTIONS(1840), [anon_sym_template] = ACTIONS(1840), [anon_sym_operator] = ACTIONS(1840), [anon_sym_delete] = ACTIONS(1840), [anon_sym_throw] = ACTIONS(1840), [anon_sym_namespace] = ACTIONS(1840), [anon_sym_using] = ACTIONS(1840), [anon_sym_static_assert] = ACTIONS(1840), [anon_sym_co_return] = ACTIONS(1840), [anon_sym_co_yield] = ACTIONS(1840), [anon_sym_try] = ACTIONS(1840), [anon_sym_co_await] = ACTIONS(1840), [anon_sym_new] = ACTIONS(1840), [sym_this] = ACTIONS(1840), [sym_nullptr] = ACTIONS(1840), [sym_raw_string_literal] = ACTIONS(1842), }, [631] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [632] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [633] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [634] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [635] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [636] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [637] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [638] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [639] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [640] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [641] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [642] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [643] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [644] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [645] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [646] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [647] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [648] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [649] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [650] = { [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_if_token2] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [651] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [652] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [653] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [654] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [655] = { [ts_builtin_sym_end] = ACTIONS(1834), [sym_identifier] = ACTIONS(1832), [aux_sym_preproc_include_token1] = ACTIONS(1832), [aux_sym_preproc_def_token1] = ACTIONS(1832), [aux_sym_preproc_if_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token1] = ACTIONS(1832), [aux_sym_preproc_ifdef_token2] = ACTIONS(1832), [sym_preproc_directive] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP_AMP] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1832), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym___based] = ACTIONS(1832), [anon_sym___cdecl] = ACTIONS(1832), [anon_sym___clrcall] = ACTIONS(1832), [anon_sym___stdcall] = ACTIONS(1832), [anon_sym___fastcall] = ACTIONS(1832), [anon_sym___thiscall] = ACTIONS(1832), [anon_sym___vectorcall] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_case] = ACTIONS(1832), [anon_sym_default] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [anon_sym_explicit] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_operator] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_namespace] = ACTIONS(1832), [anon_sym_using] = ACTIONS(1832), [anon_sym_static_assert] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [656] = { [sym_identifier] = ACTIONS(2218), [aux_sym_preproc_include_token1] = ACTIONS(2218), [aux_sym_preproc_def_token1] = ACTIONS(2218), [aux_sym_preproc_if_token1] = ACTIONS(2218), [aux_sym_preproc_ifdef_token1] = ACTIONS(2218), [aux_sym_preproc_ifdef_token2] = ACTIONS(2218), [sym_preproc_directive] = ACTIONS(2218), [anon_sym_LPAREN2] = ACTIONS(2220), [anon_sym_BANG] = ACTIONS(2220), [anon_sym_TILDE] = ACTIONS(2220), [anon_sym_DASH] = ACTIONS(2218), [anon_sym_PLUS] = ACTIONS(2218), [anon_sym_STAR] = ACTIONS(2220), [anon_sym_AMP_AMP] = ACTIONS(2220), [anon_sym_AMP] = ACTIONS(2218), [anon_sym_SEMI] = ACTIONS(2220), [anon_sym_typedef] = ACTIONS(2218), [anon_sym_extern] = ACTIONS(2218), [anon_sym___attribute__] = ACTIONS(2218), [anon_sym_COLON_COLON] = ACTIONS(2220), [anon_sym_LBRACK_LBRACK] = ACTIONS(2220), [anon_sym___declspec] = ACTIONS(2218), [anon_sym___based] = ACTIONS(2218), [anon_sym___cdecl] = ACTIONS(2218), [anon_sym___clrcall] = ACTIONS(2218), [anon_sym___stdcall] = ACTIONS(2218), [anon_sym___fastcall] = ACTIONS(2218), [anon_sym___thiscall] = ACTIONS(2218), [anon_sym___vectorcall] = ACTIONS(2218), [anon_sym_LBRACE] = ACTIONS(2220), [anon_sym_RBRACE] = ACTIONS(2220), [anon_sym_LBRACK] = ACTIONS(2218), [anon_sym_static] = ACTIONS(2218), [anon_sym_register] = ACTIONS(2218), [anon_sym_inline] = ACTIONS(2218), [anon_sym_thread_local] = ACTIONS(2218), [anon_sym_const] = ACTIONS(2218), [anon_sym_volatile] = ACTIONS(2218), [anon_sym_restrict] = ACTIONS(2218), [anon_sym__Atomic] = ACTIONS(2218), [anon_sym_mutable] = ACTIONS(2218), [anon_sym_constexpr] = ACTIONS(2218), [anon_sym_signed] = ACTIONS(2218), [anon_sym_unsigned] = ACTIONS(2218), [anon_sym_long] = ACTIONS(2218), [anon_sym_short] = ACTIONS(2218), [sym_primitive_type] = ACTIONS(2218), [anon_sym_enum] = ACTIONS(2218), [anon_sym_class] = ACTIONS(2218), [anon_sym_struct] = ACTIONS(2218), [anon_sym_union] = ACTIONS(2218), [anon_sym_if] = ACTIONS(2218), [anon_sym_switch] = ACTIONS(2218), [anon_sym_case] = ACTIONS(2218), [anon_sym_default] = ACTIONS(2218), [anon_sym_while] = ACTIONS(2218), [anon_sym_do] = ACTIONS(2218), [anon_sym_for] = ACTIONS(2218), [anon_sym_return] = ACTIONS(2218), [anon_sym_break] = ACTIONS(2218), [anon_sym_continue] = ACTIONS(2218), [anon_sym_goto] = ACTIONS(2218), [anon_sym_DASH_DASH] = ACTIONS(2220), [anon_sym_PLUS_PLUS] = ACTIONS(2220), [anon_sym_sizeof] = ACTIONS(2218), [sym_number_literal] = ACTIONS(2220), [anon_sym_L_SQUOTE] = ACTIONS(2220), [anon_sym_u_SQUOTE] = ACTIONS(2220), [anon_sym_U_SQUOTE] = ACTIONS(2220), [anon_sym_u8_SQUOTE] = ACTIONS(2220), [anon_sym_SQUOTE] = ACTIONS(2220), [anon_sym_L_DQUOTE] = ACTIONS(2220), [anon_sym_u_DQUOTE] = ACTIONS(2220), [anon_sym_U_DQUOTE] = ACTIONS(2220), [anon_sym_u8_DQUOTE] = ACTIONS(2220), [anon_sym_DQUOTE] = ACTIONS(2220), [sym_true] = ACTIONS(2218), [sym_false] = ACTIONS(2218), [sym_null] = ACTIONS(2218), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2218), [anon_sym_virtual] = ACTIONS(2218), [anon_sym_explicit] = ACTIONS(2218), [sym_auto] = ACTIONS(2218), [anon_sym_typename] = ACTIONS(2218), [anon_sym_template] = ACTIONS(2218), [anon_sym_operator] = ACTIONS(2218), [anon_sym_delete] = ACTIONS(2218), [anon_sym_throw] = ACTIONS(2218), [anon_sym_namespace] = ACTIONS(2218), [anon_sym_using] = ACTIONS(2218), [anon_sym_static_assert] = ACTIONS(2218), [anon_sym_co_return] = ACTIONS(2218), [anon_sym_co_yield] = ACTIONS(2218), [anon_sym_try] = ACTIONS(2218), [anon_sym_co_await] = ACTIONS(2218), [anon_sym_new] = ACTIONS(2218), [sym_this] = ACTIONS(2218), [sym_nullptr] = ACTIONS(2218), [sym_raw_string_literal] = ACTIONS(2220), }, [657] = { [sym_identifier] = ACTIONS(2210), [aux_sym_preproc_include_token1] = ACTIONS(2210), [aux_sym_preproc_def_token1] = ACTIONS(2210), [aux_sym_preproc_if_token1] = ACTIONS(2210), [aux_sym_preproc_ifdef_token1] = ACTIONS(2210), [aux_sym_preproc_ifdef_token2] = ACTIONS(2210), [sym_preproc_directive] = ACTIONS(2210), [anon_sym_LPAREN2] = ACTIONS(2212), [anon_sym_BANG] = ACTIONS(2212), [anon_sym_TILDE] = ACTIONS(2212), [anon_sym_DASH] = ACTIONS(2210), [anon_sym_PLUS] = ACTIONS(2210), [anon_sym_STAR] = ACTIONS(2212), [anon_sym_AMP_AMP] = ACTIONS(2212), [anon_sym_AMP] = ACTIONS(2210), [anon_sym_SEMI] = ACTIONS(2212), [anon_sym_typedef] = ACTIONS(2210), [anon_sym_extern] = ACTIONS(2210), [anon_sym___attribute__] = ACTIONS(2210), [anon_sym_COLON_COLON] = ACTIONS(2212), [anon_sym_LBRACK_LBRACK] = ACTIONS(2212), [anon_sym___declspec] = ACTIONS(2210), [anon_sym___based] = ACTIONS(2210), [anon_sym___cdecl] = ACTIONS(2210), [anon_sym___clrcall] = ACTIONS(2210), [anon_sym___stdcall] = ACTIONS(2210), [anon_sym___fastcall] = ACTIONS(2210), [anon_sym___thiscall] = ACTIONS(2210), [anon_sym___vectorcall] = ACTIONS(2210), [anon_sym_LBRACE] = ACTIONS(2212), [anon_sym_RBRACE] = ACTIONS(2212), [anon_sym_LBRACK] = ACTIONS(2210), [anon_sym_static] = ACTIONS(2210), [anon_sym_register] = ACTIONS(2210), [anon_sym_inline] = ACTIONS(2210), [anon_sym_thread_local] = ACTIONS(2210), [anon_sym_const] = ACTIONS(2210), [anon_sym_volatile] = ACTIONS(2210), [anon_sym_restrict] = ACTIONS(2210), [anon_sym__Atomic] = ACTIONS(2210), [anon_sym_mutable] = ACTIONS(2210), [anon_sym_constexpr] = ACTIONS(2210), [anon_sym_signed] = ACTIONS(2210), [anon_sym_unsigned] = ACTIONS(2210), [anon_sym_long] = ACTIONS(2210), [anon_sym_short] = ACTIONS(2210), [sym_primitive_type] = ACTIONS(2210), [anon_sym_enum] = ACTIONS(2210), [anon_sym_class] = ACTIONS(2210), [anon_sym_struct] = ACTIONS(2210), [anon_sym_union] = ACTIONS(2210), [anon_sym_if] = ACTIONS(2210), [anon_sym_switch] = ACTIONS(2210), [anon_sym_case] = ACTIONS(2210), [anon_sym_default] = ACTIONS(2210), [anon_sym_while] = ACTIONS(2210), [anon_sym_do] = ACTIONS(2210), [anon_sym_for] = ACTIONS(2210), [anon_sym_return] = ACTIONS(2210), [anon_sym_break] = ACTIONS(2210), [anon_sym_continue] = ACTIONS(2210), [anon_sym_goto] = ACTIONS(2210), [anon_sym_DASH_DASH] = ACTIONS(2212), [anon_sym_PLUS_PLUS] = ACTIONS(2212), [anon_sym_sizeof] = ACTIONS(2210), [sym_number_literal] = ACTIONS(2212), [anon_sym_L_SQUOTE] = ACTIONS(2212), [anon_sym_u_SQUOTE] = ACTIONS(2212), [anon_sym_U_SQUOTE] = ACTIONS(2212), [anon_sym_u8_SQUOTE] = ACTIONS(2212), [anon_sym_SQUOTE] = ACTIONS(2212), [anon_sym_L_DQUOTE] = ACTIONS(2212), [anon_sym_u_DQUOTE] = ACTIONS(2212), [anon_sym_U_DQUOTE] = ACTIONS(2212), [anon_sym_u8_DQUOTE] = ACTIONS(2212), [anon_sym_DQUOTE] = ACTIONS(2212), [sym_true] = ACTIONS(2210), [sym_false] = ACTIONS(2210), [sym_null] = ACTIONS(2210), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2210), [anon_sym_virtual] = ACTIONS(2210), [anon_sym_explicit] = ACTIONS(2210), [sym_auto] = ACTIONS(2210), [anon_sym_typename] = ACTIONS(2210), [anon_sym_template] = ACTIONS(2210), [anon_sym_operator] = ACTIONS(2210), [anon_sym_delete] = ACTIONS(2210), [anon_sym_throw] = ACTIONS(2210), [anon_sym_namespace] = ACTIONS(2210), [anon_sym_using] = ACTIONS(2210), [anon_sym_static_assert] = ACTIONS(2210), [anon_sym_co_return] = ACTIONS(2210), [anon_sym_co_yield] = ACTIONS(2210), [anon_sym_try] = ACTIONS(2210), [anon_sym_co_await] = ACTIONS(2210), [anon_sym_new] = ACTIONS(2210), [sym_this] = ACTIONS(2210), [sym_nullptr] = ACTIONS(2210), [sym_raw_string_literal] = ACTIONS(2212), }, [658] = { [sym_identifier] = ACTIONS(2094), [aux_sym_preproc_include_token1] = ACTIONS(2094), [aux_sym_preproc_def_token1] = ACTIONS(2094), [aux_sym_preproc_if_token1] = ACTIONS(2094), [aux_sym_preproc_if_token2] = ACTIONS(2094), [aux_sym_preproc_ifdef_token1] = ACTIONS(2094), [aux_sym_preproc_ifdef_token2] = ACTIONS(2094), [sym_preproc_directive] = ACTIONS(2094), [anon_sym_LPAREN2] = ACTIONS(2096), [anon_sym_BANG] = ACTIONS(2096), [anon_sym_TILDE] = ACTIONS(2096), [anon_sym_DASH] = ACTIONS(2094), [anon_sym_PLUS] = ACTIONS(2094), [anon_sym_STAR] = ACTIONS(2096), [anon_sym_AMP_AMP] = ACTIONS(2096), [anon_sym_AMP] = ACTIONS(2094), [anon_sym_SEMI] = ACTIONS(2096), [anon_sym_typedef] = ACTIONS(2094), [anon_sym_extern] = ACTIONS(2094), [anon_sym___attribute__] = ACTIONS(2094), [anon_sym_COLON_COLON] = ACTIONS(2096), [anon_sym_LBRACK_LBRACK] = ACTIONS(2096), [anon_sym___declspec] = ACTIONS(2094), [anon_sym___based] = ACTIONS(2094), [anon_sym___cdecl] = ACTIONS(2094), [anon_sym___clrcall] = ACTIONS(2094), [anon_sym___stdcall] = ACTIONS(2094), [anon_sym___fastcall] = ACTIONS(2094), [anon_sym___thiscall] = ACTIONS(2094), [anon_sym___vectorcall] = ACTIONS(2094), [anon_sym_LBRACE] = ACTIONS(2096), [anon_sym_LBRACK] = ACTIONS(2094), [anon_sym_static] = ACTIONS(2094), [anon_sym_register] = ACTIONS(2094), [anon_sym_inline] = ACTIONS(2094), [anon_sym_thread_local] = ACTIONS(2094), [anon_sym_const] = ACTIONS(2094), [anon_sym_volatile] = ACTIONS(2094), [anon_sym_restrict] = ACTIONS(2094), [anon_sym__Atomic] = ACTIONS(2094), [anon_sym_mutable] = ACTIONS(2094), [anon_sym_constexpr] = ACTIONS(2094), [anon_sym_signed] = ACTIONS(2094), [anon_sym_unsigned] = ACTIONS(2094), [anon_sym_long] = ACTIONS(2094), [anon_sym_short] = ACTIONS(2094), [sym_primitive_type] = ACTIONS(2094), [anon_sym_enum] = ACTIONS(2094), [anon_sym_class] = ACTIONS(2094), [anon_sym_struct] = ACTIONS(2094), [anon_sym_union] = ACTIONS(2094), [anon_sym_if] = ACTIONS(2094), [anon_sym_switch] = ACTIONS(2094), [anon_sym_case] = ACTIONS(2094), [anon_sym_default] = ACTIONS(2094), [anon_sym_while] = ACTIONS(2094), [anon_sym_do] = ACTIONS(2094), [anon_sym_for] = ACTIONS(2094), [anon_sym_return] = ACTIONS(2094), [anon_sym_break] = ACTIONS(2094), [anon_sym_continue] = ACTIONS(2094), [anon_sym_goto] = ACTIONS(2094), [anon_sym_DASH_DASH] = ACTIONS(2096), [anon_sym_PLUS_PLUS] = ACTIONS(2096), [anon_sym_sizeof] = ACTIONS(2094), [sym_number_literal] = ACTIONS(2096), [anon_sym_L_SQUOTE] = ACTIONS(2096), [anon_sym_u_SQUOTE] = ACTIONS(2096), [anon_sym_U_SQUOTE] = ACTIONS(2096), [anon_sym_u8_SQUOTE] = ACTIONS(2096), [anon_sym_SQUOTE] = ACTIONS(2096), [anon_sym_L_DQUOTE] = ACTIONS(2096), [anon_sym_u_DQUOTE] = ACTIONS(2096), [anon_sym_U_DQUOTE] = ACTIONS(2096), [anon_sym_u8_DQUOTE] = ACTIONS(2096), [anon_sym_DQUOTE] = ACTIONS(2096), [sym_true] = ACTIONS(2094), [sym_false] = ACTIONS(2094), [sym_null] = ACTIONS(2094), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2094), [anon_sym_virtual] = ACTIONS(2094), [anon_sym_explicit] = ACTIONS(2094), [sym_auto] = ACTIONS(2094), [anon_sym_typename] = ACTIONS(2094), [anon_sym_template] = ACTIONS(2094), [anon_sym_operator] = ACTIONS(2094), [anon_sym_delete] = ACTIONS(2094), [anon_sym_throw] = ACTIONS(2094), [anon_sym_namespace] = ACTIONS(2094), [anon_sym_using] = ACTIONS(2094), [anon_sym_static_assert] = ACTIONS(2094), [anon_sym_co_return] = ACTIONS(2094), [anon_sym_co_yield] = ACTIONS(2094), [anon_sym_try] = ACTIONS(2094), [anon_sym_co_await] = ACTIONS(2094), [anon_sym_new] = ACTIONS(2094), [sym_this] = ACTIONS(2094), [sym_nullptr] = ACTIONS(2094), [sym_raw_string_literal] = ACTIONS(2096), }, [659] = { [sym_identifier] = ACTIONS(2086), [aux_sym_preproc_include_token1] = ACTIONS(2086), [aux_sym_preproc_def_token1] = ACTIONS(2086), [aux_sym_preproc_if_token1] = ACTIONS(2086), [aux_sym_preproc_if_token2] = ACTIONS(2086), [aux_sym_preproc_ifdef_token1] = ACTIONS(2086), [aux_sym_preproc_ifdef_token2] = ACTIONS(2086), [sym_preproc_directive] = ACTIONS(2086), [anon_sym_LPAREN2] = ACTIONS(2088), [anon_sym_BANG] = ACTIONS(2088), [anon_sym_TILDE] = ACTIONS(2088), [anon_sym_DASH] = ACTIONS(2086), [anon_sym_PLUS] = ACTIONS(2086), [anon_sym_STAR] = ACTIONS(2088), [anon_sym_AMP_AMP] = ACTIONS(2088), [anon_sym_AMP] = ACTIONS(2086), [anon_sym_SEMI] = ACTIONS(2088), [anon_sym_typedef] = ACTIONS(2086), [anon_sym_extern] = ACTIONS(2086), [anon_sym___attribute__] = ACTIONS(2086), [anon_sym_COLON_COLON] = ACTIONS(2088), [anon_sym_LBRACK_LBRACK] = ACTIONS(2088), [anon_sym___declspec] = ACTIONS(2086), [anon_sym___based] = ACTIONS(2086), [anon_sym___cdecl] = ACTIONS(2086), [anon_sym___clrcall] = ACTIONS(2086), [anon_sym___stdcall] = ACTIONS(2086), [anon_sym___fastcall] = ACTIONS(2086), [anon_sym___thiscall] = ACTIONS(2086), [anon_sym___vectorcall] = ACTIONS(2086), [anon_sym_LBRACE] = ACTIONS(2088), [anon_sym_LBRACK] = ACTIONS(2086), [anon_sym_static] = ACTIONS(2086), [anon_sym_register] = ACTIONS(2086), [anon_sym_inline] = ACTIONS(2086), [anon_sym_thread_local] = ACTIONS(2086), [anon_sym_const] = ACTIONS(2086), [anon_sym_volatile] = ACTIONS(2086), [anon_sym_restrict] = ACTIONS(2086), [anon_sym__Atomic] = ACTIONS(2086), [anon_sym_mutable] = ACTIONS(2086), [anon_sym_constexpr] = ACTIONS(2086), [anon_sym_signed] = ACTIONS(2086), [anon_sym_unsigned] = ACTIONS(2086), [anon_sym_long] = ACTIONS(2086), [anon_sym_short] = ACTIONS(2086), [sym_primitive_type] = ACTIONS(2086), [anon_sym_enum] = ACTIONS(2086), [anon_sym_class] = ACTIONS(2086), [anon_sym_struct] = ACTIONS(2086), [anon_sym_union] = ACTIONS(2086), [anon_sym_if] = ACTIONS(2086), [anon_sym_switch] = ACTIONS(2086), [anon_sym_case] = ACTIONS(2086), [anon_sym_default] = ACTIONS(2086), [anon_sym_while] = ACTIONS(2086), [anon_sym_do] = ACTIONS(2086), [anon_sym_for] = ACTIONS(2086), [anon_sym_return] = ACTIONS(2086), [anon_sym_break] = ACTIONS(2086), [anon_sym_continue] = ACTIONS(2086), [anon_sym_goto] = ACTIONS(2086), [anon_sym_DASH_DASH] = ACTIONS(2088), [anon_sym_PLUS_PLUS] = ACTIONS(2088), [anon_sym_sizeof] = ACTIONS(2086), [sym_number_literal] = ACTIONS(2088), [anon_sym_L_SQUOTE] = ACTIONS(2088), [anon_sym_u_SQUOTE] = ACTIONS(2088), [anon_sym_U_SQUOTE] = ACTIONS(2088), [anon_sym_u8_SQUOTE] = ACTIONS(2088), [anon_sym_SQUOTE] = ACTIONS(2088), [anon_sym_L_DQUOTE] = ACTIONS(2088), [anon_sym_u_DQUOTE] = ACTIONS(2088), [anon_sym_U_DQUOTE] = ACTIONS(2088), [anon_sym_u8_DQUOTE] = ACTIONS(2088), [anon_sym_DQUOTE] = ACTIONS(2088), [sym_true] = ACTIONS(2086), [sym_false] = ACTIONS(2086), [sym_null] = ACTIONS(2086), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2086), [anon_sym_virtual] = ACTIONS(2086), [anon_sym_explicit] = ACTIONS(2086), [sym_auto] = ACTIONS(2086), [anon_sym_typename] = ACTIONS(2086), [anon_sym_template] = ACTIONS(2086), [anon_sym_operator] = ACTIONS(2086), [anon_sym_delete] = ACTIONS(2086), [anon_sym_throw] = ACTIONS(2086), [anon_sym_namespace] = ACTIONS(2086), [anon_sym_using] = ACTIONS(2086), [anon_sym_static_assert] = ACTIONS(2086), [anon_sym_co_return] = ACTIONS(2086), [anon_sym_co_yield] = ACTIONS(2086), [anon_sym_try] = ACTIONS(2086), [anon_sym_co_await] = ACTIONS(2086), [anon_sym_new] = ACTIONS(2086), [sym_this] = ACTIONS(2086), [sym_nullptr] = ACTIONS(2086), [sym_raw_string_literal] = ACTIONS(2088), }, [660] = { [ts_builtin_sym_end] = ACTIONS(2192), [sym_identifier] = ACTIONS(2190), [aux_sym_preproc_include_token1] = ACTIONS(2190), [aux_sym_preproc_def_token1] = ACTIONS(2190), [aux_sym_preproc_if_token1] = ACTIONS(2190), [aux_sym_preproc_ifdef_token1] = ACTIONS(2190), [aux_sym_preproc_ifdef_token2] = ACTIONS(2190), [sym_preproc_directive] = ACTIONS(2190), [anon_sym_LPAREN2] = ACTIONS(2192), [anon_sym_BANG] = ACTIONS(2192), [anon_sym_TILDE] = ACTIONS(2192), [anon_sym_DASH] = ACTIONS(2190), [anon_sym_PLUS] = ACTIONS(2190), [anon_sym_STAR] = ACTIONS(2192), [anon_sym_AMP_AMP] = ACTIONS(2192), [anon_sym_AMP] = ACTIONS(2190), [anon_sym_SEMI] = ACTIONS(2192), [anon_sym_typedef] = ACTIONS(2190), [anon_sym_extern] = ACTIONS(2190), [anon_sym___attribute__] = ACTIONS(2190), [anon_sym_COLON_COLON] = ACTIONS(2192), [anon_sym_LBRACK_LBRACK] = ACTIONS(2192), [anon_sym___declspec] = ACTIONS(2190), [anon_sym___based] = ACTIONS(2190), [anon_sym___cdecl] = ACTIONS(2190), [anon_sym___clrcall] = ACTIONS(2190), [anon_sym___stdcall] = ACTIONS(2190), [anon_sym___fastcall] = ACTIONS(2190), [anon_sym___thiscall] = ACTIONS(2190), [anon_sym___vectorcall] = ACTIONS(2190), [anon_sym_LBRACE] = ACTIONS(2192), [anon_sym_LBRACK] = ACTIONS(2190), [anon_sym_static] = ACTIONS(2190), [anon_sym_register] = ACTIONS(2190), [anon_sym_inline] = ACTIONS(2190), [anon_sym_thread_local] = ACTIONS(2190), [anon_sym_const] = ACTIONS(2190), [anon_sym_volatile] = ACTIONS(2190), [anon_sym_restrict] = ACTIONS(2190), [anon_sym__Atomic] = ACTIONS(2190), [anon_sym_mutable] = ACTIONS(2190), [anon_sym_constexpr] = ACTIONS(2190), [anon_sym_signed] = ACTIONS(2190), [anon_sym_unsigned] = ACTIONS(2190), [anon_sym_long] = ACTIONS(2190), [anon_sym_short] = ACTIONS(2190), [sym_primitive_type] = ACTIONS(2190), [anon_sym_enum] = ACTIONS(2190), [anon_sym_class] = ACTIONS(2190), [anon_sym_struct] = ACTIONS(2190), [anon_sym_union] = ACTIONS(2190), [anon_sym_if] = ACTIONS(2190), [anon_sym_switch] = ACTIONS(2190), [anon_sym_case] = ACTIONS(2190), [anon_sym_default] = ACTIONS(2190), [anon_sym_while] = ACTIONS(2190), [anon_sym_do] = ACTIONS(2190), [anon_sym_for] = ACTIONS(2190), [anon_sym_return] = ACTIONS(2190), [anon_sym_break] = ACTIONS(2190), [anon_sym_continue] = ACTIONS(2190), [anon_sym_goto] = ACTIONS(2190), [anon_sym_DASH_DASH] = ACTIONS(2192), [anon_sym_PLUS_PLUS] = ACTIONS(2192), [anon_sym_sizeof] = ACTIONS(2190), [sym_number_literal] = ACTIONS(2192), [anon_sym_L_SQUOTE] = ACTIONS(2192), [anon_sym_u_SQUOTE] = ACTIONS(2192), [anon_sym_U_SQUOTE] = ACTIONS(2192), [anon_sym_u8_SQUOTE] = ACTIONS(2192), [anon_sym_SQUOTE] = ACTIONS(2192), [anon_sym_L_DQUOTE] = ACTIONS(2192), [anon_sym_u_DQUOTE] = ACTIONS(2192), [anon_sym_U_DQUOTE] = ACTIONS(2192), [anon_sym_u8_DQUOTE] = ACTIONS(2192), [anon_sym_DQUOTE] = ACTIONS(2192), [sym_true] = ACTIONS(2190), [sym_false] = ACTIONS(2190), [sym_null] = ACTIONS(2190), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2190), [anon_sym_virtual] = ACTIONS(2190), [anon_sym_explicit] = ACTIONS(2190), [sym_auto] = ACTIONS(2190), [anon_sym_typename] = ACTIONS(2190), [anon_sym_template] = ACTIONS(2190), [anon_sym_operator] = ACTIONS(2190), [anon_sym_delete] = ACTIONS(2190), [anon_sym_throw] = ACTIONS(2190), [anon_sym_namespace] = ACTIONS(2190), [anon_sym_using] = ACTIONS(2190), [anon_sym_static_assert] = ACTIONS(2190), [anon_sym_co_return] = ACTIONS(2190), [anon_sym_co_yield] = ACTIONS(2190), [anon_sym_try] = ACTIONS(2190), [anon_sym_co_await] = ACTIONS(2190), [anon_sym_new] = ACTIONS(2190), [sym_this] = ACTIONS(2190), [sym_nullptr] = ACTIONS(2190), [sym_raw_string_literal] = ACTIONS(2192), }, [661] = { [sym_identifier] = ACTIONS(2062), [aux_sym_preproc_include_token1] = ACTIONS(2062), [aux_sym_preproc_def_token1] = ACTIONS(2062), [aux_sym_preproc_if_token1] = ACTIONS(2062), [aux_sym_preproc_if_token2] = ACTIONS(2062), [aux_sym_preproc_ifdef_token1] = ACTIONS(2062), [aux_sym_preproc_ifdef_token2] = ACTIONS(2062), [sym_preproc_directive] = ACTIONS(2062), [anon_sym_LPAREN2] = ACTIONS(2064), [anon_sym_BANG] = ACTIONS(2064), [anon_sym_TILDE] = ACTIONS(2064), [anon_sym_DASH] = ACTIONS(2062), [anon_sym_PLUS] = ACTIONS(2062), [anon_sym_STAR] = ACTIONS(2064), [anon_sym_AMP_AMP] = ACTIONS(2064), [anon_sym_AMP] = ACTIONS(2062), [anon_sym_SEMI] = ACTIONS(2064), [anon_sym_typedef] = ACTIONS(2062), [anon_sym_extern] = ACTIONS(2062), [anon_sym___attribute__] = ACTIONS(2062), [anon_sym_COLON_COLON] = ACTIONS(2064), [anon_sym_LBRACK_LBRACK] = ACTIONS(2064), [anon_sym___declspec] = ACTIONS(2062), [anon_sym___based] = ACTIONS(2062), [anon_sym___cdecl] = ACTIONS(2062), [anon_sym___clrcall] = ACTIONS(2062), [anon_sym___stdcall] = ACTIONS(2062), [anon_sym___fastcall] = ACTIONS(2062), [anon_sym___thiscall] = ACTIONS(2062), [anon_sym___vectorcall] = ACTIONS(2062), [anon_sym_LBRACE] = ACTIONS(2064), [anon_sym_LBRACK] = ACTIONS(2062), [anon_sym_static] = ACTIONS(2062), [anon_sym_register] = ACTIONS(2062), [anon_sym_inline] = ACTIONS(2062), [anon_sym_thread_local] = ACTIONS(2062), [anon_sym_const] = ACTIONS(2062), [anon_sym_volatile] = ACTIONS(2062), [anon_sym_restrict] = ACTIONS(2062), [anon_sym__Atomic] = ACTIONS(2062), [anon_sym_mutable] = ACTIONS(2062), [anon_sym_constexpr] = ACTIONS(2062), [anon_sym_signed] = ACTIONS(2062), [anon_sym_unsigned] = ACTIONS(2062), [anon_sym_long] = ACTIONS(2062), [anon_sym_short] = ACTIONS(2062), [sym_primitive_type] = ACTIONS(2062), [anon_sym_enum] = ACTIONS(2062), [anon_sym_class] = ACTIONS(2062), [anon_sym_struct] = ACTIONS(2062), [anon_sym_union] = ACTIONS(2062), [anon_sym_if] = ACTIONS(2062), [anon_sym_switch] = ACTIONS(2062), [anon_sym_case] = ACTIONS(2062), [anon_sym_default] = ACTIONS(2062), [anon_sym_while] = ACTIONS(2062), [anon_sym_do] = ACTIONS(2062), [anon_sym_for] = ACTIONS(2062), [anon_sym_return] = ACTIONS(2062), [anon_sym_break] = ACTIONS(2062), [anon_sym_continue] = ACTIONS(2062), [anon_sym_goto] = ACTIONS(2062), [anon_sym_DASH_DASH] = ACTIONS(2064), [anon_sym_PLUS_PLUS] = ACTIONS(2064), [anon_sym_sizeof] = ACTIONS(2062), [sym_number_literal] = ACTIONS(2064), [anon_sym_L_SQUOTE] = ACTIONS(2064), [anon_sym_u_SQUOTE] = ACTIONS(2064), [anon_sym_U_SQUOTE] = ACTIONS(2064), [anon_sym_u8_SQUOTE] = ACTIONS(2064), [anon_sym_SQUOTE] = ACTIONS(2064), [anon_sym_L_DQUOTE] = ACTIONS(2064), [anon_sym_u_DQUOTE] = ACTIONS(2064), [anon_sym_U_DQUOTE] = ACTIONS(2064), [anon_sym_u8_DQUOTE] = ACTIONS(2064), [anon_sym_DQUOTE] = ACTIONS(2064), [sym_true] = ACTIONS(2062), [sym_false] = ACTIONS(2062), [sym_null] = ACTIONS(2062), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2062), [anon_sym_virtual] = ACTIONS(2062), [anon_sym_explicit] = ACTIONS(2062), [sym_auto] = ACTIONS(2062), [anon_sym_typename] = ACTIONS(2062), [anon_sym_template] = ACTIONS(2062), [anon_sym_operator] = ACTIONS(2062), [anon_sym_delete] = ACTIONS(2062), [anon_sym_throw] = ACTIONS(2062), [anon_sym_namespace] = ACTIONS(2062), [anon_sym_using] = ACTIONS(2062), [anon_sym_static_assert] = ACTIONS(2062), [anon_sym_co_return] = ACTIONS(2062), [anon_sym_co_yield] = ACTIONS(2062), [anon_sym_try] = ACTIONS(2062), [anon_sym_co_await] = ACTIONS(2062), [anon_sym_new] = ACTIONS(2062), [sym_this] = ACTIONS(2062), [sym_nullptr] = ACTIONS(2062), [sym_raw_string_literal] = ACTIONS(2064), }, [662] = { [sym_identifier] = ACTIONS(2058), [aux_sym_preproc_include_token1] = ACTIONS(2058), [aux_sym_preproc_def_token1] = ACTIONS(2058), [aux_sym_preproc_if_token1] = ACTIONS(2058), [aux_sym_preproc_if_token2] = ACTIONS(2058), [aux_sym_preproc_ifdef_token1] = ACTIONS(2058), [aux_sym_preproc_ifdef_token2] = ACTIONS(2058), [sym_preproc_directive] = ACTIONS(2058), [anon_sym_LPAREN2] = ACTIONS(2060), [anon_sym_BANG] = ACTIONS(2060), [anon_sym_TILDE] = ACTIONS(2060), [anon_sym_DASH] = ACTIONS(2058), [anon_sym_PLUS] = ACTIONS(2058), [anon_sym_STAR] = ACTIONS(2060), [anon_sym_AMP_AMP] = ACTIONS(2060), [anon_sym_AMP] = ACTIONS(2058), [anon_sym_SEMI] = ACTIONS(2060), [anon_sym_typedef] = ACTIONS(2058), [anon_sym_extern] = ACTIONS(2058), [anon_sym___attribute__] = ACTIONS(2058), [anon_sym_COLON_COLON] = ACTIONS(2060), [anon_sym_LBRACK_LBRACK] = ACTIONS(2060), [anon_sym___declspec] = ACTIONS(2058), [anon_sym___based] = ACTIONS(2058), [anon_sym___cdecl] = ACTIONS(2058), [anon_sym___clrcall] = ACTIONS(2058), [anon_sym___stdcall] = ACTIONS(2058), [anon_sym___fastcall] = ACTIONS(2058), [anon_sym___thiscall] = ACTIONS(2058), [anon_sym___vectorcall] = ACTIONS(2058), [anon_sym_LBRACE] = ACTIONS(2060), [anon_sym_LBRACK] = ACTIONS(2058), [anon_sym_static] = ACTIONS(2058), [anon_sym_register] = ACTIONS(2058), [anon_sym_inline] = ACTIONS(2058), [anon_sym_thread_local] = ACTIONS(2058), [anon_sym_const] = ACTIONS(2058), [anon_sym_volatile] = ACTIONS(2058), [anon_sym_restrict] = ACTIONS(2058), [anon_sym__Atomic] = ACTIONS(2058), [anon_sym_mutable] = ACTIONS(2058), [anon_sym_constexpr] = ACTIONS(2058), [anon_sym_signed] = ACTIONS(2058), [anon_sym_unsigned] = ACTIONS(2058), [anon_sym_long] = ACTIONS(2058), [anon_sym_short] = ACTIONS(2058), [sym_primitive_type] = ACTIONS(2058), [anon_sym_enum] = ACTIONS(2058), [anon_sym_class] = ACTIONS(2058), [anon_sym_struct] = ACTIONS(2058), [anon_sym_union] = ACTIONS(2058), [anon_sym_if] = ACTIONS(2058), [anon_sym_switch] = ACTIONS(2058), [anon_sym_case] = ACTIONS(2058), [anon_sym_default] = ACTIONS(2058), [anon_sym_while] = ACTIONS(2058), [anon_sym_do] = ACTIONS(2058), [anon_sym_for] = ACTIONS(2058), [anon_sym_return] = ACTIONS(2058), [anon_sym_break] = ACTIONS(2058), [anon_sym_continue] = ACTIONS(2058), [anon_sym_goto] = ACTIONS(2058), [anon_sym_DASH_DASH] = ACTIONS(2060), [anon_sym_PLUS_PLUS] = ACTIONS(2060), [anon_sym_sizeof] = ACTIONS(2058), [sym_number_literal] = ACTIONS(2060), [anon_sym_L_SQUOTE] = ACTIONS(2060), [anon_sym_u_SQUOTE] = ACTIONS(2060), [anon_sym_U_SQUOTE] = ACTIONS(2060), [anon_sym_u8_SQUOTE] = ACTIONS(2060), [anon_sym_SQUOTE] = ACTIONS(2060), [anon_sym_L_DQUOTE] = ACTIONS(2060), [anon_sym_u_DQUOTE] = ACTIONS(2060), [anon_sym_U_DQUOTE] = ACTIONS(2060), [anon_sym_u8_DQUOTE] = ACTIONS(2060), [anon_sym_DQUOTE] = ACTIONS(2060), [sym_true] = ACTIONS(2058), [sym_false] = ACTIONS(2058), [sym_null] = ACTIONS(2058), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2058), [anon_sym_virtual] = ACTIONS(2058), [anon_sym_explicit] = ACTIONS(2058), [sym_auto] = ACTIONS(2058), [anon_sym_typename] = ACTIONS(2058), [anon_sym_template] = ACTIONS(2058), [anon_sym_operator] = ACTIONS(2058), [anon_sym_delete] = ACTIONS(2058), [anon_sym_throw] = ACTIONS(2058), [anon_sym_namespace] = ACTIONS(2058), [anon_sym_using] = ACTIONS(2058), [anon_sym_static_assert] = ACTIONS(2058), [anon_sym_co_return] = ACTIONS(2058), [anon_sym_co_yield] = ACTIONS(2058), [anon_sym_try] = ACTIONS(2058), [anon_sym_co_await] = ACTIONS(2058), [anon_sym_new] = ACTIONS(2058), [sym_this] = ACTIONS(2058), [sym_nullptr] = ACTIONS(2058), [sym_raw_string_literal] = ACTIONS(2060), }, [663] = { [sym_identifier] = ACTIONS(2054), [aux_sym_preproc_include_token1] = ACTIONS(2054), [aux_sym_preproc_def_token1] = ACTIONS(2054), [aux_sym_preproc_if_token1] = ACTIONS(2054), [aux_sym_preproc_if_token2] = ACTIONS(2054), [aux_sym_preproc_ifdef_token1] = ACTIONS(2054), [aux_sym_preproc_ifdef_token2] = ACTIONS(2054), [sym_preproc_directive] = ACTIONS(2054), [anon_sym_LPAREN2] = ACTIONS(2056), [anon_sym_BANG] = ACTIONS(2056), [anon_sym_TILDE] = ACTIONS(2056), [anon_sym_DASH] = ACTIONS(2054), [anon_sym_PLUS] = ACTIONS(2054), [anon_sym_STAR] = ACTIONS(2056), [anon_sym_AMP_AMP] = ACTIONS(2056), [anon_sym_AMP] = ACTIONS(2054), [anon_sym_SEMI] = ACTIONS(2056), [anon_sym_typedef] = ACTIONS(2054), [anon_sym_extern] = ACTIONS(2054), [anon_sym___attribute__] = ACTIONS(2054), [anon_sym_COLON_COLON] = ACTIONS(2056), [anon_sym_LBRACK_LBRACK] = ACTIONS(2056), [anon_sym___declspec] = ACTIONS(2054), [anon_sym___based] = ACTIONS(2054), [anon_sym___cdecl] = ACTIONS(2054), [anon_sym___clrcall] = ACTIONS(2054), [anon_sym___stdcall] = ACTIONS(2054), [anon_sym___fastcall] = ACTIONS(2054), [anon_sym___thiscall] = ACTIONS(2054), [anon_sym___vectorcall] = ACTIONS(2054), [anon_sym_LBRACE] = ACTIONS(2056), [anon_sym_LBRACK] = ACTIONS(2054), [anon_sym_static] = ACTIONS(2054), [anon_sym_register] = ACTIONS(2054), [anon_sym_inline] = ACTIONS(2054), [anon_sym_thread_local] = ACTIONS(2054), [anon_sym_const] = ACTIONS(2054), [anon_sym_volatile] = ACTIONS(2054), [anon_sym_restrict] = ACTIONS(2054), [anon_sym__Atomic] = ACTIONS(2054), [anon_sym_mutable] = ACTIONS(2054), [anon_sym_constexpr] = ACTIONS(2054), [anon_sym_signed] = ACTIONS(2054), [anon_sym_unsigned] = ACTIONS(2054), [anon_sym_long] = ACTIONS(2054), [anon_sym_short] = ACTIONS(2054), [sym_primitive_type] = ACTIONS(2054), [anon_sym_enum] = ACTIONS(2054), [anon_sym_class] = ACTIONS(2054), [anon_sym_struct] = ACTIONS(2054), [anon_sym_union] = ACTIONS(2054), [anon_sym_if] = ACTIONS(2054), [anon_sym_switch] = ACTIONS(2054), [anon_sym_case] = ACTIONS(2054), [anon_sym_default] = ACTIONS(2054), [anon_sym_while] = ACTIONS(2054), [anon_sym_do] = ACTIONS(2054), [anon_sym_for] = ACTIONS(2054), [anon_sym_return] = ACTIONS(2054), [anon_sym_break] = ACTIONS(2054), [anon_sym_continue] = ACTIONS(2054), [anon_sym_goto] = ACTIONS(2054), [anon_sym_DASH_DASH] = ACTIONS(2056), [anon_sym_PLUS_PLUS] = ACTIONS(2056), [anon_sym_sizeof] = ACTIONS(2054), [sym_number_literal] = ACTIONS(2056), [anon_sym_L_SQUOTE] = ACTIONS(2056), [anon_sym_u_SQUOTE] = ACTIONS(2056), [anon_sym_U_SQUOTE] = ACTIONS(2056), [anon_sym_u8_SQUOTE] = ACTIONS(2056), [anon_sym_SQUOTE] = ACTIONS(2056), [anon_sym_L_DQUOTE] = ACTIONS(2056), [anon_sym_u_DQUOTE] = ACTIONS(2056), [anon_sym_U_DQUOTE] = ACTIONS(2056), [anon_sym_u8_DQUOTE] = ACTIONS(2056), [anon_sym_DQUOTE] = ACTIONS(2056), [sym_true] = ACTIONS(2054), [sym_false] = ACTIONS(2054), [sym_null] = ACTIONS(2054), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2054), [anon_sym_virtual] = ACTIONS(2054), [anon_sym_explicit] = ACTIONS(2054), [sym_auto] = ACTIONS(2054), [anon_sym_typename] = ACTIONS(2054), [anon_sym_template] = ACTIONS(2054), [anon_sym_operator] = ACTIONS(2054), [anon_sym_delete] = ACTIONS(2054), [anon_sym_throw] = ACTIONS(2054), [anon_sym_namespace] = ACTIONS(2054), [anon_sym_using] = ACTIONS(2054), [anon_sym_static_assert] = ACTIONS(2054), [anon_sym_co_return] = ACTIONS(2054), [anon_sym_co_yield] = ACTIONS(2054), [anon_sym_try] = ACTIONS(2054), [anon_sym_co_await] = ACTIONS(2054), [anon_sym_new] = ACTIONS(2054), [sym_this] = ACTIONS(2054), [sym_nullptr] = ACTIONS(2054), [sym_raw_string_literal] = ACTIONS(2056), }, [664] = { [sym_identifier] = ACTIONS(2050), [aux_sym_preproc_include_token1] = ACTIONS(2050), [aux_sym_preproc_def_token1] = ACTIONS(2050), [aux_sym_preproc_if_token1] = ACTIONS(2050), [aux_sym_preproc_if_token2] = ACTIONS(2050), [aux_sym_preproc_ifdef_token1] = ACTIONS(2050), [aux_sym_preproc_ifdef_token2] = ACTIONS(2050), [sym_preproc_directive] = ACTIONS(2050), [anon_sym_LPAREN2] = ACTIONS(2052), [anon_sym_BANG] = ACTIONS(2052), [anon_sym_TILDE] = ACTIONS(2052), [anon_sym_DASH] = ACTIONS(2050), [anon_sym_PLUS] = ACTIONS(2050), [anon_sym_STAR] = ACTIONS(2052), [anon_sym_AMP_AMP] = ACTIONS(2052), [anon_sym_AMP] = ACTIONS(2050), [anon_sym_SEMI] = ACTIONS(2052), [anon_sym_typedef] = ACTIONS(2050), [anon_sym_extern] = ACTIONS(2050), [anon_sym___attribute__] = ACTIONS(2050), [anon_sym_COLON_COLON] = ACTIONS(2052), [anon_sym_LBRACK_LBRACK] = ACTIONS(2052), [anon_sym___declspec] = ACTIONS(2050), [anon_sym___based] = ACTIONS(2050), [anon_sym___cdecl] = ACTIONS(2050), [anon_sym___clrcall] = ACTIONS(2050), [anon_sym___stdcall] = ACTIONS(2050), [anon_sym___fastcall] = ACTIONS(2050), [anon_sym___thiscall] = ACTIONS(2050), [anon_sym___vectorcall] = ACTIONS(2050), [anon_sym_LBRACE] = ACTIONS(2052), [anon_sym_LBRACK] = ACTIONS(2050), [anon_sym_static] = ACTIONS(2050), [anon_sym_register] = ACTIONS(2050), [anon_sym_inline] = ACTIONS(2050), [anon_sym_thread_local] = ACTIONS(2050), [anon_sym_const] = ACTIONS(2050), [anon_sym_volatile] = ACTIONS(2050), [anon_sym_restrict] = ACTIONS(2050), [anon_sym__Atomic] = ACTIONS(2050), [anon_sym_mutable] = ACTIONS(2050), [anon_sym_constexpr] = ACTIONS(2050), [anon_sym_signed] = ACTIONS(2050), [anon_sym_unsigned] = ACTIONS(2050), [anon_sym_long] = ACTIONS(2050), [anon_sym_short] = ACTIONS(2050), [sym_primitive_type] = ACTIONS(2050), [anon_sym_enum] = ACTIONS(2050), [anon_sym_class] = ACTIONS(2050), [anon_sym_struct] = ACTIONS(2050), [anon_sym_union] = ACTIONS(2050), [anon_sym_if] = ACTIONS(2050), [anon_sym_switch] = ACTIONS(2050), [anon_sym_case] = ACTIONS(2050), [anon_sym_default] = ACTIONS(2050), [anon_sym_while] = ACTIONS(2050), [anon_sym_do] = ACTIONS(2050), [anon_sym_for] = ACTIONS(2050), [anon_sym_return] = ACTIONS(2050), [anon_sym_break] = ACTIONS(2050), [anon_sym_continue] = ACTIONS(2050), [anon_sym_goto] = ACTIONS(2050), [anon_sym_DASH_DASH] = ACTIONS(2052), [anon_sym_PLUS_PLUS] = ACTIONS(2052), [anon_sym_sizeof] = ACTIONS(2050), [sym_number_literal] = ACTIONS(2052), [anon_sym_L_SQUOTE] = ACTIONS(2052), [anon_sym_u_SQUOTE] = ACTIONS(2052), [anon_sym_U_SQUOTE] = ACTIONS(2052), [anon_sym_u8_SQUOTE] = ACTIONS(2052), [anon_sym_SQUOTE] = ACTIONS(2052), [anon_sym_L_DQUOTE] = ACTIONS(2052), [anon_sym_u_DQUOTE] = ACTIONS(2052), [anon_sym_U_DQUOTE] = ACTIONS(2052), [anon_sym_u8_DQUOTE] = ACTIONS(2052), [anon_sym_DQUOTE] = ACTIONS(2052), [sym_true] = ACTIONS(2050), [sym_false] = ACTIONS(2050), [sym_null] = ACTIONS(2050), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2050), [anon_sym_virtual] = ACTIONS(2050), [anon_sym_explicit] = ACTIONS(2050), [sym_auto] = ACTIONS(2050), [anon_sym_typename] = ACTIONS(2050), [anon_sym_template] = ACTIONS(2050), [anon_sym_operator] = ACTIONS(2050), [anon_sym_delete] = ACTIONS(2050), [anon_sym_throw] = ACTIONS(2050), [anon_sym_namespace] = ACTIONS(2050), [anon_sym_using] = ACTIONS(2050), [anon_sym_static_assert] = ACTIONS(2050), [anon_sym_co_return] = ACTIONS(2050), [anon_sym_co_yield] = ACTIONS(2050), [anon_sym_try] = ACTIONS(2050), [anon_sym_co_await] = ACTIONS(2050), [anon_sym_new] = ACTIONS(2050), [sym_this] = ACTIONS(2050), [sym_nullptr] = ACTIONS(2050), [sym_raw_string_literal] = ACTIONS(2052), }, [665] = { [sym_identifier] = ACTIONS(2102), [aux_sym_preproc_include_token1] = ACTIONS(2102), [aux_sym_preproc_def_token1] = ACTIONS(2102), [aux_sym_preproc_if_token1] = ACTIONS(2102), [aux_sym_preproc_if_token2] = ACTIONS(2102), [aux_sym_preproc_ifdef_token1] = ACTIONS(2102), [aux_sym_preproc_ifdef_token2] = ACTIONS(2102), [sym_preproc_directive] = ACTIONS(2102), [anon_sym_LPAREN2] = ACTIONS(2104), [anon_sym_BANG] = ACTIONS(2104), [anon_sym_TILDE] = ACTIONS(2104), [anon_sym_DASH] = ACTIONS(2102), [anon_sym_PLUS] = ACTIONS(2102), [anon_sym_STAR] = ACTIONS(2104), [anon_sym_AMP_AMP] = ACTIONS(2104), [anon_sym_AMP] = ACTIONS(2102), [anon_sym_SEMI] = ACTIONS(2104), [anon_sym_typedef] = ACTIONS(2102), [anon_sym_extern] = ACTIONS(2102), [anon_sym___attribute__] = ACTIONS(2102), [anon_sym_COLON_COLON] = ACTIONS(2104), [anon_sym_LBRACK_LBRACK] = ACTIONS(2104), [anon_sym___declspec] = ACTIONS(2102), [anon_sym___based] = ACTIONS(2102), [anon_sym___cdecl] = ACTIONS(2102), [anon_sym___clrcall] = ACTIONS(2102), [anon_sym___stdcall] = ACTIONS(2102), [anon_sym___fastcall] = ACTIONS(2102), [anon_sym___thiscall] = ACTIONS(2102), [anon_sym___vectorcall] = ACTIONS(2102), [anon_sym_LBRACE] = ACTIONS(2104), [anon_sym_LBRACK] = ACTIONS(2102), [anon_sym_static] = ACTIONS(2102), [anon_sym_register] = ACTIONS(2102), [anon_sym_inline] = ACTIONS(2102), [anon_sym_thread_local] = ACTIONS(2102), [anon_sym_const] = ACTIONS(2102), [anon_sym_volatile] = ACTIONS(2102), [anon_sym_restrict] = ACTIONS(2102), [anon_sym__Atomic] = ACTIONS(2102), [anon_sym_mutable] = ACTIONS(2102), [anon_sym_constexpr] = ACTIONS(2102), [anon_sym_signed] = ACTIONS(2102), [anon_sym_unsigned] = ACTIONS(2102), [anon_sym_long] = ACTIONS(2102), [anon_sym_short] = ACTIONS(2102), [sym_primitive_type] = ACTIONS(2102), [anon_sym_enum] = ACTIONS(2102), [anon_sym_class] = ACTIONS(2102), [anon_sym_struct] = ACTIONS(2102), [anon_sym_union] = ACTIONS(2102), [anon_sym_if] = ACTIONS(2102), [anon_sym_switch] = ACTIONS(2102), [anon_sym_case] = ACTIONS(2102), [anon_sym_default] = ACTIONS(2102), [anon_sym_while] = ACTIONS(2102), [anon_sym_do] = ACTIONS(2102), [anon_sym_for] = ACTIONS(2102), [anon_sym_return] = ACTIONS(2102), [anon_sym_break] = ACTIONS(2102), [anon_sym_continue] = ACTIONS(2102), [anon_sym_goto] = ACTIONS(2102), [anon_sym_DASH_DASH] = ACTIONS(2104), [anon_sym_PLUS_PLUS] = ACTIONS(2104), [anon_sym_sizeof] = ACTIONS(2102), [sym_number_literal] = ACTIONS(2104), [anon_sym_L_SQUOTE] = ACTIONS(2104), [anon_sym_u_SQUOTE] = ACTIONS(2104), [anon_sym_U_SQUOTE] = ACTIONS(2104), [anon_sym_u8_SQUOTE] = ACTIONS(2104), [anon_sym_SQUOTE] = ACTIONS(2104), [anon_sym_L_DQUOTE] = ACTIONS(2104), [anon_sym_u_DQUOTE] = ACTIONS(2104), [anon_sym_U_DQUOTE] = ACTIONS(2104), [anon_sym_u8_DQUOTE] = ACTIONS(2104), [anon_sym_DQUOTE] = ACTIONS(2104), [sym_true] = ACTIONS(2102), [sym_false] = ACTIONS(2102), [sym_null] = ACTIONS(2102), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2102), [anon_sym_virtual] = ACTIONS(2102), [anon_sym_explicit] = ACTIONS(2102), [sym_auto] = ACTIONS(2102), [anon_sym_typename] = ACTIONS(2102), [anon_sym_template] = ACTIONS(2102), [anon_sym_operator] = ACTIONS(2102), [anon_sym_delete] = ACTIONS(2102), [anon_sym_throw] = ACTIONS(2102), [anon_sym_namespace] = ACTIONS(2102), [anon_sym_using] = ACTIONS(2102), [anon_sym_static_assert] = ACTIONS(2102), [anon_sym_co_return] = ACTIONS(2102), [anon_sym_co_yield] = ACTIONS(2102), [anon_sym_try] = ACTIONS(2102), [anon_sym_co_await] = ACTIONS(2102), [anon_sym_new] = ACTIONS(2102), [sym_this] = ACTIONS(2102), [sym_nullptr] = ACTIONS(2102), [sym_raw_string_literal] = ACTIONS(2104), }, [666] = { [sym_identifier] = ACTIONS(2106), [aux_sym_preproc_include_token1] = ACTIONS(2106), [aux_sym_preproc_def_token1] = ACTIONS(2106), [aux_sym_preproc_if_token1] = ACTIONS(2106), [aux_sym_preproc_if_token2] = ACTIONS(2106), [aux_sym_preproc_ifdef_token1] = ACTIONS(2106), [aux_sym_preproc_ifdef_token2] = ACTIONS(2106), [sym_preproc_directive] = ACTIONS(2106), [anon_sym_LPAREN2] = ACTIONS(2108), [anon_sym_BANG] = ACTIONS(2108), [anon_sym_TILDE] = ACTIONS(2108), [anon_sym_DASH] = ACTIONS(2106), [anon_sym_PLUS] = ACTIONS(2106), [anon_sym_STAR] = ACTIONS(2108), [anon_sym_AMP_AMP] = ACTIONS(2108), [anon_sym_AMP] = ACTIONS(2106), [anon_sym_SEMI] = ACTIONS(2108), [anon_sym_typedef] = ACTIONS(2106), [anon_sym_extern] = ACTIONS(2106), [anon_sym___attribute__] = ACTIONS(2106), [anon_sym_COLON_COLON] = ACTIONS(2108), [anon_sym_LBRACK_LBRACK] = ACTIONS(2108), [anon_sym___declspec] = ACTIONS(2106), [anon_sym___based] = ACTIONS(2106), [anon_sym___cdecl] = ACTIONS(2106), [anon_sym___clrcall] = ACTIONS(2106), [anon_sym___stdcall] = ACTIONS(2106), [anon_sym___fastcall] = ACTIONS(2106), [anon_sym___thiscall] = ACTIONS(2106), [anon_sym___vectorcall] = ACTIONS(2106), [anon_sym_LBRACE] = ACTIONS(2108), [anon_sym_LBRACK] = ACTIONS(2106), [anon_sym_static] = ACTIONS(2106), [anon_sym_register] = ACTIONS(2106), [anon_sym_inline] = ACTIONS(2106), [anon_sym_thread_local] = ACTIONS(2106), [anon_sym_const] = ACTIONS(2106), [anon_sym_volatile] = ACTIONS(2106), [anon_sym_restrict] = ACTIONS(2106), [anon_sym__Atomic] = ACTIONS(2106), [anon_sym_mutable] = ACTIONS(2106), [anon_sym_constexpr] = ACTIONS(2106), [anon_sym_signed] = ACTIONS(2106), [anon_sym_unsigned] = ACTIONS(2106), [anon_sym_long] = ACTIONS(2106), [anon_sym_short] = ACTIONS(2106), [sym_primitive_type] = ACTIONS(2106), [anon_sym_enum] = ACTIONS(2106), [anon_sym_class] = ACTIONS(2106), [anon_sym_struct] = ACTIONS(2106), [anon_sym_union] = ACTIONS(2106), [anon_sym_if] = ACTIONS(2106), [anon_sym_switch] = ACTIONS(2106), [anon_sym_case] = ACTIONS(2106), [anon_sym_default] = ACTIONS(2106), [anon_sym_while] = ACTIONS(2106), [anon_sym_do] = ACTIONS(2106), [anon_sym_for] = ACTIONS(2106), [anon_sym_return] = ACTIONS(2106), [anon_sym_break] = ACTIONS(2106), [anon_sym_continue] = ACTIONS(2106), [anon_sym_goto] = ACTIONS(2106), [anon_sym_DASH_DASH] = ACTIONS(2108), [anon_sym_PLUS_PLUS] = ACTIONS(2108), [anon_sym_sizeof] = ACTIONS(2106), [sym_number_literal] = ACTIONS(2108), [anon_sym_L_SQUOTE] = ACTIONS(2108), [anon_sym_u_SQUOTE] = ACTIONS(2108), [anon_sym_U_SQUOTE] = ACTIONS(2108), [anon_sym_u8_SQUOTE] = ACTIONS(2108), [anon_sym_SQUOTE] = ACTIONS(2108), [anon_sym_L_DQUOTE] = ACTIONS(2108), [anon_sym_u_DQUOTE] = ACTIONS(2108), [anon_sym_U_DQUOTE] = ACTIONS(2108), [anon_sym_u8_DQUOTE] = ACTIONS(2108), [anon_sym_DQUOTE] = ACTIONS(2108), [sym_true] = ACTIONS(2106), [sym_false] = ACTIONS(2106), [sym_null] = ACTIONS(2106), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2106), [anon_sym_virtual] = ACTIONS(2106), [anon_sym_explicit] = ACTIONS(2106), [sym_auto] = ACTIONS(2106), [anon_sym_typename] = ACTIONS(2106), [anon_sym_template] = ACTIONS(2106), [anon_sym_operator] = ACTIONS(2106), [anon_sym_delete] = ACTIONS(2106), [anon_sym_throw] = ACTIONS(2106), [anon_sym_namespace] = ACTIONS(2106), [anon_sym_using] = ACTIONS(2106), [anon_sym_static_assert] = ACTIONS(2106), [anon_sym_co_return] = ACTIONS(2106), [anon_sym_co_yield] = ACTIONS(2106), [anon_sym_try] = ACTIONS(2106), [anon_sym_co_await] = ACTIONS(2106), [anon_sym_new] = ACTIONS(2106), [sym_this] = ACTIONS(2106), [sym_nullptr] = ACTIONS(2106), [sym_raw_string_literal] = ACTIONS(2108), }, [667] = { [sym_identifier] = ACTIONS(2110), [aux_sym_preproc_include_token1] = ACTIONS(2110), [aux_sym_preproc_def_token1] = ACTIONS(2110), [aux_sym_preproc_if_token1] = ACTIONS(2110), [aux_sym_preproc_if_token2] = ACTIONS(2110), [aux_sym_preproc_ifdef_token1] = ACTIONS(2110), [aux_sym_preproc_ifdef_token2] = ACTIONS(2110), [sym_preproc_directive] = ACTIONS(2110), [anon_sym_LPAREN2] = ACTIONS(2112), [anon_sym_BANG] = ACTIONS(2112), [anon_sym_TILDE] = ACTIONS(2112), [anon_sym_DASH] = ACTIONS(2110), [anon_sym_PLUS] = ACTIONS(2110), [anon_sym_STAR] = ACTIONS(2112), [anon_sym_AMP_AMP] = ACTIONS(2112), [anon_sym_AMP] = ACTIONS(2110), [anon_sym_SEMI] = ACTIONS(2112), [anon_sym_typedef] = ACTIONS(2110), [anon_sym_extern] = ACTIONS(2110), [anon_sym___attribute__] = ACTIONS(2110), [anon_sym_COLON_COLON] = ACTIONS(2112), [anon_sym_LBRACK_LBRACK] = ACTIONS(2112), [anon_sym___declspec] = ACTIONS(2110), [anon_sym___based] = ACTIONS(2110), [anon_sym___cdecl] = ACTIONS(2110), [anon_sym___clrcall] = ACTIONS(2110), [anon_sym___stdcall] = ACTIONS(2110), [anon_sym___fastcall] = ACTIONS(2110), [anon_sym___thiscall] = ACTIONS(2110), [anon_sym___vectorcall] = ACTIONS(2110), [anon_sym_LBRACE] = ACTIONS(2112), [anon_sym_LBRACK] = ACTIONS(2110), [anon_sym_static] = ACTIONS(2110), [anon_sym_register] = ACTIONS(2110), [anon_sym_inline] = ACTIONS(2110), [anon_sym_thread_local] = ACTIONS(2110), [anon_sym_const] = ACTIONS(2110), [anon_sym_volatile] = ACTIONS(2110), [anon_sym_restrict] = ACTIONS(2110), [anon_sym__Atomic] = ACTIONS(2110), [anon_sym_mutable] = ACTIONS(2110), [anon_sym_constexpr] = ACTIONS(2110), [anon_sym_signed] = ACTIONS(2110), [anon_sym_unsigned] = ACTIONS(2110), [anon_sym_long] = ACTIONS(2110), [anon_sym_short] = ACTIONS(2110), [sym_primitive_type] = ACTIONS(2110), [anon_sym_enum] = ACTIONS(2110), [anon_sym_class] = ACTIONS(2110), [anon_sym_struct] = ACTIONS(2110), [anon_sym_union] = ACTIONS(2110), [anon_sym_if] = ACTIONS(2110), [anon_sym_switch] = ACTIONS(2110), [anon_sym_case] = ACTIONS(2110), [anon_sym_default] = ACTIONS(2110), [anon_sym_while] = ACTIONS(2110), [anon_sym_do] = ACTIONS(2110), [anon_sym_for] = ACTIONS(2110), [anon_sym_return] = ACTIONS(2110), [anon_sym_break] = ACTIONS(2110), [anon_sym_continue] = ACTIONS(2110), [anon_sym_goto] = ACTIONS(2110), [anon_sym_DASH_DASH] = ACTIONS(2112), [anon_sym_PLUS_PLUS] = ACTIONS(2112), [anon_sym_sizeof] = ACTIONS(2110), [sym_number_literal] = ACTIONS(2112), [anon_sym_L_SQUOTE] = ACTIONS(2112), [anon_sym_u_SQUOTE] = ACTIONS(2112), [anon_sym_U_SQUOTE] = ACTIONS(2112), [anon_sym_u8_SQUOTE] = ACTIONS(2112), [anon_sym_SQUOTE] = ACTIONS(2112), [anon_sym_L_DQUOTE] = ACTIONS(2112), [anon_sym_u_DQUOTE] = ACTIONS(2112), [anon_sym_U_DQUOTE] = ACTIONS(2112), [anon_sym_u8_DQUOTE] = ACTIONS(2112), [anon_sym_DQUOTE] = ACTIONS(2112), [sym_true] = ACTIONS(2110), [sym_false] = ACTIONS(2110), [sym_null] = ACTIONS(2110), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2110), [anon_sym_virtual] = ACTIONS(2110), [anon_sym_explicit] = ACTIONS(2110), [sym_auto] = ACTIONS(2110), [anon_sym_typename] = ACTIONS(2110), [anon_sym_template] = ACTIONS(2110), [anon_sym_operator] = ACTIONS(2110), [anon_sym_delete] = ACTIONS(2110), [anon_sym_throw] = ACTIONS(2110), [anon_sym_namespace] = ACTIONS(2110), [anon_sym_using] = ACTIONS(2110), [anon_sym_static_assert] = ACTIONS(2110), [anon_sym_co_return] = ACTIONS(2110), [anon_sym_co_yield] = ACTIONS(2110), [anon_sym_try] = ACTIONS(2110), [anon_sym_co_await] = ACTIONS(2110), [anon_sym_new] = ACTIONS(2110), [sym_this] = ACTIONS(2110), [sym_nullptr] = ACTIONS(2110), [sym_raw_string_literal] = ACTIONS(2112), }, [668] = { [sym_identifier] = ACTIONS(2126), [aux_sym_preproc_include_token1] = ACTIONS(2126), [aux_sym_preproc_def_token1] = ACTIONS(2126), [aux_sym_preproc_if_token1] = ACTIONS(2126), [aux_sym_preproc_if_token2] = ACTIONS(2126), [aux_sym_preproc_ifdef_token1] = ACTIONS(2126), [aux_sym_preproc_ifdef_token2] = ACTIONS(2126), [sym_preproc_directive] = ACTIONS(2126), [anon_sym_LPAREN2] = ACTIONS(2128), [anon_sym_BANG] = ACTIONS(2128), [anon_sym_TILDE] = ACTIONS(2128), [anon_sym_DASH] = ACTIONS(2126), [anon_sym_PLUS] = ACTIONS(2126), [anon_sym_STAR] = ACTIONS(2128), [anon_sym_AMP_AMP] = ACTIONS(2128), [anon_sym_AMP] = ACTIONS(2126), [anon_sym_SEMI] = ACTIONS(2128), [anon_sym_typedef] = ACTIONS(2126), [anon_sym_extern] = ACTIONS(2126), [anon_sym___attribute__] = ACTIONS(2126), [anon_sym_COLON_COLON] = ACTIONS(2128), [anon_sym_LBRACK_LBRACK] = ACTIONS(2128), [anon_sym___declspec] = ACTIONS(2126), [anon_sym___based] = ACTIONS(2126), [anon_sym___cdecl] = ACTIONS(2126), [anon_sym___clrcall] = ACTIONS(2126), [anon_sym___stdcall] = ACTIONS(2126), [anon_sym___fastcall] = ACTIONS(2126), [anon_sym___thiscall] = ACTIONS(2126), [anon_sym___vectorcall] = ACTIONS(2126), [anon_sym_LBRACE] = ACTIONS(2128), [anon_sym_LBRACK] = ACTIONS(2126), [anon_sym_static] = ACTIONS(2126), [anon_sym_register] = ACTIONS(2126), [anon_sym_inline] = ACTIONS(2126), [anon_sym_thread_local] = ACTIONS(2126), [anon_sym_const] = ACTIONS(2126), [anon_sym_volatile] = ACTIONS(2126), [anon_sym_restrict] = ACTIONS(2126), [anon_sym__Atomic] = ACTIONS(2126), [anon_sym_mutable] = ACTIONS(2126), [anon_sym_constexpr] = ACTIONS(2126), [anon_sym_signed] = ACTIONS(2126), [anon_sym_unsigned] = ACTIONS(2126), [anon_sym_long] = ACTIONS(2126), [anon_sym_short] = ACTIONS(2126), [sym_primitive_type] = ACTIONS(2126), [anon_sym_enum] = ACTIONS(2126), [anon_sym_class] = ACTIONS(2126), [anon_sym_struct] = ACTIONS(2126), [anon_sym_union] = ACTIONS(2126), [anon_sym_if] = ACTIONS(2126), [anon_sym_switch] = ACTIONS(2126), [anon_sym_case] = ACTIONS(2126), [anon_sym_default] = ACTIONS(2126), [anon_sym_while] = ACTIONS(2126), [anon_sym_do] = ACTIONS(2126), [anon_sym_for] = ACTIONS(2126), [anon_sym_return] = ACTIONS(2126), [anon_sym_break] = ACTIONS(2126), [anon_sym_continue] = ACTIONS(2126), [anon_sym_goto] = ACTIONS(2126), [anon_sym_DASH_DASH] = ACTIONS(2128), [anon_sym_PLUS_PLUS] = ACTIONS(2128), [anon_sym_sizeof] = ACTIONS(2126), [sym_number_literal] = ACTIONS(2128), [anon_sym_L_SQUOTE] = ACTIONS(2128), [anon_sym_u_SQUOTE] = ACTIONS(2128), [anon_sym_U_SQUOTE] = ACTIONS(2128), [anon_sym_u8_SQUOTE] = ACTIONS(2128), [anon_sym_SQUOTE] = ACTIONS(2128), [anon_sym_L_DQUOTE] = ACTIONS(2128), [anon_sym_u_DQUOTE] = ACTIONS(2128), [anon_sym_U_DQUOTE] = ACTIONS(2128), [anon_sym_u8_DQUOTE] = ACTIONS(2128), [anon_sym_DQUOTE] = ACTIONS(2128), [sym_true] = ACTIONS(2126), [sym_false] = ACTIONS(2126), [sym_null] = ACTIONS(2126), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2126), [anon_sym_virtual] = ACTIONS(2126), [anon_sym_explicit] = ACTIONS(2126), [sym_auto] = ACTIONS(2126), [anon_sym_typename] = ACTIONS(2126), [anon_sym_template] = ACTIONS(2126), [anon_sym_operator] = ACTIONS(2126), [anon_sym_delete] = ACTIONS(2126), [anon_sym_throw] = ACTIONS(2126), [anon_sym_namespace] = ACTIONS(2126), [anon_sym_using] = ACTIONS(2126), [anon_sym_static_assert] = ACTIONS(2126), [anon_sym_co_return] = ACTIONS(2126), [anon_sym_co_yield] = ACTIONS(2126), [anon_sym_try] = ACTIONS(2126), [anon_sym_co_await] = ACTIONS(2126), [anon_sym_new] = ACTIONS(2126), [sym_this] = ACTIONS(2126), [sym_nullptr] = ACTIONS(2126), [sym_raw_string_literal] = ACTIONS(2128), }, [669] = { [ts_builtin_sym_end] = ACTIONS(2188), [sym_identifier] = ACTIONS(2186), [aux_sym_preproc_include_token1] = ACTIONS(2186), [aux_sym_preproc_def_token1] = ACTIONS(2186), [aux_sym_preproc_if_token1] = ACTIONS(2186), [aux_sym_preproc_ifdef_token1] = ACTIONS(2186), [aux_sym_preproc_ifdef_token2] = ACTIONS(2186), [sym_preproc_directive] = ACTIONS(2186), [anon_sym_LPAREN2] = ACTIONS(2188), [anon_sym_BANG] = ACTIONS(2188), [anon_sym_TILDE] = ACTIONS(2188), [anon_sym_DASH] = ACTIONS(2186), [anon_sym_PLUS] = ACTIONS(2186), [anon_sym_STAR] = ACTIONS(2188), [anon_sym_AMP_AMP] = ACTIONS(2188), [anon_sym_AMP] = ACTIONS(2186), [anon_sym_SEMI] = ACTIONS(2188), [anon_sym_typedef] = ACTIONS(2186), [anon_sym_extern] = ACTIONS(2186), [anon_sym___attribute__] = ACTIONS(2186), [anon_sym_COLON_COLON] = ACTIONS(2188), [anon_sym_LBRACK_LBRACK] = ACTIONS(2188), [anon_sym___declspec] = ACTIONS(2186), [anon_sym___based] = ACTIONS(2186), [anon_sym___cdecl] = ACTIONS(2186), [anon_sym___clrcall] = ACTIONS(2186), [anon_sym___stdcall] = ACTIONS(2186), [anon_sym___fastcall] = ACTIONS(2186), [anon_sym___thiscall] = ACTIONS(2186), [anon_sym___vectorcall] = ACTIONS(2186), [anon_sym_LBRACE] = ACTIONS(2188), [anon_sym_LBRACK] = ACTIONS(2186), [anon_sym_static] = ACTIONS(2186), [anon_sym_register] = ACTIONS(2186), [anon_sym_inline] = ACTIONS(2186), [anon_sym_thread_local] = ACTIONS(2186), [anon_sym_const] = ACTIONS(2186), [anon_sym_volatile] = ACTIONS(2186), [anon_sym_restrict] = ACTIONS(2186), [anon_sym__Atomic] = ACTIONS(2186), [anon_sym_mutable] = ACTIONS(2186), [anon_sym_constexpr] = ACTIONS(2186), [anon_sym_signed] = ACTIONS(2186), [anon_sym_unsigned] = ACTIONS(2186), [anon_sym_long] = ACTIONS(2186), [anon_sym_short] = ACTIONS(2186), [sym_primitive_type] = ACTIONS(2186), [anon_sym_enum] = ACTIONS(2186), [anon_sym_class] = ACTIONS(2186), [anon_sym_struct] = ACTIONS(2186), [anon_sym_union] = ACTIONS(2186), [anon_sym_if] = ACTIONS(2186), [anon_sym_switch] = ACTIONS(2186), [anon_sym_case] = ACTIONS(2186), [anon_sym_default] = ACTIONS(2186), [anon_sym_while] = ACTIONS(2186), [anon_sym_do] = ACTIONS(2186), [anon_sym_for] = ACTIONS(2186), [anon_sym_return] = ACTIONS(2186), [anon_sym_break] = ACTIONS(2186), [anon_sym_continue] = ACTIONS(2186), [anon_sym_goto] = ACTIONS(2186), [anon_sym_DASH_DASH] = ACTIONS(2188), [anon_sym_PLUS_PLUS] = ACTIONS(2188), [anon_sym_sizeof] = ACTIONS(2186), [sym_number_literal] = ACTIONS(2188), [anon_sym_L_SQUOTE] = ACTIONS(2188), [anon_sym_u_SQUOTE] = ACTIONS(2188), [anon_sym_U_SQUOTE] = ACTIONS(2188), [anon_sym_u8_SQUOTE] = ACTIONS(2188), [anon_sym_SQUOTE] = ACTIONS(2188), [anon_sym_L_DQUOTE] = ACTIONS(2188), [anon_sym_u_DQUOTE] = ACTIONS(2188), [anon_sym_U_DQUOTE] = ACTIONS(2188), [anon_sym_u8_DQUOTE] = ACTIONS(2188), [anon_sym_DQUOTE] = ACTIONS(2188), [sym_true] = ACTIONS(2186), [sym_false] = ACTIONS(2186), [sym_null] = ACTIONS(2186), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2186), [anon_sym_virtual] = ACTIONS(2186), [anon_sym_explicit] = ACTIONS(2186), [sym_auto] = ACTIONS(2186), [anon_sym_typename] = ACTIONS(2186), [anon_sym_template] = ACTIONS(2186), [anon_sym_operator] = ACTIONS(2186), [anon_sym_delete] = ACTIONS(2186), [anon_sym_throw] = ACTIONS(2186), [anon_sym_namespace] = ACTIONS(2186), [anon_sym_using] = ACTIONS(2186), [anon_sym_static_assert] = ACTIONS(2186), [anon_sym_co_return] = ACTIONS(2186), [anon_sym_co_yield] = ACTIONS(2186), [anon_sym_try] = ACTIONS(2186), [anon_sym_co_await] = ACTIONS(2186), [anon_sym_new] = ACTIONS(2186), [sym_this] = ACTIONS(2186), [sym_nullptr] = ACTIONS(2186), [sym_raw_string_literal] = ACTIONS(2188), }, [670] = { [sym_identifier] = ACTIONS(2122), [aux_sym_preproc_include_token1] = ACTIONS(2122), [aux_sym_preproc_def_token1] = ACTIONS(2122), [aux_sym_preproc_if_token1] = ACTIONS(2122), [aux_sym_preproc_if_token2] = ACTIONS(2122), [aux_sym_preproc_ifdef_token1] = ACTIONS(2122), [aux_sym_preproc_ifdef_token2] = ACTIONS(2122), [sym_preproc_directive] = ACTIONS(2122), [anon_sym_LPAREN2] = ACTIONS(2124), [anon_sym_BANG] = ACTIONS(2124), [anon_sym_TILDE] = ACTIONS(2124), [anon_sym_DASH] = ACTIONS(2122), [anon_sym_PLUS] = ACTIONS(2122), [anon_sym_STAR] = ACTIONS(2124), [anon_sym_AMP_AMP] = ACTIONS(2124), [anon_sym_AMP] = ACTIONS(2122), [anon_sym_SEMI] = ACTIONS(2124), [anon_sym_typedef] = ACTIONS(2122), [anon_sym_extern] = ACTIONS(2122), [anon_sym___attribute__] = ACTIONS(2122), [anon_sym_COLON_COLON] = ACTIONS(2124), [anon_sym_LBRACK_LBRACK] = ACTIONS(2124), [anon_sym___declspec] = ACTIONS(2122), [anon_sym___based] = ACTIONS(2122), [anon_sym___cdecl] = ACTIONS(2122), [anon_sym___clrcall] = ACTIONS(2122), [anon_sym___stdcall] = ACTIONS(2122), [anon_sym___fastcall] = ACTIONS(2122), [anon_sym___thiscall] = ACTIONS(2122), [anon_sym___vectorcall] = ACTIONS(2122), [anon_sym_LBRACE] = ACTIONS(2124), [anon_sym_LBRACK] = ACTIONS(2122), [anon_sym_static] = ACTIONS(2122), [anon_sym_register] = ACTIONS(2122), [anon_sym_inline] = ACTIONS(2122), [anon_sym_thread_local] = ACTIONS(2122), [anon_sym_const] = ACTIONS(2122), [anon_sym_volatile] = ACTIONS(2122), [anon_sym_restrict] = ACTIONS(2122), [anon_sym__Atomic] = ACTIONS(2122), [anon_sym_mutable] = ACTIONS(2122), [anon_sym_constexpr] = ACTIONS(2122), [anon_sym_signed] = ACTIONS(2122), [anon_sym_unsigned] = ACTIONS(2122), [anon_sym_long] = ACTIONS(2122), [anon_sym_short] = ACTIONS(2122), [sym_primitive_type] = ACTIONS(2122), [anon_sym_enum] = ACTIONS(2122), [anon_sym_class] = ACTIONS(2122), [anon_sym_struct] = ACTIONS(2122), [anon_sym_union] = ACTIONS(2122), [anon_sym_if] = ACTIONS(2122), [anon_sym_switch] = ACTIONS(2122), [anon_sym_case] = ACTIONS(2122), [anon_sym_default] = ACTIONS(2122), [anon_sym_while] = ACTIONS(2122), [anon_sym_do] = ACTIONS(2122), [anon_sym_for] = ACTIONS(2122), [anon_sym_return] = ACTIONS(2122), [anon_sym_break] = ACTIONS(2122), [anon_sym_continue] = ACTIONS(2122), [anon_sym_goto] = ACTIONS(2122), [anon_sym_DASH_DASH] = ACTIONS(2124), [anon_sym_PLUS_PLUS] = ACTIONS(2124), [anon_sym_sizeof] = ACTIONS(2122), [sym_number_literal] = ACTIONS(2124), [anon_sym_L_SQUOTE] = ACTIONS(2124), [anon_sym_u_SQUOTE] = ACTIONS(2124), [anon_sym_U_SQUOTE] = ACTIONS(2124), [anon_sym_u8_SQUOTE] = ACTIONS(2124), [anon_sym_SQUOTE] = ACTIONS(2124), [anon_sym_L_DQUOTE] = ACTIONS(2124), [anon_sym_u_DQUOTE] = ACTIONS(2124), [anon_sym_U_DQUOTE] = ACTIONS(2124), [anon_sym_u8_DQUOTE] = ACTIONS(2124), [anon_sym_DQUOTE] = ACTIONS(2124), [sym_true] = ACTIONS(2122), [sym_false] = ACTIONS(2122), [sym_null] = ACTIONS(2122), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2122), [anon_sym_virtual] = ACTIONS(2122), [anon_sym_explicit] = ACTIONS(2122), [sym_auto] = ACTIONS(2122), [anon_sym_typename] = ACTIONS(2122), [anon_sym_template] = ACTIONS(2122), [anon_sym_operator] = ACTIONS(2122), [anon_sym_delete] = ACTIONS(2122), [anon_sym_throw] = ACTIONS(2122), [anon_sym_namespace] = ACTIONS(2122), [anon_sym_using] = ACTIONS(2122), [anon_sym_static_assert] = ACTIONS(2122), [anon_sym_co_return] = ACTIONS(2122), [anon_sym_co_yield] = ACTIONS(2122), [anon_sym_try] = ACTIONS(2122), [anon_sym_co_await] = ACTIONS(2122), [anon_sym_new] = ACTIONS(2122), [sym_this] = ACTIONS(2122), [sym_nullptr] = ACTIONS(2122), [sym_raw_string_literal] = ACTIONS(2124), }, [671] = { [ts_builtin_sym_end] = ACTIONS(2184), [sym_identifier] = ACTIONS(2182), [aux_sym_preproc_include_token1] = ACTIONS(2182), [aux_sym_preproc_def_token1] = ACTIONS(2182), [aux_sym_preproc_if_token1] = ACTIONS(2182), [aux_sym_preproc_ifdef_token1] = ACTIONS(2182), [aux_sym_preproc_ifdef_token2] = ACTIONS(2182), [sym_preproc_directive] = ACTIONS(2182), [anon_sym_LPAREN2] = ACTIONS(2184), [anon_sym_BANG] = ACTIONS(2184), [anon_sym_TILDE] = ACTIONS(2184), [anon_sym_DASH] = ACTIONS(2182), [anon_sym_PLUS] = ACTIONS(2182), [anon_sym_STAR] = ACTIONS(2184), [anon_sym_AMP_AMP] = ACTIONS(2184), [anon_sym_AMP] = ACTIONS(2182), [anon_sym_SEMI] = ACTIONS(2184), [anon_sym_typedef] = ACTIONS(2182), [anon_sym_extern] = ACTIONS(2182), [anon_sym___attribute__] = ACTIONS(2182), [anon_sym_COLON_COLON] = ACTIONS(2184), [anon_sym_LBRACK_LBRACK] = ACTIONS(2184), [anon_sym___declspec] = ACTIONS(2182), [anon_sym___based] = ACTIONS(2182), [anon_sym___cdecl] = ACTIONS(2182), [anon_sym___clrcall] = ACTIONS(2182), [anon_sym___stdcall] = ACTIONS(2182), [anon_sym___fastcall] = ACTIONS(2182), [anon_sym___thiscall] = ACTIONS(2182), [anon_sym___vectorcall] = ACTIONS(2182), [anon_sym_LBRACE] = ACTIONS(2184), [anon_sym_LBRACK] = ACTIONS(2182), [anon_sym_static] = ACTIONS(2182), [anon_sym_register] = ACTIONS(2182), [anon_sym_inline] = ACTIONS(2182), [anon_sym_thread_local] = ACTIONS(2182), [anon_sym_const] = ACTIONS(2182), [anon_sym_volatile] = ACTIONS(2182), [anon_sym_restrict] = ACTIONS(2182), [anon_sym__Atomic] = ACTIONS(2182), [anon_sym_mutable] = ACTIONS(2182), [anon_sym_constexpr] = ACTIONS(2182), [anon_sym_signed] = ACTIONS(2182), [anon_sym_unsigned] = ACTIONS(2182), [anon_sym_long] = ACTIONS(2182), [anon_sym_short] = ACTIONS(2182), [sym_primitive_type] = ACTIONS(2182), [anon_sym_enum] = ACTIONS(2182), [anon_sym_class] = ACTIONS(2182), [anon_sym_struct] = ACTIONS(2182), [anon_sym_union] = ACTIONS(2182), [anon_sym_if] = ACTIONS(2182), [anon_sym_switch] = ACTIONS(2182), [anon_sym_case] = ACTIONS(2182), [anon_sym_default] = ACTIONS(2182), [anon_sym_while] = ACTIONS(2182), [anon_sym_do] = ACTIONS(2182), [anon_sym_for] = ACTIONS(2182), [anon_sym_return] = ACTIONS(2182), [anon_sym_break] = ACTIONS(2182), [anon_sym_continue] = ACTIONS(2182), [anon_sym_goto] = ACTIONS(2182), [anon_sym_DASH_DASH] = ACTIONS(2184), [anon_sym_PLUS_PLUS] = ACTIONS(2184), [anon_sym_sizeof] = ACTIONS(2182), [sym_number_literal] = ACTIONS(2184), [anon_sym_L_SQUOTE] = ACTIONS(2184), [anon_sym_u_SQUOTE] = ACTIONS(2184), [anon_sym_U_SQUOTE] = ACTIONS(2184), [anon_sym_u8_SQUOTE] = ACTIONS(2184), [anon_sym_SQUOTE] = ACTIONS(2184), [anon_sym_L_DQUOTE] = ACTIONS(2184), [anon_sym_u_DQUOTE] = ACTIONS(2184), [anon_sym_U_DQUOTE] = ACTIONS(2184), [anon_sym_u8_DQUOTE] = ACTIONS(2184), [anon_sym_DQUOTE] = ACTIONS(2184), [sym_true] = ACTIONS(2182), [sym_false] = ACTIONS(2182), [sym_null] = ACTIONS(2182), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2182), [anon_sym_virtual] = ACTIONS(2182), [anon_sym_explicit] = ACTIONS(2182), [sym_auto] = ACTIONS(2182), [anon_sym_typename] = ACTIONS(2182), [anon_sym_template] = ACTIONS(2182), [anon_sym_operator] = ACTIONS(2182), [anon_sym_delete] = ACTIONS(2182), [anon_sym_throw] = ACTIONS(2182), [anon_sym_namespace] = ACTIONS(2182), [anon_sym_using] = ACTIONS(2182), [anon_sym_static_assert] = ACTIONS(2182), [anon_sym_co_return] = ACTIONS(2182), [anon_sym_co_yield] = ACTIONS(2182), [anon_sym_try] = ACTIONS(2182), [anon_sym_co_await] = ACTIONS(2182), [anon_sym_new] = ACTIONS(2182), [sym_this] = ACTIONS(2182), [sym_nullptr] = ACTIONS(2182), [sym_raw_string_literal] = ACTIONS(2184), }, [672] = { [sym_identifier] = ACTIONS(2154), [aux_sym_preproc_include_token1] = ACTIONS(2154), [aux_sym_preproc_def_token1] = ACTIONS(2154), [aux_sym_preproc_if_token1] = ACTIONS(2154), [aux_sym_preproc_if_token2] = ACTIONS(2154), [aux_sym_preproc_ifdef_token1] = ACTIONS(2154), [aux_sym_preproc_ifdef_token2] = ACTIONS(2154), [sym_preproc_directive] = ACTIONS(2154), [anon_sym_LPAREN2] = ACTIONS(2156), [anon_sym_BANG] = ACTIONS(2156), [anon_sym_TILDE] = ACTIONS(2156), [anon_sym_DASH] = ACTIONS(2154), [anon_sym_PLUS] = ACTIONS(2154), [anon_sym_STAR] = ACTIONS(2156), [anon_sym_AMP_AMP] = ACTIONS(2156), [anon_sym_AMP] = ACTIONS(2154), [anon_sym_SEMI] = ACTIONS(2156), [anon_sym_typedef] = ACTIONS(2154), [anon_sym_extern] = ACTIONS(2154), [anon_sym___attribute__] = ACTIONS(2154), [anon_sym_COLON_COLON] = ACTIONS(2156), [anon_sym_LBRACK_LBRACK] = ACTIONS(2156), [anon_sym___declspec] = ACTIONS(2154), [anon_sym___based] = ACTIONS(2154), [anon_sym___cdecl] = ACTIONS(2154), [anon_sym___clrcall] = ACTIONS(2154), [anon_sym___stdcall] = ACTIONS(2154), [anon_sym___fastcall] = ACTIONS(2154), [anon_sym___thiscall] = ACTIONS(2154), [anon_sym___vectorcall] = ACTIONS(2154), [anon_sym_LBRACE] = ACTIONS(2156), [anon_sym_LBRACK] = ACTIONS(2154), [anon_sym_static] = ACTIONS(2154), [anon_sym_register] = ACTIONS(2154), [anon_sym_inline] = ACTIONS(2154), [anon_sym_thread_local] = ACTIONS(2154), [anon_sym_const] = ACTIONS(2154), [anon_sym_volatile] = ACTIONS(2154), [anon_sym_restrict] = ACTIONS(2154), [anon_sym__Atomic] = ACTIONS(2154), [anon_sym_mutable] = ACTIONS(2154), [anon_sym_constexpr] = ACTIONS(2154), [anon_sym_signed] = ACTIONS(2154), [anon_sym_unsigned] = ACTIONS(2154), [anon_sym_long] = ACTIONS(2154), [anon_sym_short] = ACTIONS(2154), [sym_primitive_type] = ACTIONS(2154), [anon_sym_enum] = ACTIONS(2154), [anon_sym_class] = ACTIONS(2154), [anon_sym_struct] = ACTIONS(2154), [anon_sym_union] = ACTIONS(2154), [anon_sym_if] = ACTIONS(2154), [anon_sym_switch] = ACTIONS(2154), [anon_sym_case] = ACTIONS(2154), [anon_sym_default] = ACTIONS(2154), [anon_sym_while] = ACTIONS(2154), [anon_sym_do] = ACTIONS(2154), [anon_sym_for] = ACTIONS(2154), [anon_sym_return] = ACTIONS(2154), [anon_sym_break] = ACTIONS(2154), [anon_sym_continue] = ACTIONS(2154), [anon_sym_goto] = ACTIONS(2154), [anon_sym_DASH_DASH] = ACTIONS(2156), [anon_sym_PLUS_PLUS] = ACTIONS(2156), [anon_sym_sizeof] = ACTIONS(2154), [sym_number_literal] = ACTIONS(2156), [anon_sym_L_SQUOTE] = ACTIONS(2156), [anon_sym_u_SQUOTE] = ACTIONS(2156), [anon_sym_U_SQUOTE] = ACTIONS(2156), [anon_sym_u8_SQUOTE] = ACTIONS(2156), [anon_sym_SQUOTE] = ACTIONS(2156), [anon_sym_L_DQUOTE] = ACTIONS(2156), [anon_sym_u_DQUOTE] = ACTIONS(2156), [anon_sym_U_DQUOTE] = ACTIONS(2156), [anon_sym_u8_DQUOTE] = ACTIONS(2156), [anon_sym_DQUOTE] = ACTIONS(2156), [sym_true] = ACTIONS(2154), [sym_false] = ACTIONS(2154), [sym_null] = ACTIONS(2154), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2154), [anon_sym_virtual] = ACTIONS(2154), [anon_sym_explicit] = ACTIONS(2154), [sym_auto] = ACTIONS(2154), [anon_sym_typename] = ACTIONS(2154), [anon_sym_template] = ACTIONS(2154), [anon_sym_operator] = ACTIONS(2154), [anon_sym_delete] = ACTIONS(2154), [anon_sym_throw] = ACTIONS(2154), [anon_sym_namespace] = ACTIONS(2154), [anon_sym_using] = ACTIONS(2154), [anon_sym_static_assert] = ACTIONS(2154), [anon_sym_co_return] = ACTIONS(2154), [anon_sym_co_yield] = ACTIONS(2154), [anon_sym_try] = ACTIONS(2154), [anon_sym_co_await] = ACTIONS(2154), [anon_sym_new] = ACTIONS(2154), [sym_this] = ACTIONS(2154), [sym_nullptr] = ACTIONS(2154), [sym_raw_string_literal] = ACTIONS(2156), }, [673] = { [sym_identifier] = ACTIONS(2158), [aux_sym_preproc_include_token1] = ACTIONS(2158), [aux_sym_preproc_def_token1] = ACTIONS(2158), [aux_sym_preproc_if_token1] = ACTIONS(2158), [aux_sym_preproc_if_token2] = ACTIONS(2158), [aux_sym_preproc_ifdef_token1] = ACTIONS(2158), [aux_sym_preproc_ifdef_token2] = ACTIONS(2158), [sym_preproc_directive] = ACTIONS(2158), [anon_sym_LPAREN2] = ACTIONS(2160), [anon_sym_BANG] = ACTIONS(2160), [anon_sym_TILDE] = ACTIONS(2160), [anon_sym_DASH] = ACTIONS(2158), [anon_sym_PLUS] = ACTIONS(2158), [anon_sym_STAR] = ACTIONS(2160), [anon_sym_AMP_AMP] = ACTIONS(2160), [anon_sym_AMP] = ACTIONS(2158), [anon_sym_SEMI] = ACTIONS(2160), [anon_sym_typedef] = ACTIONS(2158), [anon_sym_extern] = ACTIONS(2158), [anon_sym___attribute__] = ACTIONS(2158), [anon_sym_COLON_COLON] = ACTIONS(2160), [anon_sym_LBRACK_LBRACK] = ACTIONS(2160), [anon_sym___declspec] = ACTIONS(2158), [anon_sym___based] = ACTIONS(2158), [anon_sym___cdecl] = ACTIONS(2158), [anon_sym___clrcall] = ACTIONS(2158), [anon_sym___stdcall] = ACTIONS(2158), [anon_sym___fastcall] = ACTIONS(2158), [anon_sym___thiscall] = ACTIONS(2158), [anon_sym___vectorcall] = ACTIONS(2158), [anon_sym_LBRACE] = ACTIONS(2160), [anon_sym_LBRACK] = ACTIONS(2158), [anon_sym_static] = ACTIONS(2158), [anon_sym_register] = ACTIONS(2158), [anon_sym_inline] = ACTIONS(2158), [anon_sym_thread_local] = ACTIONS(2158), [anon_sym_const] = ACTIONS(2158), [anon_sym_volatile] = ACTIONS(2158), [anon_sym_restrict] = ACTIONS(2158), [anon_sym__Atomic] = ACTIONS(2158), [anon_sym_mutable] = ACTIONS(2158), [anon_sym_constexpr] = ACTIONS(2158), [anon_sym_signed] = ACTIONS(2158), [anon_sym_unsigned] = ACTIONS(2158), [anon_sym_long] = ACTIONS(2158), [anon_sym_short] = ACTIONS(2158), [sym_primitive_type] = ACTIONS(2158), [anon_sym_enum] = ACTIONS(2158), [anon_sym_class] = ACTIONS(2158), [anon_sym_struct] = ACTIONS(2158), [anon_sym_union] = ACTIONS(2158), [anon_sym_if] = ACTIONS(2158), [anon_sym_switch] = ACTIONS(2158), [anon_sym_case] = ACTIONS(2158), [anon_sym_default] = ACTIONS(2158), [anon_sym_while] = ACTIONS(2158), [anon_sym_do] = ACTIONS(2158), [anon_sym_for] = ACTIONS(2158), [anon_sym_return] = ACTIONS(2158), [anon_sym_break] = ACTIONS(2158), [anon_sym_continue] = ACTIONS(2158), [anon_sym_goto] = ACTIONS(2158), [anon_sym_DASH_DASH] = ACTIONS(2160), [anon_sym_PLUS_PLUS] = ACTIONS(2160), [anon_sym_sizeof] = ACTIONS(2158), [sym_number_literal] = ACTIONS(2160), [anon_sym_L_SQUOTE] = ACTIONS(2160), [anon_sym_u_SQUOTE] = ACTIONS(2160), [anon_sym_U_SQUOTE] = ACTIONS(2160), [anon_sym_u8_SQUOTE] = ACTIONS(2160), [anon_sym_SQUOTE] = ACTIONS(2160), [anon_sym_L_DQUOTE] = ACTIONS(2160), [anon_sym_u_DQUOTE] = ACTIONS(2160), [anon_sym_U_DQUOTE] = ACTIONS(2160), [anon_sym_u8_DQUOTE] = ACTIONS(2160), [anon_sym_DQUOTE] = ACTIONS(2160), [sym_true] = ACTIONS(2158), [sym_false] = ACTIONS(2158), [sym_null] = ACTIONS(2158), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2158), [anon_sym_virtual] = ACTIONS(2158), [anon_sym_explicit] = ACTIONS(2158), [sym_auto] = ACTIONS(2158), [anon_sym_typename] = ACTIONS(2158), [anon_sym_template] = ACTIONS(2158), [anon_sym_operator] = ACTIONS(2158), [anon_sym_delete] = ACTIONS(2158), [anon_sym_throw] = ACTIONS(2158), [anon_sym_namespace] = ACTIONS(2158), [anon_sym_using] = ACTIONS(2158), [anon_sym_static_assert] = ACTIONS(2158), [anon_sym_co_return] = ACTIONS(2158), [anon_sym_co_yield] = ACTIONS(2158), [anon_sym_try] = ACTIONS(2158), [anon_sym_co_await] = ACTIONS(2158), [anon_sym_new] = ACTIONS(2158), [sym_this] = ACTIONS(2158), [sym_nullptr] = ACTIONS(2158), [sym_raw_string_literal] = ACTIONS(2160), }, [674] = { [sym_identifier] = ACTIONS(2030), [aux_sym_preproc_include_token1] = ACTIONS(2030), [aux_sym_preproc_def_token1] = ACTIONS(2030), [aux_sym_preproc_if_token1] = ACTIONS(2030), [aux_sym_preproc_if_token2] = ACTIONS(2030), [aux_sym_preproc_ifdef_token1] = ACTIONS(2030), [aux_sym_preproc_ifdef_token2] = ACTIONS(2030), [sym_preproc_directive] = ACTIONS(2030), [anon_sym_LPAREN2] = ACTIONS(2032), [anon_sym_BANG] = ACTIONS(2032), [anon_sym_TILDE] = ACTIONS(2032), [anon_sym_DASH] = ACTIONS(2030), [anon_sym_PLUS] = ACTIONS(2030), [anon_sym_STAR] = ACTIONS(2032), [anon_sym_AMP_AMP] = ACTIONS(2032), [anon_sym_AMP] = ACTIONS(2030), [anon_sym_SEMI] = ACTIONS(2032), [anon_sym_typedef] = ACTIONS(2030), [anon_sym_extern] = ACTIONS(2030), [anon_sym___attribute__] = ACTIONS(2030), [anon_sym_COLON_COLON] = ACTIONS(2032), [anon_sym_LBRACK_LBRACK] = ACTIONS(2032), [anon_sym___declspec] = ACTIONS(2030), [anon_sym___based] = ACTIONS(2030), [anon_sym___cdecl] = ACTIONS(2030), [anon_sym___clrcall] = ACTIONS(2030), [anon_sym___stdcall] = ACTIONS(2030), [anon_sym___fastcall] = ACTIONS(2030), [anon_sym___thiscall] = ACTIONS(2030), [anon_sym___vectorcall] = ACTIONS(2030), [anon_sym_LBRACE] = ACTIONS(2032), [anon_sym_LBRACK] = ACTIONS(2030), [anon_sym_static] = ACTIONS(2030), [anon_sym_register] = ACTIONS(2030), [anon_sym_inline] = ACTIONS(2030), [anon_sym_thread_local] = ACTIONS(2030), [anon_sym_const] = ACTIONS(2030), [anon_sym_volatile] = ACTIONS(2030), [anon_sym_restrict] = ACTIONS(2030), [anon_sym__Atomic] = ACTIONS(2030), [anon_sym_mutable] = ACTIONS(2030), [anon_sym_constexpr] = ACTIONS(2030), [anon_sym_signed] = ACTIONS(2030), [anon_sym_unsigned] = ACTIONS(2030), [anon_sym_long] = ACTIONS(2030), [anon_sym_short] = ACTIONS(2030), [sym_primitive_type] = ACTIONS(2030), [anon_sym_enum] = ACTIONS(2030), [anon_sym_class] = ACTIONS(2030), [anon_sym_struct] = ACTIONS(2030), [anon_sym_union] = ACTIONS(2030), [anon_sym_if] = ACTIONS(2030), [anon_sym_switch] = ACTIONS(2030), [anon_sym_case] = ACTIONS(2030), [anon_sym_default] = ACTIONS(2030), [anon_sym_while] = ACTIONS(2030), [anon_sym_do] = ACTIONS(2030), [anon_sym_for] = ACTIONS(2030), [anon_sym_return] = ACTIONS(2030), [anon_sym_break] = ACTIONS(2030), [anon_sym_continue] = ACTIONS(2030), [anon_sym_goto] = ACTIONS(2030), [anon_sym_DASH_DASH] = ACTIONS(2032), [anon_sym_PLUS_PLUS] = ACTIONS(2032), [anon_sym_sizeof] = ACTIONS(2030), [sym_number_literal] = ACTIONS(2032), [anon_sym_L_SQUOTE] = ACTIONS(2032), [anon_sym_u_SQUOTE] = ACTIONS(2032), [anon_sym_U_SQUOTE] = ACTIONS(2032), [anon_sym_u8_SQUOTE] = ACTIONS(2032), [anon_sym_SQUOTE] = ACTIONS(2032), [anon_sym_L_DQUOTE] = ACTIONS(2032), [anon_sym_u_DQUOTE] = ACTIONS(2032), [anon_sym_U_DQUOTE] = ACTIONS(2032), [anon_sym_u8_DQUOTE] = ACTIONS(2032), [anon_sym_DQUOTE] = ACTIONS(2032), [sym_true] = ACTIONS(2030), [sym_false] = ACTIONS(2030), [sym_null] = ACTIONS(2030), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2030), [anon_sym_virtual] = ACTIONS(2030), [anon_sym_explicit] = ACTIONS(2030), [sym_auto] = ACTIONS(2030), [anon_sym_typename] = ACTIONS(2030), [anon_sym_template] = ACTIONS(2030), [anon_sym_operator] = ACTIONS(2030), [anon_sym_delete] = ACTIONS(2030), [anon_sym_throw] = ACTIONS(2030), [anon_sym_namespace] = ACTIONS(2030), [anon_sym_using] = ACTIONS(2030), [anon_sym_static_assert] = ACTIONS(2030), [anon_sym_co_return] = ACTIONS(2030), [anon_sym_co_yield] = ACTIONS(2030), [anon_sym_try] = ACTIONS(2030), [anon_sym_co_await] = ACTIONS(2030), [anon_sym_new] = ACTIONS(2030), [sym_this] = ACTIONS(2030), [sym_nullptr] = ACTIONS(2030), [sym_raw_string_literal] = ACTIONS(2032), }, [675] = { [ts_builtin_sym_end] = ACTIONS(2104), [sym_identifier] = ACTIONS(2102), [aux_sym_preproc_include_token1] = ACTIONS(2102), [aux_sym_preproc_def_token1] = ACTIONS(2102), [aux_sym_preproc_if_token1] = ACTIONS(2102), [aux_sym_preproc_ifdef_token1] = ACTIONS(2102), [aux_sym_preproc_ifdef_token2] = ACTIONS(2102), [sym_preproc_directive] = ACTIONS(2102), [anon_sym_LPAREN2] = ACTIONS(2104), [anon_sym_BANG] = ACTIONS(2104), [anon_sym_TILDE] = ACTIONS(2104), [anon_sym_DASH] = ACTIONS(2102), [anon_sym_PLUS] = ACTIONS(2102), [anon_sym_STAR] = ACTIONS(2104), [anon_sym_AMP_AMP] = ACTIONS(2104), [anon_sym_AMP] = ACTIONS(2102), [anon_sym_SEMI] = ACTIONS(2104), [anon_sym_typedef] = ACTIONS(2102), [anon_sym_extern] = ACTIONS(2102), [anon_sym___attribute__] = ACTIONS(2102), [anon_sym_COLON_COLON] = ACTIONS(2104), [anon_sym_LBRACK_LBRACK] = ACTIONS(2104), [anon_sym___declspec] = ACTIONS(2102), [anon_sym___based] = ACTIONS(2102), [anon_sym___cdecl] = ACTIONS(2102), [anon_sym___clrcall] = ACTIONS(2102), [anon_sym___stdcall] = ACTIONS(2102), [anon_sym___fastcall] = ACTIONS(2102), [anon_sym___thiscall] = ACTIONS(2102), [anon_sym___vectorcall] = ACTIONS(2102), [anon_sym_LBRACE] = ACTIONS(2104), [anon_sym_LBRACK] = ACTIONS(2102), [anon_sym_static] = ACTIONS(2102), [anon_sym_register] = ACTIONS(2102), [anon_sym_inline] = ACTIONS(2102), [anon_sym_thread_local] = ACTIONS(2102), [anon_sym_const] = ACTIONS(2102), [anon_sym_volatile] = ACTIONS(2102), [anon_sym_restrict] = ACTIONS(2102), [anon_sym__Atomic] = ACTIONS(2102), [anon_sym_mutable] = ACTIONS(2102), [anon_sym_constexpr] = ACTIONS(2102), [anon_sym_signed] = ACTIONS(2102), [anon_sym_unsigned] = ACTIONS(2102), [anon_sym_long] = ACTIONS(2102), [anon_sym_short] = ACTIONS(2102), [sym_primitive_type] = ACTIONS(2102), [anon_sym_enum] = ACTIONS(2102), [anon_sym_class] = ACTIONS(2102), [anon_sym_struct] = ACTIONS(2102), [anon_sym_union] = ACTIONS(2102), [anon_sym_if] = ACTIONS(2102), [anon_sym_switch] = ACTIONS(2102), [anon_sym_case] = ACTIONS(2102), [anon_sym_default] = ACTIONS(2102), [anon_sym_while] = ACTIONS(2102), [anon_sym_do] = ACTIONS(2102), [anon_sym_for] = ACTIONS(2102), [anon_sym_return] = ACTIONS(2102), [anon_sym_break] = ACTIONS(2102), [anon_sym_continue] = ACTIONS(2102), [anon_sym_goto] = ACTIONS(2102), [anon_sym_DASH_DASH] = ACTIONS(2104), [anon_sym_PLUS_PLUS] = ACTIONS(2104), [anon_sym_sizeof] = ACTIONS(2102), [sym_number_literal] = ACTIONS(2104), [anon_sym_L_SQUOTE] = ACTIONS(2104), [anon_sym_u_SQUOTE] = ACTIONS(2104), [anon_sym_U_SQUOTE] = ACTIONS(2104), [anon_sym_u8_SQUOTE] = ACTIONS(2104), [anon_sym_SQUOTE] = ACTIONS(2104), [anon_sym_L_DQUOTE] = ACTIONS(2104), [anon_sym_u_DQUOTE] = ACTIONS(2104), [anon_sym_U_DQUOTE] = ACTIONS(2104), [anon_sym_u8_DQUOTE] = ACTIONS(2104), [anon_sym_DQUOTE] = ACTIONS(2104), [sym_true] = ACTIONS(2102), [sym_false] = ACTIONS(2102), [sym_null] = ACTIONS(2102), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2102), [anon_sym_virtual] = ACTIONS(2102), [anon_sym_explicit] = ACTIONS(2102), [sym_auto] = ACTIONS(2102), [anon_sym_typename] = ACTIONS(2102), [anon_sym_template] = ACTIONS(2102), [anon_sym_operator] = ACTIONS(2102), [anon_sym_delete] = ACTIONS(2102), [anon_sym_throw] = ACTIONS(2102), [anon_sym_namespace] = ACTIONS(2102), [anon_sym_using] = ACTIONS(2102), [anon_sym_static_assert] = ACTIONS(2102), [anon_sym_co_return] = ACTIONS(2102), [anon_sym_co_yield] = ACTIONS(2102), [anon_sym_try] = ACTIONS(2102), [anon_sym_co_await] = ACTIONS(2102), [anon_sym_new] = ACTIONS(2102), [sym_this] = ACTIONS(2102), [sym_nullptr] = ACTIONS(2102), [sym_raw_string_literal] = ACTIONS(2104), }, [676] = { [ts_builtin_sym_end] = ACTIONS(2108), [sym_identifier] = ACTIONS(2106), [aux_sym_preproc_include_token1] = ACTIONS(2106), [aux_sym_preproc_def_token1] = ACTIONS(2106), [aux_sym_preproc_if_token1] = ACTIONS(2106), [aux_sym_preproc_ifdef_token1] = ACTIONS(2106), [aux_sym_preproc_ifdef_token2] = ACTIONS(2106), [sym_preproc_directive] = ACTIONS(2106), [anon_sym_LPAREN2] = ACTIONS(2108), [anon_sym_BANG] = ACTIONS(2108), [anon_sym_TILDE] = ACTIONS(2108), [anon_sym_DASH] = ACTIONS(2106), [anon_sym_PLUS] = ACTIONS(2106), [anon_sym_STAR] = ACTIONS(2108), [anon_sym_AMP_AMP] = ACTIONS(2108), [anon_sym_AMP] = ACTIONS(2106), [anon_sym_SEMI] = ACTIONS(2108), [anon_sym_typedef] = ACTIONS(2106), [anon_sym_extern] = ACTIONS(2106), [anon_sym___attribute__] = ACTIONS(2106), [anon_sym_COLON_COLON] = ACTIONS(2108), [anon_sym_LBRACK_LBRACK] = ACTIONS(2108), [anon_sym___declspec] = ACTIONS(2106), [anon_sym___based] = ACTIONS(2106), [anon_sym___cdecl] = ACTIONS(2106), [anon_sym___clrcall] = ACTIONS(2106), [anon_sym___stdcall] = ACTIONS(2106), [anon_sym___fastcall] = ACTIONS(2106), [anon_sym___thiscall] = ACTIONS(2106), [anon_sym___vectorcall] = ACTIONS(2106), [anon_sym_LBRACE] = ACTIONS(2108), [anon_sym_LBRACK] = ACTIONS(2106), [anon_sym_static] = ACTIONS(2106), [anon_sym_register] = ACTIONS(2106), [anon_sym_inline] = ACTIONS(2106), [anon_sym_thread_local] = ACTIONS(2106), [anon_sym_const] = ACTIONS(2106), [anon_sym_volatile] = ACTIONS(2106), [anon_sym_restrict] = ACTIONS(2106), [anon_sym__Atomic] = ACTIONS(2106), [anon_sym_mutable] = ACTIONS(2106), [anon_sym_constexpr] = ACTIONS(2106), [anon_sym_signed] = ACTIONS(2106), [anon_sym_unsigned] = ACTIONS(2106), [anon_sym_long] = ACTIONS(2106), [anon_sym_short] = ACTIONS(2106), [sym_primitive_type] = ACTIONS(2106), [anon_sym_enum] = ACTIONS(2106), [anon_sym_class] = ACTIONS(2106), [anon_sym_struct] = ACTIONS(2106), [anon_sym_union] = ACTIONS(2106), [anon_sym_if] = ACTIONS(2106), [anon_sym_switch] = ACTIONS(2106), [anon_sym_case] = ACTIONS(2106), [anon_sym_default] = ACTIONS(2106), [anon_sym_while] = ACTIONS(2106), [anon_sym_do] = ACTIONS(2106), [anon_sym_for] = ACTIONS(2106), [anon_sym_return] = ACTIONS(2106), [anon_sym_break] = ACTIONS(2106), [anon_sym_continue] = ACTIONS(2106), [anon_sym_goto] = ACTIONS(2106), [anon_sym_DASH_DASH] = ACTIONS(2108), [anon_sym_PLUS_PLUS] = ACTIONS(2108), [anon_sym_sizeof] = ACTIONS(2106), [sym_number_literal] = ACTIONS(2108), [anon_sym_L_SQUOTE] = ACTIONS(2108), [anon_sym_u_SQUOTE] = ACTIONS(2108), [anon_sym_U_SQUOTE] = ACTIONS(2108), [anon_sym_u8_SQUOTE] = ACTIONS(2108), [anon_sym_SQUOTE] = ACTIONS(2108), [anon_sym_L_DQUOTE] = ACTIONS(2108), [anon_sym_u_DQUOTE] = ACTIONS(2108), [anon_sym_U_DQUOTE] = ACTIONS(2108), [anon_sym_u8_DQUOTE] = ACTIONS(2108), [anon_sym_DQUOTE] = ACTIONS(2108), [sym_true] = ACTIONS(2106), [sym_false] = ACTIONS(2106), [sym_null] = ACTIONS(2106), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2106), [anon_sym_virtual] = ACTIONS(2106), [anon_sym_explicit] = ACTIONS(2106), [sym_auto] = ACTIONS(2106), [anon_sym_typename] = ACTIONS(2106), [anon_sym_template] = ACTIONS(2106), [anon_sym_operator] = ACTIONS(2106), [anon_sym_delete] = ACTIONS(2106), [anon_sym_throw] = ACTIONS(2106), [anon_sym_namespace] = ACTIONS(2106), [anon_sym_using] = ACTIONS(2106), [anon_sym_static_assert] = ACTIONS(2106), [anon_sym_co_return] = ACTIONS(2106), [anon_sym_co_yield] = ACTIONS(2106), [anon_sym_try] = ACTIONS(2106), [anon_sym_co_await] = ACTIONS(2106), [anon_sym_new] = ACTIONS(2106), [sym_this] = ACTIONS(2106), [sym_nullptr] = ACTIONS(2106), [sym_raw_string_literal] = ACTIONS(2108), }, [677] = { [sym_identifier] = ACTIONS(2034), [aux_sym_preproc_include_token1] = ACTIONS(2034), [aux_sym_preproc_def_token1] = ACTIONS(2034), [aux_sym_preproc_if_token1] = ACTIONS(2034), [aux_sym_preproc_ifdef_token1] = ACTIONS(2034), [aux_sym_preproc_ifdef_token2] = ACTIONS(2034), [sym_preproc_directive] = ACTIONS(2034), [anon_sym_LPAREN2] = ACTIONS(2036), [anon_sym_BANG] = ACTIONS(2036), [anon_sym_TILDE] = ACTIONS(2036), [anon_sym_DASH] = ACTIONS(2034), [anon_sym_PLUS] = ACTIONS(2034), [anon_sym_STAR] = ACTIONS(2036), [anon_sym_AMP_AMP] = ACTIONS(2036), [anon_sym_AMP] = ACTIONS(2034), [anon_sym_SEMI] = ACTIONS(2036), [anon_sym_typedef] = ACTIONS(2034), [anon_sym_extern] = ACTIONS(2034), [anon_sym___attribute__] = ACTIONS(2034), [anon_sym_COLON_COLON] = ACTIONS(2036), [anon_sym_LBRACK_LBRACK] = ACTIONS(2036), [anon_sym___declspec] = ACTIONS(2034), [anon_sym___based] = ACTIONS(2034), [anon_sym___cdecl] = ACTIONS(2034), [anon_sym___clrcall] = ACTIONS(2034), [anon_sym___stdcall] = ACTIONS(2034), [anon_sym___fastcall] = ACTIONS(2034), [anon_sym___thiscall] = ACTIONS(2034), [anon_sym___vectorcall] = ACTIONS(2034), [anon_sym_LBRACE] = ACTIONS(2036), [anon_sym_RBRACE] = ACTIONS(2036), [anon_sym_LBRACK] = ACTIONS(2034), [anon_sym_static] = ACTIONS(2034), [anon_sym_register] = ACTIONS(2034), [anon_sym_inline] = ACTIONS(2034), [anon_sym_thread_local] = ACTIONS(2034), [anon_sym_const] = ACTIONS(2034), [anon_sym_volatile] = ACTIONS(2034), [anon_sym_restrict] = ACTIONS(2034), [anon_sym__Atomic] = ACTIONS(2034), [anon_sym_mutable] = ACTIONS(2034), [anon_sym_constexpr] = ACTIONS(2034), [anon_sym_signed] = ACTIONS(2034), [anon_sym_unsigned] = ACTIONS(2034), [anon_sym_long] = ACTIONS(2034), [anon_sym_short] = ACTIONS(2034), [sym_primitive_type] = ACTIONS(2034), [anon_sym_enum] = ACTIONS(2034), [anon_sym_class] = ACTIONS(2034), [anon_sym_struct] = ACTIONS(2034), [anon_sym_union] = ACTIONS(2034), [anon_sym_if] = ACTIONS(2034), [anon_sym_switch] = ACTIONS(2034), [anon_sym_case] = ACTIONS(2034), [anon_sym_default] = ACTIONS(2034), [anon_sym_while] = ACTIONS(2034), [anon_sym_do] = ACTIONS(2034), [anon_sym_for] = ACTIONS(2034), [anon_sym_return] = ACTIONS(2034), [anon_sym_break] = ACTIONS(2034), [anon_sym_continue] = ACTIONS(2034), [anon_sym_goto] = ACTIONS(2034), [anon_sym_DASH_DASH] = ACTIONS(2036), [anon_sym_PLUS_PLUS] = ACTIONS(2036), [anon_sym_sizeof] = ACTIONS(2034), [sym_number_literal] = ACTIONS(2036), [anon_sym_L_SQUOTE] = ACTIONS(2036), [anon_sym_u_SQUOTE] = ACTIONS(2036), [anon_sym_U_SQUOTE] = ACTIONS(2036), [anon_sym_u8_SQUOTE] = ACTIONS(2036), [anon_sym_SQUOTE] = ACTIONS(2036), [anon_sym_L_DQUOTE] = ACTIONS(2036), [anon_sym_u_DQUOTE] = ACTIONS(2036), [anon_sym_U_DQUOTE] = ACTIONS(2036), [anon_sym_u8_DQUOTE] = ACTIONS(2036), [anon_sym_DQUOTE] = ACTIONS(2036), [sym_true] = ACTIONS(2034), [sym_false] = ACTIONS(2034), [sym_null] = ACTIONS(2034), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2034), [anon_sym_virtual] = ACTIONS(2034), [anon_sym_explicit] = ACTIONS(2034), [sym_auto] = ACTIONS(2034), [anon_sym_typename] = ACTIONS(2034), [anon_sym_template] = ACTIONS(2034), [anon_sym_operator] = ACTIONS(2034), [anon_sym_delete] = ACTIONS(2034), [anon_sym_throw] = ACTIONS(2034), [anon_sym_namespace] = ACTIONS(2034), [anon_sym_using] = ACTIONS(2034), [anon_sym_static_assert] = ACTIONS(2034), [anon_sym_co_return] = ACTIONS(2034), [anon_sym_co_yield] = ACTIONS(2034), [anon_sym_try] = ACTIONS(2034), [anon_sym_co_await] = ACTIONS(2034), [anon_sym_new] = ACTIONS(2034), [sym_this] = ACTIONS(2034), [sym_nullptr] = ACTIONS(2034), [sym_raw_string_literal] = ACTIONS(2036), }, [678] = { [sym_identifier] = ACTIONS(2166), [aux_sym_preproc_include_token1] = ACTIONS(2166), [aux_sym_preproc_def_token1] = ACTIONS(2166), [aux_sym_preproc_if_token1] = ACTIONS(2166), [aux_sym_preproc_if_token2] = ACTIONS(2166), [aux_sym_preproc_ifdef_token1] = ACTIONS(2166), [aux_sym_preproc_ifdef_token2] = ACTIONS(2166), [sym_preproc_directive] = ACTIONS(2166), [anon_sym_LPAREN2] = ACTIONS(2168), [anon_sym_BANG] = ACTIONS(2168), [anon_sym_TILDE] = ACTIONS(2168), [anon_sym_DASH] = ACTIONS(2166), [anon_sym_PLUS] = ACTIONS(2166), [anon_sym_STAR] = ACTIONS(2168), [anon_sym_AMP_AMP] = ACTIONS(2168), [anon_sym_AMP] = ACTIONS(2166), [anon_sym_SEMI] = ACTIONS(2168), [anon_sym_typedef] = ACTIONS(2166), [anon_sym_extern] = ACTIONS(2166), [anon_sym___attribute__] = ACTIONS(2166), [anon_sym_COLON_COLON] = ACTIONS(2168), [anon_sym_LBRACK_LBRACK] = ACTIONS(2168), [anon_sym___declspec] = ACTIONS(2166), [anon_sym___based] = ACTIONS(2166), [anon_sym___cdecl] = ACTIONS(2166), [anon_sym___clrcall] = ACTIONS(2166), [anon_sym___stdcall] = ACTIONS(2166), [anon_sym___fastcall] = ACTIONS(2166), [anon_sym___thiscall] = ACTIONS(2166), [anon_sym___vectorcall] = ACTIONS(2166), [anon_sym_LBRACE] = ACTIONS(2168), [anon_sym_LBRACK] = ACTIONS(2166), [anon_sym_static] = ACTIONS(2166), [anon_sym_register] = ACTIONS(2166), [anon_sym_inline] = ACTIONS(2166), [anon_sym_thread_local] = ACTIONS(2166), [anon_sym_const] = ACTIONS(2166), [anon_sym_volatile] = ACTIONS(2166), [anon_sym_restrict] = ACTIONS(2166), [anon_sym__Atomic] = ACTIONS(2166), [anon_sym_mutable] = ACTIONS(2166), [anon_sym_constexpr] = ACTIONS(2166), [anon_sym_signed] = ACTIONS(2166), [anon_sym_unsigned] = ACTIONS(2166), [anon_sym_long] = ACTIONS(2166), [anon_sym_short] = ACTIONS(2166), [sym_primitive_type] = ACTIONS(2166), [anon_sym_enum] = ACTIONS(2166), [anon_sym_class] = ACTIONS(2166), [anon_sym_struct] = ACTIONS(2166), [anon_sym_union] = ACTIONS(2166), [anon_sym_if] = ACTIONS(2166), [anon_sym_switch] = ACTIONS(2166), [anon_sym_case] = ACTIONS(2166), [anon_sym_default] = ACTIONS(2166), [anon_sym_while] = ACTIONS(2166), [anon_sym_do] = ACTIONS(2166), [anon_sym_for] = ACTIONS(2166), [anon_sym_return] = ACTIONS(2166), [anon_sym_break] = ACTIONS(2166), [anon_sym_continue] = ACTIONS(2166), [anon_sym_goto] = ACTIONS(2166), [anon_sym_DASH_DASH] = ACTIONS(2168), [anon_sym_PLUS_PLUS] = ACTIONS(2168), [anon_sym_sizeof] = ACTIONS(2166), [sym_number_literal] = ACTIONS(2168), [anon_sym_L_SQUOTE] = ACTIONS(2168), [anon_sym_u_SQUOTE] = ACTIONS(2168), [anon_sym_U_SQUOTE] = ACTIONS(2168), [anon_sym_u8_SQUOTE] = ACTIONS(2168), [anon_sym_SQUOTE] = ACTIONS(2168), [anon_sym_L_DQUOTE] = ACTIONS(2168), [anon_sym_u_DQUOTE] = ACTIONS(2168), [anon_sym_U_DQUOTE] = ACTIONS(2168), [anon_sym_u8_DQUOTE] = ACTIONS(2168), [anon_sym_DQUOTE] = ACTIONS(2168), [sym_true] = ACTIONS(2166), [sym_false] = ACTIONS(2166), [sym_null] = ACTIONS(2166), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2166), [anon_sym_virtual] = ACTIONS(2166), [anon_sym_explicit] = ACTIONS(2166), [sym_auto] = ACTIONS(2166), [anon_sym_typename] = ACTIONS(2166), [anon_sym_template] = ACTIONS(2166), [anon_sym_operator] = ACTIONS(2166), [anon_sym_delete] = ACTIONS(2166), [anon_sym_throw] = ACTIONS(2166), [anon_sym_namespace] = ACTIONS(2166), [anon_sym_using] = ACTIONS(2166), [anon_sym_static_assert] = ACTIONS(2166), [anon_sym_co_return] = ACTIONS(2166), [anon_sym_co_yield] = ACTIONS(2166), [anon_sym_try] = ACTIONS(2166), [anon_sym_co_await] = ACTIONS(2166), [anon_sym_new] = ACTIONS(2166), [sym_this] = ACTIONS(2166), [sym_nullptr] = ACTIONS(2166), [sym_raw_string_literal] = ACTIONS(2168), }, [679] = { [sym_identifier] = ACTIONS(2038), [aux_sym_preproc_include_token1] = ACTIONS(2038), [aux_sym_preproc_def_token1] = ACTIONS(2038), [aux_sym_preproc_if_token1] = ACTIONS(2038), [aux_sym_preproc_ifdef_token1] = ACTIONS(2038), [aux_sym_preproc_ifdef_token2] = ACTIONS(2038), [sym_preproc_directive] = ACTIONS(2038), [anon_sym_LPAREN2] = ACTIONS(2040), [anon_sym_BANG] = ACTIONS(2040), [anon_sym_TILDE] = ACTIONS(2040), [anon_sym_DASH] = ACTIONS(2038), [anon_sym_PLUS] = ACTIONS(2038), [anon_sym_STAR] = ACTIONS(2040), [anon_sym_AMP_AMP] = ACTIONS(2040), [anon_sym_AMP] = ACTIONS(2038), [anon_sym_SEMI] = ACTIONS(2040), [anon_sym_typedef] = ACTIONS(2038), [anon_sym_extern] = ACTIONS(2038), [anon_sym___attribute__] = ACTIONS(2038), [anon_sym_COLON_COLON] = ACTIONS(2040), [anon_sym_LBRACK_LBRACK] = ACTIONS(2040), [anon_sym___declspec] = ACTIONS(2038), [anon_sym___based] = ACTIONS(2038), [anon_sym___cdecl] = ACTIONS(2038), [anon_sym___clrcall] = ACTIONS(2038), [anon_sym___stdcall] = ACTIONS(2038), [anon_sym___fastcall] = ACTIONS(2038), [anon_sym___thiscall] = ACTIONS(2038), [anon_sym___vectorcall] = ACTIONS(2038), [anon_sym_LBRACE] = ACTIONS(2040), [anon_sym_RBRACE] = ACTIONS(2040), [anon_sym_LBRACK] = ACTIONS(2038), [anon_sym_static] = ACTIONS(2038), [anon_sym_register] = ACTIONS(2038), [anon_sym_inline] = ACTIONS(2038), [anon_sym_thread_local] = ACTIONS(2038), [anon_sym_const] = ACTIONS(2038), [anon_sym_volatile] = ACTIONS(2038), [anon_sym_restrict] = ACTIONS(2038), [anon_sym__Atomic] = ACTIONS(2038), [anon_sym_mutable] = ACTIONS(2038), [anon_sym_constexpr] = ACTIONS(2038), [anon_sym_signed] = ACTIONS(2038), [anon_sym_unsigned] = ACTIONS(2038), [anon_sym_long] = ACTIONS(2038), [anon_sym_short] = ACTIONS(2038), [sym_primitive_type] = ACTIONS(2038), [anon_sym_enum] = ACTIONS(2038), [anon_sym_class] = ACTIONS(2038), [anon_sym_struct] = ACTIONS(2038), [anon_sym_union] = ACTIONS(2038), [anon_sym_if] = ACTIONS(2038), [anon_sym_switch] = ACTIONS(2038), [anon_sym_case] = ACTIONS(2038), [anon_sym_default] = ACTIONS(2038), [anon_sym_while] = ACTIONS(2038), [anon_sym_do] = ACTIONS(2038), [anon_sym_for] = ACTIONS(2038), [anon_sym_return] = ACTIONS(2038), [anon_sym_break] = ACTIONS(2038), [anon_sym_continue] = ACTIONS(2038), [anon_sym_goto] = ACTIONS(2038), [anon_sym_DASH_DASH] = ACTIONS(2040), [anon_sym_PLUS_PLUS] = ACTIONS(2040), [anon_sym_sizeof] = ACTIONS(2038), [sym_number_literal] = ACTIONS(2040), [anon_sym_L_SQUOTE] = ACTIONS(2040), [anon_sym_u_SQUOTE] = ACTIONS(2040), [anon_sym_U_SQUOTE] = ACTIONS(2040), [anon_sym_u8_SQUOTE] = ACTIONS(2040), [anon_sym_SQUOTE] = ACTIONS(2040), [anon_sym_L_DQUOTE] = ACTIONS(2040), [anon_sym_u_DQUOTE] = ACTIONS(2040), [anon_sym_U_DQUOTE] = ACTIONS(2040), [anon_sym_u8_DQUOTE] = ACTIONS(2040), [anon_sym_DQUOTE] = ACTIONS(2040), [sym_true] = ACTIONS(2038), [sym_false] = ACTIONS(2038), [sym_null] = ACTIONS(2038), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2038), [anon_sym_virtual] = ACTIONS(2038), [anon_sym_explicit] = ACTIONS(2038), [sym_auto] = ACTIONS(2038), [anon_sym_typename] = ACTIONS(2038), [anon_sym_template] = ACTIONS(2038), [anon_sym_operator] = ACTIONS(2038), [anon_sym_delete] = ACTIONS(2038), [anon_sym_throw] = ACTIONS(2038), [anon_sym_namespace] = ACTIONS(2038), [anon_sym_using] = ACTIONS(2038), [anon_sym_static_assert] = ACTIONS(2038), [anon_sym_co_return] = ACTIONS(2038), [anon_sym_co_yield] = ACTIONS(2038), [anon_sym_try] = ACTIONS(2038), [anon_sym_co_await] = ACTIONS(2038), [anon_sym_new] = ACTIONS(2038), [sym_this] = ACTIONS(2038), [sym_nullptr] = ACTIONS(2038), [sym_raw_string_literal] = ACTIONS(2040), }, [680] = { [ts_builtin_sym_end] = ACTIONS(2116), [sym_identifier] = ACTIONS(2114), [aux_sym_preproc_include_token1] = ACTIONS(2114), [aux_sym_preproc_def_token1] = ACTIONS(2114), [aux_sym_preproc_if_token1] = ACTIONS(2114), [aux_sym_preproc_ifdef_token1] = ACTIONS(2114), [aux_sym_preproc_ifdef_token2] = ACTIONS(2114), [sym_preproc_directive] = ACTIONS(2114), [anon_sym_LPAREN2] = ACTIONS(2116), [anon_sym_BANG] = ACTIONS(2116), [anon_sym_TILDE] = ACTIONS(2116), [anon_sym_DASH] = ACTIONS(2114), [anon_sym_PLUS] = ACTIONS(2114), [anon_sym_STAR] = ACTIONS(2116), [anon_sym_AMP_AMP] = ACTIONS(2116), [anon_sym_AMP] = ACTIONS(2114), [anon_sym_SEMI] = ACTIONS(2116), [anon_sym_typedef] = ACTIONS(2114), [anon_sym_extern] = ACTIONS(2114), [anon_sym___attribute__] = ACTIONS(2114), [anon_sym_COLON_COLON] = ACTIONS(2116), [anon_sym_LBRACK_LBRACK] = ACTIONS(2116), [anon_sym___declspec] = ACTIONS(2114), [anon_sym___based] = ACTIONS(2114), [anon_sym___cdecl] = ACTIONS(2114), [anon_sym___clrcall] = ACTIONS(2114), [anon_sym___stdcall] = ACTIONS(2114), [anon_sym___fastcall] = ACTIONS(2114), [anon_sym___thiscall] = ACTIONS(2114), [anon_sym___vectorcall] = ACTIONS(2114), [anon_sym_LBRACE] = ACTIONS(2116), [anon_sym_LBRACK] = ACTIONS(2114), [anon_sym_static] = ACTIONS(2114), [anon_sym_register] = ACTIONS(2114), [anon_sym_inline] = ACTIONS(2114), [anon_sym_thread_local] = ACTIONS(2114), [anon_sym_const] = ACTIONS(2114), [anon_sym_volatile] = ACTIONS(2114), [anon_sym_restrict] = ACTIONS(2114), [anon_sym__Atomic] = ACTIONS(2114), [anon_sym_mutable] = ACTIONS(2114), [anon_sym_constexpr] = ACTIONS(2114), [anon_sym_signed] = ACTIONS(2114), [anon_sym_unsigned] = ACTIONS(2114), [anon_sym_long] = ACTIONS(2114), [anon_sym_short] = ACTIONS(2114), [sym_primitive_type] = ACTIONS(2114), [anon_sym_enum] = ACTIONS(2114), [anon_sym_class] = ACTIONS(2114), [anon_sym_struct] = ACTIONS(2114), [anon_sym_union] = ACTIONS(2114), [anon_sym_if] = ACTIONS(2114), [anon_sym_switch] = ACTIONS(2114), [anon_sym_case] = ACTIONS(2114), [anon_sym_default] = ACTIONS(2114), [anon_sym_while] = ACTIONS(2114), [anon_sym_do] = ACTIONS(2114), [anon_sym_for] = ACTIONS(2114), [anon_sym_return] = ACTIONS(2114), [anon_sym_break] = ACTIONS(2114), [anon_sym_continue] = ACTIONS(2114), [anon_sym_goto] = ACTIONS(2114), [anon_sym_DASH_DASH] = ACTIONS(2116), [anon_sym_PLUS_PLUS] = ACTIONS(2116), [anon_sym_sizeof] = ACTIONS(2114), [sym_number_literal] = ACTIONS(2116), [anon_sym_L_SQUOTE] = ACTIONS(2116), [anon_sym_u_SQUOTE] = ACTIONS(2116), [anon_sym_U_SQUOTE] = ACTIONS(2116), [anon_sym_u8_SQUOTE] = ACTIONS(2116), [anon_sym_SQUOTE] = ACTIONS(2116), [anon_sym_L_DQUOTE] = ACTIONS(2116), [anon_sym_u_DQUOTE] = ACTIONS(2116), [anon_sym_U_DQUOTE] = ACTIONS(2116), [anon_sym_u8_DQUOTE] = ACTIONS(2116), [anon_sym_DQUOTE] = ACTIONS(2116), [sym_true] = ACTIONS(2114), [sym_false] = ACTIONS(2114), [sym_null] = ACTIONS(2114), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2114), [anon_sym_virtual] = ACTIONS(2114), [anon_sym_explicit] = ACTIONS(2114), [sym_auto] = ACTIONS(2114), [anon_sym_typename] = ACTIONS(2114), [anon_sym_template] = ACTIONS(2114), [anon_sym_operator] = ACTIONS(2114), [anon_sym_delete] = ACTIONS(2114), [anon_sym_throw] = ACTIONS(2114), [anon_sym_namespace] = ACTIONS(2114), [anon_sym_using] = ACTIONS(2114), [anon_sym_static_assert] = ACTIONS(2114), [anon_sym_co_return] = ACTIONS(2114), [anon_sym_co_yield] = ACTIONS(2114), [anon_sym_try] = ACTIONS(2114), [anon_sym_co_await] = ACTIONS(2114), [anon_sym_new] = ACTIONS(2114), [sym_this] = ACTIONS(2114), [sym_nullptr] = ACTIONS(2114), [sym_raw_string_literal] = ACTIONS(2116), }, [681] = { [sym_identifier] = ACTIONS(2122), [aux_sym_preproc_include_token1] = ACTIONS(2122), [aux_sym_preproc_def_token1] = ACTIONS(2122), [aux_sym_preproc_if_token1] = ACTIONS(2122), [aux_sym_preproc_ifdef_token1] = ACTIONS(2122), [aux_sym_preproc_ifdef_token2] = ACTIONS(2122), [sym_preproc_directive] = ACTIONS(2122), [anon_sym_LPAREN2] = ACTIONS(2124), [anon_sym_BANG] = ACTIONS(2124), [anon_sym_TILDE] = ACTIONS(2124), [anon_sym_DASH] = ACTIONS(2122), [anon_sym_PLUS] = ACTIONS(2122), [anon_sym_STAR] = ACTIONS(2124), [anon_sym_AMP_AMP] = ACTIONS(2124), [anon_sym_AMP] = ACTIONS(2122), [anon_sym_SEMI] = ACTIONS(2124), [anon_sym_typedef] = ACTIONS(2122), [anon_sym_extern] = ACTIONS(2122), [anon_sym___attribute__] = ACTIONS(2122), [anon_sym_COLON_COLON] = ACTIONS(2124), [anon_sym_LBRACK_LBRACK] = ACTIONS(2124), [anon_sym___declspec] = ACTIONS(2122), [anon_sym___based] = ACTIONS(2122), [anon_sym___cdecl] = ACTIONS(2122), [anon_sym___clrcall] = ACTIONS(2122), [anon_sym___stdcall] = ACTIONS(2122), [anon_sym___fastcall] = ACTIONS(2122), [anon_sym___thiscall] = ACTIONS(2122), [anon_sym___vectorcall] = ACTIONS(2122), [anon_sym_LBRACE] = ACTIONS(2124), [anon_sym_RBRACE] = ACTIONS(2124), [anon_sym_LBRACK] = ACTIONS(2122), [anon_sym_static] = ACTIONS(2122), [anon_sym_register] = ACTIONS(2122), [anon_sym_inline] = ACTIONS(2122), [anon_sym_thread_local] = ACTIONS(2122), [anon_sym_const] = ACTIONS(2122), [anon_sym_volatile] = ACTIONS(2122), [anon_sym_restrict] = ACTIONS(2122), [anon_sym__Atomic] = ACTIONS(2122), [anon_sym_mutable] = ACTIONS(2122), [anon_sym_constexpr] = ACTIONS(2122), [anon_sym_signed] = ACTIONS(2122), [anon_sym_unsigned] = ACTIONS(2122), [anon_sym_long] = ACTIONS(2122), [anon_sym_short] = ACTIONS(2122), [sym_primitive_type] = ACTIONS(2122), [anon_sym_enum] = ACTIONS(2122), [anon_sym_class] = ACTIONS(2122), [anon_sym_struct] = ACTIONS(2122), [anon_sym_union] = ACTIONS(2122), [anon_sym_if] = ACTIONS(2122), [anon_sym_switch] = ACTIONS(2122), [anon_sym_case] = ACTIONS(2122), [anon_sym_default] = ACTIONS(2122), [anon_sym_while] = ACTIONS(2122), [anon_sym_do] = ACTIONS(2122), [anon_sym_for] = ACTIONS(2122), [anon_sym_return] = ACTIONS(2122), [anon_sym_break] = ACTIONS(2122), [anon_sym_continue] = ACTIONS(2122), [anon_sym_goto] = ACTIONS(2122), [anon_sym_DASH_DASH] = ACTIONS(2124), [anon_sym_PLUS_PLUS] = ACTIONS(2124), [anon_sym_sizeof] = ACTIONS(2122), [sym_number_literal] = ACTIONS(2124), [anon_sym_L_SQUOTE] = ACTIONS(2124), [anon_sym_u_SQUOTE] = ACTIONS(2124), [anon_sym_U_SQUOTE] = ACTIONS(2124), [anon_sym_u8_SQUOTE] = ACTIONS(2124), [anon_sym_SQUOTE] = ACTIONS(2124), [anon_sym_L_DQUOTE] = ACTIONS(2124), [anon_sym_u_DQUOTE] = ACTIONS(2124), [anon_sym_U_DQUOTE] = ACTIONS(2124), [anon_sym_u8_DQUOTE] = ACTIONS(2124), [anon_sym_DQUOTE] = ACTIONS(2124), [sym_true] = ACTIONS(2122), [sym_false] = ACTIONS(2122), [sym_null] = ACTIONS(2122), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2122), [anon_sym_virtual] = ACTIONS(2122), [anon_sym_explicit] = ACTIONS(2122), [sym_auto] = ACTIONS(2122), [anon_sym_typename] = ACTIONS(2122), [anon_sym_template] = ACTIONS(2122), [anon_sym_operator] = ACTIONS(2122), [anon_sym_delete] = ACTIONS(2122), [anon_sym_throw] = ACTIONS(2122), [anon_sym_namespace] = ACTIONS(2122), [anon_sym_using] = ACTIONS(2122), [anon_sym_static_assert] = ACTIONS(2122), [anon_sym_co_return] = ACTIONS(2122), [anon_sym_co_yield] = ACTIONS(2122), [anon_sym_try] = ACTIONS(2122), [anon_sym_co_await] = ACTIONS(2122), [anon_sym_new] = ACTIONS(2122), [sym_this] = ACTIONS(2122), [sym_nullptr] = ACTIONS(2122), [sym_raw_string_literal] = ACTIONS(2124), }, [682] = { [ts_builtin_sym_end] = ACTIONS(2120), [sym_identifier] = ACTIONS(2118), [aux_sym_preproc_include_token1] = ACTIONS(2118), [aux_sym_preproc_def_token1] = ACTIONS(2118), [aux_sym_preproc_if_token1] = ACTIONS(2118), [aux_sym_preproc_ifdef_token1] = ACTIONS(2118), [aux_sym_preproc_ifdef_token2] = ACTIONS(2118), [sym_preproc_directive] = ACTIONS(2118), [anon_sym_LPAREN2] = ACTIONS(2120), [anon_sym_BANG] = ACTIONS(2120), [anon_sym_TILDE] = ACTIONS(2120), [anon_sym_DASH] = ACTIONS(2118), [anon_sym_PLUS] = ACTIONS(2118), [anon_sym_STAR] = ACTIONS(2120), [anon_sym_AMP_AMP] = ACTIONS(2120), [anon_sym_AMP] = ACTIONS(2118), [anon_sym_SEMI] = ACTIONS(2120), [anon_sym_typedef] = ACTIONS(2118), [anon_sym_extern] = ACTIONS(2118), [anon_sym___attribute__] = ACTIONS(2118), [anon_sym_COLON_COLON] = ACTIONS(2120), [anon_sym_LBRACK_LBRACK] = ACTIONS(2120), [anon_sym___declspec] = ACTIONS(2118), [anon_sym___based] = ACTIONS(2118), [anon_sym___cdecl] = ACTIONS(2118), [anon_sym___clrcall] = ACTIONS(2118), [anon_sym___stdcall] = ACTIONS(2118), [anon_sym___fastcall] = ACTIONS(2118), [anon_sym___thiscall] = ACTIONS(2118), [anon_sym___vectorcall] = ACTIONS(2118), [anon_sym_LBRACE] = ACTIONS(2120), [anon_sym_LBRACK] = ACTIONS(2118), [anon_sym_static] = ACTIONS(2118), [anon_sym_register] = ACTIONS(2118), [anon_sym_inline] = ACTIONS(2118), [anon_sym_thread_local] = ACTIONS(2118), [anon_sym_const] = ACTIONS(2118), [anon_sym_volatile] = ACTIONS(2118), [anon_sym_restrict] = ACTIONS(2118), [anon_sym__Atomic] = ACTIONS(2118), [anon_sym_mutable] = ACTIONS(2118), [anon_sym_constexpr] = ACTIONS(2118), [anon_sym_signed] = ACTIONS(2118), [anon_sym_unsigned] = ACTIONS(2118), [anon_sym_long] = ACTIONS(2118), [anon_sym_short] = ACTIONS(2118), [sym_primitive_type] = ACTIONS(2118), [anon_sym_enum] = ACTIONS(2118), [anon_sym_class] = ACTIONS(2118), [anon_sym_struct] = ACTIONS(2118), [anon_sym_union] = ACTIONS(2118), [anon_sym_if] = ACTIONS(2118), [anon_sym_switch] = ACTIONS(2118), [anon_sym_case] = ACTIONS(2118), [anon_sym_default] = ACTIONS(2118), [anon_sym_while] = ACTIONS(2118), [anon_sym_do] = ACTIONS(2118), [anon_sym_for] = ACTIONS(2118), [anon_sym_return] = ACTIONS(2118), [anon_sym_break] = ACTIONS(2118), [anon_sym_continue] = ACTIONS(2118), [anon_sym_goto] = ACTIONS(2118), [anon_sym_DASH_DASH] = ACTIONS(2120), [anon_sym_PLUS_PLUS] = ACTIONS(2120), [anon_sym_sizeof] = ACTIONS(2118), [sym_number_literal] = ACTIONS(2120), [anon_sym_L_SQUOTE] = ACTIONS(2120), [anon_sym_u_SQUOTE] = ACTIONS(2120), [anon_sym_U_SQUOTE] = ACTIONS(2120), [anon_sym_u8_SQUOTE] = ACTIONS(2120), [anon_sym_SQUOTE] = ACTIONS(2120), [anon_sym_L_DQUOTE] = ACTIONS(2120), [anon_sym_u_DQUOTE] = ACTIONS(2120), [anon_sym_U_DQUOTE] = ACTIONS(2120), [anon_sym_u8_DQUOTE] = ACTIONS(2120), [anon_sym_DQUOTE] = ACTIONS(2120), [sym_true] = ACTIONS(2118), [sym_false] = ACTIONS(2118), [sym_null] = ACTIONS(2118), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2118), [anon_sym_virtual] = ACTIONS(2118), [anon_sym_explicit] = ACTIONS(2118), [sym_auto] = ACTIONS(2118), [anon_sym_typename] = ACTIONS(2118), [anon_sym_template] = ACTIONS(2118), [anon_sym_operator] = ACTIONS(2118), [anon_sym_delete] = ACTIONS(2118), [anon_sym_throw] = ACTIONS(2118), [anon_sym_namespace] = ACTIONS(2118), [anon_sym_using] = ACTIONS(2118), [anon_sym_static_assert] = ACTIONS(2118), [anon_sym_co_return] = ACTIONS(2118), [anon_sym_co_yield] = ACTIONS(2118), [anon_sym_try] = ACTIONS(2118), [anon_sym_co_await] = ACTIONS(2118), [anon_sym_new] = ACTIONS(2118), [sym_this] = ACTIONS(2118), [sym_nullptr] = ACTIONS(2118), [sym_raw_string_literal] = ACTIONS(2120), }, [683] = { [sym_identifier] = ACTIONS(2042), [aux_sym_preproc_include_token1] = ACTIONS(2042), [aux_sym_preproc_def_token1] = ACTIONS(2042), [aux_sym_preproc_if_token1] = ACTIONS(2042), [aux_sym_preproc_ifdef_token1] = ACTIONS(2042), [aux_sym_preproc_ifdef_token2] = ACTIONS(2042), [sym_preproc_directive] = ACTIONS(2042), [anon_sym_LPAREN2] = ACTIONS(2044), [anon_sym_BANG] = ACTIONS(2044), [anon_sym_TILDE] = ACTIONS(2044), [anon_sym_DASH] = ACTIONS(2042), [anon_sym_PLUS] = ACTIONS(2042), [anon_sym_STAR] = ACTIONS(2044), [anon_sym_AMP_AMP] = ACTIONS(2044), [anon_sym_AMP] = ACTIONS(2042), [anon_sym_SEMI] = ACTIONS(2044), [anon_sym_typedef] = ACTIONS(2042), [anon_sym_extern] = ACTIONS(2042), [anon_sym___attribute__] = ACTIONS(2042), [anon_sym_COLON_COLON] = ACTIONS(2044), [anon_sym_LBRACK_LBRACK] = ACTIONS(2044), [anon_sym___declspec] = ACTIONS(2042), [anon_sym___based] = ACTIONS(2042), [anon_sym___cdecl] = ACTIONS(2042), [anon_sym___clrcall] = ACTIONS(2042), [anon_sym___stdcall] = ACTIONS(2042), [anon_sym___fastcall] = ACTIONS(2042), [anon_sym___thiscall] = ACTIONS(2042), [anon_sym___vectorcall] = ACTIONS(2042), [anon_sym_LBRACE] = ACTIONS(2044), [anon_sym_RBRACE] = ACTIONS(2044), [anon_sym_LBRACK] = ACTIONS(2042), [anon_sym_static] = ACTIONS(2042), [anon_sym_register] = ACTIONS(2042), [anon_sym_inline] = ACTIONS(2042), [anon_sym_thread_local] = ACTIONS(2042), [anon_sym_const] = ACTIONS(2042), [anon_sym_volatile] = ACTIONS(2042), [anon_sym_restrict] = ACTIONS(2042), [anon_sym__Atomic] = ACTIONS(2042), [anon_sym_mutable] = ACTIONS(2042), [anon_sym_constexpr] = ACTIONS(2042), [anon_sym_signed] = ACTIONS(2042), [anon_sym_unsigned] = ACTIONS(2042), [anon_sym_long] = ACTIONS(2042), [anon_sym_short] = ACTIONS(2042), [sym_primitive_type] = ACTIONS(2042), [anon_sym_enum] = ACTIONS(2042), [anon_sym_class] = ACTIONS(2042), [anon_sym_struct] = ACTIONS(2042), [anon_sym_union] = ACTIONS(2042), [anon_sym_if] = ACTIONS(2042), [anon_sym_switch] = ACTIONS(2042), [anon_sym_case] = ACTIONS(2042), [anon_sym_default] = ACTIONS(2042), [anon_sym_while] = ACTIONS(2042), [anon_sym_do] = ACTIONS(2042), [anon_sym_for] = ACTIONS(2042), [anon_sym_return] = ACTIONS(2042), [anon_sym_break] = ACTIONS(2042), [anon_sym_continue] = ACTIONS(2042), [anon_sym_goto] = ACTIONS(2042), [anon_sym_DASH_DASH] = ACTIONS(2044), [anon_sym_PLUS_PLUS] = ACTIONS(2044), [anon_sym_sizeof] = ACTIONS(2042), [sym_number_literal] = ACTIONS(2044), [anon_sym_L_SQUOTE] = ACTIONS(2044), [anon_sym_u_SQUOTE] = ACTIONS(2044), [anon_sym_U_SQUOTE] = ACTIONS(2044), [anon_sym_u8_SQUOTE] = ACTIONS(2044), [anon_sym_SQUOTE] = ACTIONS(2044), [anon_sym_L_DQUOTE] = ACTIONS(2044), [anon_sym_u_DQUOTE] = ACTIONS(2044), [anon_sym_U_DQUOTE] = ACTIONS(2044), [anon_sym_u8_DQUOTE] = ACTIONS(2044), [anon_sym_DQUOTE] = ACTIONS(2044), [sym_true] = ACTIONS(2042), [sym_false] = ACTIONS(2042), [sym_null] = ACTIONS(2042), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2042), [anon_sym_virtual] = ACTIONS(2042), [anon_sym_explicit] = ACTIONS(2042), [sym_auto] = ACTIONS(2042), [anon_sym_typename] = ACTIONS(2042), [anon_sym_template] = ACTIONS(2042), [anon_sym_operator] = ACTIONS(2042), [anon_sym_delete] = ACTIONS(2042), [anon_sym_throw] = ACTIONS(2042), [anon_sym_namespace] = ACTIONS(2042), [anon_sym_using] = ACTIONS(2042), [anon_sym_static_assert] = ACTIONS(2042), [anon_sym_co_return] = ACTIONS(2042), [anon_sym_co_yield] = ACTIONS(2042), [anon_sym_try] = ACTIONS(2042), [anon_sym_co_await] = ACTIONS(2042), [anon_sym_new] = ACTIONS(2042), [sym_this] = ACTIONS(2042), [sym_nullptr] = ACTIONS(2042), [sym_raw_string_literal] = ACTIONS(2044), }, [684] = { [sym_identifier] = ACTIONS(2046), [aux_sym_preproc_include_token1] = ACTIONS(2046), [aux_sym_preproc_def_token1] = ACTIONS(2046), [aux_sym_preproc_if_token1] = ACTIONS(2046), [aux_sym_preproc_ifdef_token1] = ACTIONS(2046), [aux_sym_preproc_ifdef_token2] = ACTIONS(2046), [sym_preproc_directive] = ACTIONS(2046), [anon_sym_LPAREN2] = ACTIONS(2048), [anon_sym_BANG] = ACTIONS(2048), [anon_sym_TILDE] = ACTIONS(2048), [anon_sym_DASH] = ACTIONS(2046), [anon_sym_PLUS] = ACTIONS(2046), [anon_sym_STAR] = ACTIONS(2048), [anon_sym_AMP_AMP] = ACTIONS(2048), [anon_sym_AMP] = ACTIONS(2046), [anon_sym_SEMI] = ACTIONS(2048), [anon_sym_typedef] = ACTIONS(2046), [anon_sym_extern] = ACTIONS(2046), [anon_sym___attribute__] = ACTIONS(2046), [anon_sym_COLON_COLON] = ACTIONS(2048), [anon_sym_LBRACK_LBRACK] = ACTIONS(2048), [anon_sym___declspec] = ACTIONS(2046), [anon_sym___based] = ACTIONS(2046), [anon_sym___cdecl] = ACTIONS(2046), [anon_sym___clrcall] = ACTIONS(2046), [anon_sym___stdcall] = ACTIONS(2046), [anon_sym___fastcall] = ACTIONS(2046), [anon_sym___thiscall] = ACTIONS(2046), [anon_sym___vectorcall] = ACTIONS(2046), [anon_sym_LBRACE] = ACTIONS(2048), [anon_sym_RBRACE] = ACTIONS(2048), [anon_sym_LBRACK] = ACTIONS(2046), [anon_sym_static] = ACTIONS(2046), [anon_sym_register] = ACTIONS(2046), [anon_sym_inline] = ACTIONS(2046), [anon_sym_thread_local] = ACTIONS(2046), [anon_sym_const] = ACTIONS(2046), [anon_sym_volatile] = ACTIONS(2046), [anon_sym_restrict] = ACTIONS(2046), [anon_sym__Atomic] = ACTIONS(2046), [anon_sym_mutable] = ACTIONS(2046), [anon_sym_constexpr] = ACTIONS(2046), [anon_sym_signed] = ACTIONS(2046), [anon_sym_unsigned] = ACTIONS(2046), [anon_sym_long] = ACTIONS(2046), [anon_sym_short] = ACTIONS(2046), [sym_primitive_type] = ACTIONS(2046), [anon_sym_enum] = ACTIONS(2046), [anon_sym_class] = ACTIONS(2046), [anon_sym_struct] = ACTIONS(2046), [anon_sym_union] = ACTIONS(2046), [anon_sym_if] = ACTIONS(2046), [anon_sym_switch] = ACTIONS(2046), [anon_sym_case] = ACTIONS(2046), [anon_sym_default] = ACTIONS(2046), [anon_sym_while] = ACTIONS(2046), [anon_sym_do] = ACTIONS(2046), [anon_sym_for] = ACTIONS(2046), [anon_sym_return] = ACTIONS(2046), [anon_sym_break] = ACTIONS(2046), [anon_sym_continue] = ACTIONS(2046), [anon_sym_goto] = ACTIONS(2046), [anon_sym_DASH_DASH] = ACTIONS(2048), [anon_sym_PLUS_PLUS] = ACTIONS(2048), [anon_sym_sizeof] = ACTIONS(2046), [sym_number_literal] = ACTIONS(2048), [anon_sym_L_SQUOTE] = ACTIONS(2048), [anon_sym_u_SQUOTE] = ACTIONS(2048), [anon_sym_U_SQUOTE] = ACTIONS(2048), [anon_sym_u8_SQUOTE] = ACTIONS(2048), [anon_sym_SQUOTE] = ACTIONS(2048), [anon_sym_L_DQUOTE] = ACTIONS(2048), [anon_sym_u_DQUOTE] = ACTIONS(2048), [anon_sym_U_DQUOTE] = ACTIONS(2048), [anon_sym_u8_DQUOTE] = ACTIONS(2048), [anon_sym_DQUOTE] = ACTIONS(2048), [sym_true] = ACTIONS(2046), [sym_false] = ACTIONS(2046), [sym_null] = ACTIONS(2046), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2046), [anon_sym_virtual] = ACTIONS(2046), [anon_sym_explicit] = ACTIONS(2046), [sym_auto] = ACTIONS(2046), [anon_sym_typename] = ACTIONS(2046), [anon_sym_template] = ACTIONS(2046), [anon_sym_operator] = ACTIONS(2046), [anon_sym_delete] = ACTIONS(2046), [anon_sym_throw] = ACTIONS(2046), [anon_sym_namespace] = ACTIONS(2046), [anon_sym_using] = ACTIONS(2046), [anon_sym_static_assert] = ACTIONS(2046), [anon_sym_co_return] = ACTIONS(2046), [anon_sym_co_yield] = ACTIONS(2046), [anon_sym_try] = ACTIONS(2046), [anon_sym_co_await] = ACTIONS(2046), [anon_sym_new] = ACTIONS(2046), [sym_this] = ACTIONS(2046), [sym_nullptr] = ACTIONS(2046), [sym_raw_string_literal] = ACTIONS(2048), }, [685] = { [sym_identifier] = ACTIONS(2050), [aux_sym_preproc_include_token1] = ACTIONS(2050), [aux_sym_preproc_def_token1] = ACTIONS(2050), [aux_sym_preproc_if_token1] = ACTIONS(2050), [aux_sym_preproc_ifdef_token1] = ACTIONS(2050), [aux_sym_preproc_ifdef_token2] = ACTIONS(2050), [sym_preproc_directive] = ACTIONS(2050), [anon_sym_LPAREN2] = ACTIONS(2052), [anon_sym_BANG] = ACTIONS(2052), [anon_sym_TILDE] = ACTIONS(2052), [anon_sym_DASH] = ACTIONS(2050), [anon_sym_PLUS] = ACTIONS(2050), [anon_sym_STAR] = ACTIONS(2052), [anon_sym_AMP_AMP] = ACTIONS(2052), [anon_sym_AMP] = ACTIONS(2050), [anon_sym_SEMI] = ACTIONS(2052), [anon_sym_typedef] = ACTIONS(2050), [anon_sym_extern] = ACTIONS(2050), [anon_sym___attribute__] = ACTIONS(2050), [anon_sym_COLON_COLON] = ACTIONS(2052), [anon_sym_LBRACK_LBRACK] = ACTIONS(2052), [anon_sym___declspec] = ACTIONS(2050), [anon_sym___based] = ACTIONS(2050), [anon_sym___cdecl] = ACTIONS(2050), [anon_sym___clrcall] = ACTIONS(2050), [anon_sym___stdcall] = ACTIONS(2050), [anon_sym___fastcall] = ACTIONS(2050), [anon_sym___thiscall] = ACTIONS(2050), [anon_sym___vectorcall] = ACTIONS(2050), [anon_sym_LBRACE] = ACTIONS(2052), [anon_sym_RBRACE] = ACTIONS(2052), [anon_sym_LBRACK] = ACTIONS(2050), [anon_sym_static] = ACTIONS(2050), [anon_sym_register] = ACTIONS(2050), [anon_sym_inline] = ACTIONS(2050), [anon_sym_thread_local] = ACTIONS(2050), [anon_sym_const] = ACTIONS(2050), [anon_sym_volatile] = ACTIONS(2050), [anon_sym_restrict] = ACTIONS(2050), [anon_sym__Atomic] = ACTIONS(2050), [anon_sym_mutable] = ACTIONS(2050), [anon_sym_constexpr] = ACTIONS(2050), [anon_sym_signed] = ACTIONS(2050), [anon_sym_unsigned] = ACTIONS(2050), [anon_sym_long] = ACTIONS(2050), [anon_sym_short] = ACTIONS(2050), [sym_primitive_type] = ACTIONS(2050), [anon_sym_enum] = ACTIONS(2050), [anon_sym_class] = ACTIONS(2050), [anon_sym_struct] = ACTIONS(2050), [anon_sym_union] = ACTIONS(2050), [anon_sym_if] = ACTIONS(2050), [anon_sym_switch] = ACTIONS(2050), [anon_sym_case] = ACTIONS(2050), [anon_sym_default] = ACTIONS(2050), [anon_sym_while] = ACTIONS(2050), [anon_sym_do] = ACTIONS(2050), [anon_sym_for] = ACTIONS(2050), [anon_sym_return] = ACTIONS(2050), [anon_sym_break] = ACTIONS(2050), [anon_sym_continue] = ACTIONS(2050), [anon_sym_goto] = ACTIONS(2050), [anon_sym_DASH_DASH] = ACTIONS(2052), [anon_sym_PLUS_PLUS] = ACTIONS(2052), [anon_sym_sizeof] = ACTIONS(2050), [sym_number_literal] = ACTIONS(2052), [anon_sym_L_SQUOTE] = ACTIONS(2052), [anon_sym_u_SQUOTE] = ACTIONS(2052), [anon_sym_U_SQUOTE] = ACTIONS(2052), [anon_sym_u8_SQUOTE] = ACTIONS(2052), [anon_sym_SQUOTE] = ACTIONS(2052), [anon_sym_L_DQUOTE] = ACTIONS(2052), [anon_sym_u_DQUOTE] = ACTIONS(2052), [anon_sym_U_DQUOTE] = ACTIONS(2052), [anon_sym_u8_DQUOTE] = ACTIONS(2052), [anon_sym_DQUOTE] = ACTIONS(2052), [sym_true] = ACTIONS(2050), [sym_false] = ACTIONS(2050), [sym_null] = ACTIONS(2050), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2050), [anon_sym_virtual] = ACTIONS(2050), [anon_sym_explicit] = ACTIONS(2050), [sym_auto] = ACTIONS(2050), [anon_sym_typename] = ACTIONS(2050), [anon_sym_template] = ACTIONS(2050), [anon_sym_operator] = ACTIONS(2050), [anon_sym_delete] = ACTIONS(2050), [anon_sym_throw] = ACTIONS(2050), [anon_sym_namespace] = ACTIONS(2050), [anon_sym_using] = ACTIONS(2050), [anon_sym_static_assert] = ACTIONS(2050), [anon_sym_co_return] = ACTIONS(2050), [anon_sym_co_yield] = ACTIONS(2050), [anon_sym_try] = ACTIONS(2050), [anon_sym_co_await] = ACTIONS(2050), [anon_sym_new] = ACTIONS(2050), [sym_this] = ACTIONS(2050), [sym_nullptr] = ACTIONS(2050), [sym_raw_string_literal] = ACTIONS(2052), }, [686] = { [ts_builtin_sym_end] = ACTIONS(2036), [sym_identifier] = ACTIONS(2034), [aux_sym_preproc_include_token1] = ACTIONS(2034), [aux_sym_preproc_def_token1] = ACTIONS(2034), [aux_sym_preproc_if_token1] = ACTIONS(2034), [aux_sym_preproc_ifdef_token1] = ACTIONS(2034), [aux_sym_preproc_ifdef_token2] = ACTIONS(2034), [sym_preproc_directive] = ACTIONS(2034), [anon_sym_LPAREN2] = ACTIONS(2036), [anon_sym_BANG] = ACTIONS(2036), [anon_sym_TILDE] = ACTIONS(2036), [anon_sym_DASH] = ACTIONS(2034), [anon_sym_PLUS] = ACTIONS(2034), [anon_sym_STAR] = ACTIONS(2036), [anon_sym_AMP_AMP] = ACTIONS(2036), [anon_sym_AMP] = ACTIONS(2034), [anon_sym_SEMI] = ACTIONS(2036), [anon_sym_typedef] = ACTIONS(2034), [anon_sym_extern] = ACTIONS(2034), [anon_sym___attribute__] = ACTIONS(2034), [anon_sym_COLON_COLON] = ACTIONS(2036), [anon_sym_LBRACK_LBRACK] = ACTIONS(2036), [anon_sym___declspec] = ACTIONS(2034), [anon_sym___based] = ACTIONS(2034), [anon_sym___cdecl] = ACTIONS(2034), [anon_sym___clrcall] = ACTIONS(2034), [anon_sym___stdcall] = ACTIONS(2034), [anon_sym___fastcall] = ACTIONS(2034), [anon_sym___thiscall] = ACTIONS(2034), [anon_sym___vectorcall] = ACTIONS(2034), [anon_sym_LBRACE] = ACTIONS(2036), [anon_sym_LBRACK] = ACTIONS(2034), [anon_sym_static] = ACTIONS(2034), [anon_sym_register] = ACTIONS(2034), [anon_sym_inline] = ACTIONS(2034), [anon_sym_thread_local] = ACTIONS(2034), [anon_sym_const] = ACTIONS(2034), [anon_sym_volatile] = ACTIONS(2034), [anon_sym_restrict] = ACTIONS(2034), [anon_sym__Atomic] = ACTIONS(2034), [anon_sym_mutable] = ACTIONS(2034), [anon_sym_constexpr] = ACTIONS(2034), [anon_sym_signed] = ACTIONS(2034), [anon_sym_unsigned] = ACTIONS(2034), [anon_sym_long] = ACTIONS(2034), [anon_sym_short] = ACTIONS(2034), [sym_primitive_type] = ACTIONS(2034), [anon_sym_enum] = ACTIONS(2034), [anon_sym_class] = ACTIONS(2034), [anon_sym_struct] = ACTIONS(2034), [anon_sym_union] = ACTIONS(2034), [anon_sym_if] = ACTIONS(2034), [anon_sym_switch] = ACTIONS(2034), [anon_sym_case] = ACTIONS(2034), [anon_sym_default] = ACTIONS(2034), [anon_sym_while] = ACTIONS(2034), [anon_sym_do] = ACTIONS(2034), [anon_sym_for] = ACTIONS(2034), [anon_sym_return] = ACTIONS(2034), [anon_sym_break] = ACTIONS(2034), [anon_sym_continue] = ACTIONS(2034), [anon_sym_goto] = ACTIONS(2034), [anon_sym_DASH_DASH] = ACTIONS(2036), [anon_sym_PLUS_PLUS] = ACTIONS(2036), [anon_sym_sizeof] = ACTIONS(2034), [sym_number_literal] = ACTIONS(2036), [anon_sym_L_SQUOTE] = ACTIONS(2036), [anon_sym_u_SQUOTE] = ACTIONS(2036), [anon_sym_U_SQUOTE] = ACTIONS(2036), [anon_sym_u8_SQUOTE] = ACTIONS(2036), [anon_sym_SQUOTE] = ACTIONS(2036), [anon_sym_L_DQUOTE] = ACTIONS(2036), [anon_sym_u_DQUOTE] = ACTIONS(2036), [anon_sym_U_DQUOTE] = ACTIONS(2036), [anon_sym_u8_DQUOTE] = ACTIONS(2036), [anon_sym_DQUOTE] = ACTIONS(2036), [sym_true] = ACTIONS(2034), [sym_false] = ACTIONS(2034), [sym_null] = ACTIONS(2034), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2034), [anon_sym_virtual] = ACTIONS(2034), [anon_sym_explicit] = ACTIONS(2034), [sym_auto] = ACTIONS(2034), [anon_sym_typename] = ACTIONS(2034), [anon_sym_template] = ACTIONS(2034), [anon_sym_operator] = ACTIONS(2034), [anon_sym_delete] = ACTIONS(2034), [anon_sym_throw] = ACTIONS(2034), [anon_sym_namespace] = ACTIONS(2034), [anon_sym_using] = ACTIONS(2034), [anon_sym_static_assert] = ACTIONS(2034), [anon_sym_co_return] = ACTIONS(2034), [anon_sym_co_yield] = ACTIONS(2034), [anon_sym_try] = ACTIONS(2034), [anon_sym_co_await] = ACTIONS(2034), [anon_sym_new] = ACTIONS(2034), [sym_this] = ACTIONS(2034), [sym_nullptr] = ACTIONS(2034), [sym_raw_string_literal] = ACTIONS(2036), }, [687] = { [ts_builtin_sym_end] = ACTIONS(2032), [sym_identifier] = ACTIONS(2030), [aux_sym_preproc_include_token1] = ACTIONS(2030), [aux_sym_preproc_def_token1] = ACTIONS(2030), [aux_sym_preproc_if_token1] = ACTIONS(2030), [aux_sym_preproc_ifdef_token1] = ACTIONS(2030), [aux_sym_preproc_ifdef_token2] = ACTIONS(2030), [sym_preproc_directive] = ACTIONS(2030), [anon_sym_LPAREN2] = ACTIONS(2032), [anon_sym_BANG] = ACTIONS(2032), [anon_sym_TILDE] = ACTIONS(2032), [anon_sym_DASH] = ACTIONS(2030), [anon_sym_PLUS] = ACTIONS(2030), [anon_sym_STAR] = ACTIONS(2032), [anon_sym_AMP_AMP] = ACTIONS(2032), [anon_sym_AMP] = ACTIONS(2030), [anon_sym_SEMI] = ACTIONS(2032), [anon_sym_typedef] = ACTIONS(2030), [anon_sym_extern] = ACTIONS(2030), [anon_sym___attribute__] = ACTIONS(2030), [anon_sym_COLON_COLON] = ACTIONS(2032), [anon_sym_LBRACK_LBRACK] = ACTIONS(2032), [anon_sym___declspec] = ACTIONS(2030), [anon_sym___based] = ACTIONS(2030), [anon_sym___cdecl] = ACTIONS(2030), [anon_sym___clrcall] = ACTIONS(2030), [anon_sym___stdcall] = ACTIONS(2030), [anon_sym___fastcall] = ACTIONS(2030), [anon_sym___thiscall] = ACTIONS(2030), [anon_sym___vectorcall] = ACTIONS(2030), [anon_sym_LBRACE] = ACTIONS(2032), [anon_sym_LBRACK] = ACTIONS(2030), [anon_sym_static] = ACTIONS(2030), [anon_sym_register] = ACTIONS(2030), [anon_sym_inline] = ACTIONS(2030), [anon_sym_thread_local] = ACTIONS(2030), [anon_sym_const] = ACTIONS(2030), [anon_sym_volatile] = ACTIONS(2030), [anon_sym_restrict] = ACTIONS(2030), [anon_sym__Atomic] = ACTIONS(2030), [anon_sym_mutable] = ACTIONS(2030), [anon_sym_constexpr] = ACTIONS(2030), [anon_sym_signed] = ACTIONS(2030), [anon_sym_unsigned] = ACTIONS(2030), [anon_sym_long] = ACTIONS(2030), [anon_sym_short] = ACTIONS(2030), [sym_primitive_type] = ACTIONS(2030), [anon_sym_enum] = ACTIONS(2030), [anon_sym_class] = ACTIONS(2030), [anon_sym_struct] = ACTIONS(2030), [anon_sym_union] = ACTIONS(2030), [anon_sym_if] = ACTIONS(2030), [anon_sym_switch] = ACTIONS(2030), [anon_sym_case] = ACTIONS(2030), [anon_sym_default] = ACTIONS(2030), [anon_sym_while] = ACTIONS(2030), [anon_sym_do] = ACTIONS(2030), [anon_sym_for] = ACTIONS(2030), [anon_sym_return] = ACTIONS(2030), [anon_sym_break] = ACTIONS(2030), [anon_sym_continue] = ACTIONS(2030), [anon_sym_goto] = ACTIONS(2030), [anon_sym_DASH_DASH] = ACTIONS(2032), [anon_sym_PLUS_PLUS] = ACTIONS(2032), [anon_sym_sizeof] = ACTIONS(2030), [sym_number_literal] = ACTIONS(2032), [anon_sym_L_SQUOTE] = ACTIONS(2032), [anon_sym_u_SQUOTE] = ACTIONS(2032), [anon_sym_U_SQUOTE] = ACTIONS(2032), [anon_sym_u8_SQUOTE] = ACTIONS(2032), [anon_sym_SQUOTE] = ACTIONS(2032), [anon_sym_L_DQUOTE] = ACTIONS(2032), [anon_sym_u_DQUOTE] = ACTIONS(2032), [anon_sym_U_DQUOTE] = ACTIONS(2032), [anon_sym_u8_DQUOTE] = ACTIONS(2032), [anon_sym_DQUOTE] = ACTIONS(2032), [sym_true] = ACTIONS(2030), [sym_false] = ACTIONS(2030), [sym_null] = ACTIONS(2030), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2030), [anon_sym_virtual] = ACTIONS(2030), [anon_sym_explicit] = ACTIONS(2030), [sym_auto] = ACTIONS(2030), [anon_sym_typename] = ACTIONS(2030), [anon_sym_template] = ACTIONS(2030), [anon_sym_operator] = ACTIONS(2030), [anon_sym_delete] = ACTIONS(2030), [anon_sym_throw] = ACTIONS(2030), [anon_sym_namespace] = ACTIONS(2030), [anon_sym_using] = ACTIONS(2030), [anon_sym_static_assert] = ACTIONS(2030), [anon_sym_co_return] = ACTIONS(2030), [anon_sym_co_yield] = ACTIONS(2030), [anon_sym_try] = ACTIONS(2030), [anon_sym_co_await] = ACTIONS(2030), [anon_sym_new] = ACTIONS(2030), [sym_this] = ACTIONS(2030), [sym_nullptr] = ACTIONS(2030), [sym_raw_string_literal] = ACTIONS(2032), }, [688] = { [ts_builtin_sym_end] = ACTIONS(2220), [sym_identifier] = ACTIONS(2218), [aux_sym_preproc_include_token1] = ACTIONS(2218), [aux_sym_preproc_def_token1] = ACTIONS(2218), [aux_sym_preproc_if_token1] = ACTIONS(2218), [aux_sym_preproc_ifdef_token1] = ACTIONS(2218), [aux_sym_preproc_ifdef_token2] = ACTIONS(2218), [sym_preproc_directive] = ACTIONS(2218), [anon_sym_LPAREN2] = ACTIONS(2220), [anon_sym_BANG] = ACTIONS(2220), [anon_sym_TILDE] = ACTIONS(2220), [anon_sym_DASH] = ACTIONS(2218), [anon_sym_PLUS] = ACTIONS(2218), [anon_sym_STAR] = ACTIONS(2220), [anon_sym_AMP_AMP] = ACTIONS(2220), [anon_sym_AMP] = ACTIONS(2218), [anon_sym_SEMI] = ACTIONS(2220), [anon_sym_typedef] = ACTIONS(2218), [anon_sym_extern] = ACTIONS(2218), [anon_sym___attribute__] = ACTIONS(2218), [anon_sym_COLON_COLON] = ACTIONS(2220), [anon_sym_LBRACK_LBRACK] = ACTIONS(2220), [anon_sym___declspec] = ACTIONS(2218), [anon_sym___based] = ACTIONS(2218), [anon_sym___cdecl] = ACTIONS(2218), [anon_sym___clrcall] = ACTIONS(2218), [anon_sym___stdcall] = ACTIONS(2218), [anon_sym___fastcall] = ACTIONS(2218), [anon_sym___thiscall] = ACTIONS(2218), [anon_sym___vectorcall] = ACTIONS(2218), [anon_sym_LBRACE] = ACTIONS(2220), [anon_sym_LBRACK] = ACTIONS(2218), [anon_sym_static] = ACTIONS(2218), [anon_sym_register] = ACTIONS(2218), [anon_sym_inline] = ACTIONS(2218), [anon_sym_thread_local] = ACTIONS(2218), [anon_sym_const] = ACTIONS(2218), [anon_sym_volatile] = ACTIONS(2218), [anon_sym_restrict] = ACTIONS(2218), [anon_sym__Atomic] = ACTIONS(2218), [anon_sym_mutable] = ACTIONS(2218), [anon_sym_constexpr] = ACTIONS(2218), [anon_sym_signed] = ACTIONS(2218), [anon_sym_unsigned] = ACTIONS(2218), [anon_sym_long] = ACTIONS(2218), [anon_sym_short] = ACTIONS(2218), [sym_primitive_type] = ACTIONS(2218), [anon_sym_enum] = ACTIONS(2218), [anon_sym_class] = ACTIONS(2218), [anon_sym_struct] = ACTIONS(2218), [anon_sym_union] = ACTIONS(2218), [anon_sym_if] = ACTIONS(2218), [anon_sym_switch] = ACTIONS(2218), [anon_sym_case] = ACTIONS(2218), [anon_sym_default] = ACTIONS(2218), [anon_sym_while] = ACTIONS(2218), [anon_sym_do] = ACTIONS(2218), [anon_sym_for] = ACTIONS(2218), [anon_sym_return] = ACTIONS(2218), [anon_sym_break] = ACTIONS(2218), [anon_sym_continue] = ACTIONS(2218), [anon_sym_goto] = ACTIONS(2218), [anon_sym_DASH_DASH] = ACTIONS(2220), [anon_sym_PLUS_PLUS] = ACTIONS(2220), [anon_sym_sizeof] = ACTIONS(2218), [sym_number_literal] = ACTIONS(2220), [anon_sym_L_SQUOTE] = ACTIONS(2220), [anon_sym_u_SQUOTE] = ACTIONS(2220), [anon_sym_U_SQUOTE] = ACTIONS(2220), [anon_sym_u8_SQUOTE] = ACTIONS(2220), [anon_sym_SQUOTE] = ACTIONS(2220), [anon_sym_L_DQUOTE] = ACTIONS(2220), [anon_sym_u_DQUOTE] = ACTIONS(2220), [anon_sym_U_DQUOTE] = ACTIONS(2220), [anon_sym_u8_DQUOTE] = ACTIONS(2220), [anon_sym_DQUOTE] = ACTIONS(2220), [sym_true] = ACTIONS(2218), [sym_false] = ACTIONS(2218), [sym_null] = ACTIONS(2218), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2218), [anon_sym_virtual] = ACTIONS(2218), [anon_sym_explicit] = ACTIONS(2218), [sym_auto] = ACTIONS(2218), [anon_sym_typename] = ACTIONS(2218), [anon_sym_template] = ACTIONS(2218), [anon_sym_operator] = ACTIONS(2218), [anon_sym_delete] = ACTIONS(2218), [anon_sym_throw] = ACTIONS(2218), [anon_sym_namespace] = ACTIONS(2218), [anon_sym_using] = ACTIONS(2218), [anon_sym_static_assert] = ACTIONS(2218), [anon_sym_co_return] = ACTIONS(2218), [anon_sym_co_yield] = ACTIONS(2218), [anon_sym_try] = ACTIONS(2218), [anon_sym_co_await] = ACTIONS(2218), [anon_sym_new] = ACTIONS(2218), [sym_this] = ACTIONS(2218), [sym_nullptr] = ACTIONS(2218), [sym_raw_string_literal] = ACTIONS(2220), }, [689] = { [ts_builtin_sym_end] = ACTIONS(2212), [sym_identifier] = ACTIONS(2210), [aux_sym_preproc_include_token1] = ACTIONS(2210), [aux_sym_preproc_def_token1] = ACTIONS(2210), [aux_sym_preproc_if_token1] = ACTIONS(2210), [aux_sym_preproc_ifdef_token1] = ACTIONS(2210), [aux_sym_preproc_ifdef_token2] = ACTIONS(2210), [sym_preproc_directive] = ACTIONS(2210), [anon_sym_LPAREN2] = ACTIONS(2212), [anon_sym_BANG] = ACTIONS(2212), [anon_sym_TILDE] = ACTIONS(2212), [anon_sym_DASH] = ACTIONS(2210), [anon_sym_PLUS] = ACTIONS(2210), [anon_sym_STAR] = ACTIONS(2212), [anon_sym_AMP_AMP] = ACTIONS(2212), [anon_sym_AMP] = ACTIONS(2210), [anon_sym_SEMI] = ACTIONS(2212), [anon_sym_typedef] = ACTIONS(2210), [anon_sym_extern] = ACTIONS(2210), [anon_sym___attribute__] = ACTIONS(2210), [anon_sym_COLON_COLON] = ACTIONS(2212), [anon_sym_LBRACK_LBRACK] = ACTIONS(2212), [anon_sym___declspec] = ACTIONS(2210), [anon_sym___based] = ACTIONS(2210), [anon_sym___cdecl] = ACTIONS(2210), [anon_sym___clrcall] = ACTIONS(2210), [anon_sym___stdcall] = ACTIONS(2210), [anon_sym___fastcall] = ACTIONS(2210), [anon_sym___thiscall] = ACTIONS(2210), [anon_sym___vectorcall] = ACTIONS(2210), [anon_sym_LBRACE] = ACTIONS(2212), [anon_sym_LBRACK] = ACTIONS(2210), [anon_sym_static] = ACTIONS(2210), [anon_sym_register] = ACTIONS(2210), [anon_sym_inline] = ACTIONS(2210), [anon_sym_thread_local] = ACTIONS(2210), [anon_sym_const] = ACTIONS(2210), [anon_sym_volatile] = ACTIONS(2210), [anon_sym_restrict] = ACTIONS(2210), [anon_sym__Atomic] = ACTIONS(2210), [anon_sym_mutable] = ACTIONS(2210), [anon_sym_constexpr] = ACTIONS(2210), [anon_sym_signed] = ACTIONS(2210), [anon_sym_unsigned] = ACTIONS(2210), [anon_sym_long] = ACTIONS(2210), [anon_sym_short] = ACTIONS(2210), [sym_primitive_type] = ACTIONS(2210), [anon_sym_enum] = ACTIONS(2210), [anon_sym_class] = ACTIONS(2210), [anon_sym_struct] = ACTIONS(2210), [anon_sym_union] = ACTIONS(2210), [anon_sym_if] = ACTIONS(2210), [anon_sym_switch] = ACTIONS(2210), [anon_sym_case] = ACTIONS(2210), [anon_sym_default] = ACTIONS(2210), [anon_sym_while] = ACTIONS(2210), [anon_sym_do] = ACTIONS(2210), [anon_sym_for] = ACTIONS(2210), [anon_sym_return] = ACTIONS(2210), [anon_sym_break] = ACTIONS(2210), [anon_sym_continue] = ACTIONS(2210), [anon_sym_goto] = ACTIONS(2210), [anon_sym_DASH_DASH] = ACTIONS(2212), [anon_sym_PLUS_PLUS] = ACTIONS(2212), [anon_sym_sizeof] = ACTIONS(2210), [sym_number_literal] = ACTIONS(2212), [anon_sym_L_SQUOTE] = ACTIONS(2212), [anon_sym_u_SQUOTE] = ACTIONS(2212), [anon_sym_U_SQUOTE] = ACTIONS(2212), [anon_sym_u8_SQUOTE] = ACTIONS(2212), [anon_sym_SQUOTE] = ACTIONS(2212), [anon_sym_L_DQUOTE] = ACTIONS(2212), [anon_sym_u_DQUOTE] = ACTIONS(2212), [anon_sym_U_DQUOTE] = ACTIONS(2212), [anon_sym_u8_DQUOTE] = ACTIONS(2212), [anon_sym_DQUOTE] = ACTIONS(2212), [sym_true] = ACTIONS(2210), [sym_false] = ACTIONS(2210), [sym_null] = ACTIONS(2210), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2210), [anon_sym_virtual] = ACTIONS(2210), [anon_sym_explicit] = ACTIONS(2210), [sym_auto] = ACTIONS(2210), [anon_sym_typename] = ACTIONS(2210), [anon_sym_template] = ACTIONS(2210), [anon_sym_operator] = ACTIONS(2210), [anon_sym_delete] = ACTIONS(2210), [anon_sym_throw] = ACTIONS(2210), [anon_sym_namespace] = ACTIONS(2210), [anon_sym_using] = ACTIONS(2210), [anon_sym_static_assert] = ACTIONS(2210), [anon_sym_co_return] = ACTIONS(2210), [anon_sym_co_yield] = ACTIONS(2210), [anon_sym_try] = ACTIONS(2210), [anon_sym_co_await] = ACTIONS(2210), [anon_sym_new] = ACTIONS(2210), [sym_this] = ACTIONS(2210), [sym_nullptr] = ACTIONS(2210), [sym_raw_string_literal] = ACTIONS(2212), }, [690] = { [ts_builtin_sym_end] = ACTIONS(2136), [sym_identifier] = ACTIONS(2134), [aux_sym_preproc_include_token1] = ACTIONS(2134), [aux_sym_preproc_def_token1] = ACTIONS(2134), [aux_sym_preproc_if_token1] = ACTIONS(2134), [aux_sym_preproc_ifdef_token1] = ACTIONS(2134), [aux_sym_preproc_ifdef_token2] = ACTIONS(2134), [sym_preproc_directive] = ACTIONS(2134), [anon_sym_LPAREN2] = ACTIONS(2136), [anon_sym_BANG] = ACTIONS(2136), [anon_sym_TILDE] = ACTIONS(2136), [anon_sym_DASH] = ACTIONS(2134), [anon_sym_PLUS] = ACTIONS(2134), [anon_sym_STAR] = ACTIONS(2136), [anon_sym_AMP_AMP] = ACTIONS(2136), [anon_sym_AMP] = ACTIONS(2134), [anon_sym_SEMI] = ACTIONS(2136), [anon_sym_typedef] = ACTIONS(2134), [anon_sym_extern] = ACTIONS(2134), [anon_sym___attribute__] = ACTIONS(2134), [anon_sym_COLON_COLON] = ACTIONS(2136), [anon_sym_LBRACK_LBRACK] = ACTIONS(2136), [anon_sym___declspec] = ACTIONS(2134), [anon_sym___based] = ACTIONS(2134), [anon_sym___cdecl] = ACTIONS(2134), [anon_sym___clrcall] = ACTIONS(2134), [anon_sym___stdcall] = ACTIONS(2134), [anon_sym___fastcall] = ACTIONS(2134), [anon_sym___thiscall] = ACTIONS(2134), [anon_sym___vectorcall] = ACTIONS(2134), [anon_sym_LBRACE] = ACTIONS(2136), [anon_sym_LBRACK] = ACTIONS(2134), [anon_sym_static] = ACTIONS(2134), [anon_sym_register] = ACTIONS(2134), [anon_sym_inline] = ACTIONS(2134), [anon_sym_thread_local] = ACTIONS(2134), [anon_sym_const] = ACTIONS(2134), [anon_sym_volatile] = ACTIONS(2134), [anon_sym_restrict] = ACTIONS(2134), [anon_sym__Atomic] = ACTIONS(2134), [anon_sym_mutable] = ACTIONS(2134), [anon_sym_constexpr] = ACTIONS(2134), [anon_sym_signed] = ACTIONS(2134), [anon_sym_unsigned] = ACTIONS(2134), [anon_sym_long] = ACTIONS(2134), [anon_sym_short] = ACTIONS(2134), [sym_primitive_type] = ACTIONS(2134), [anon_sym_enum] = ACTIONS(2134), [anon_sym_class] = ACTIONS(2134), [anon_sym_struct] = ACTIONS(2134), [anon_sym_union] = ACTIONS(2134), [anon_sym_if] = ACTIONS(2134), [anon_sym_switch] = ACTIONS(2134), [anon_sym_case] = ACTIONS(2134), [anon_sym_default] = ACTIONS(2134), [anon_sym_while] = ACTIONS(2134), [anon_sym_do] = ACTIONS(2134), [anon_sym_for] = ACTIONS(2134), [anon_sym_return] = ACTIONS(2134), [anon_sym_break] = ACTIONS(2134), [anon_sym_continue] = ACTIONS(2134), [anon_sym_goto] = ACTIONS(2134), [anon_sym_DASH_DASH] = ACTIONS(2136), [anon_sym_PLUS_PLUS] = ACTIONS(2136), [anon_sym_sizeof] = ACTIONS(2134), [sym_number_literal] = ACTIONS(2136), [anon_sym_L_SQUOTE] = ACTIONS(2136), [anon_sym_u_SQUOTE] = ACTIONS(2136), [anon_sym_U_SQUOTE] = ACTIONS(2136), [anon_sym_u8_SQUOTE] = ACTIONS(2136), [anon_sym_SQUOTE] = ACTIONS(2136), [anon_sym_L_DQUOTE] = ACTIONS(2136), [anon_sym_u_DQUOTE] = ACTIONS(2136), [anon_sym_U_DQUOTE] = ACTIONS(2136), [anon_sym_u8_DQUOTE] = ACTIONS(2136), [anon_sym_DQUOTE] = ACTIONS(2136), [sym_true] = ACTIONS(2134), [sym_false] = ACTIONS(2134), [sym_null] = ACTIONS(2134), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2134), [anon_sym_virtual] = ACTIONS(2134), [anon_sym_explicit] = ACTIONS(2134), [sym_auto] = ACTIONS(2134), [anon_sym_typename] = ACTIONS(2134), [anon_sym_template] = ACTIONS(2134), [anon_sym_operator] = ACTIONS(2134), [anon_sym_delete] = ACTIONS(2134), [anon_sym_throw] = ACTIONS(2134), [anon_sym_namespace] = ACTIONS(2134), [anon_sym_using] = ACTIONS(2134), [anon_sym_static_assert] = ACTIONS(2134), [anon_sym_co_return] = ACTIONS(2134), [anon_sym_co_yield] = ACTIONS(2134), [anon_sym_try] = ACTIONS(2134), [anon_sym_co_await] = ACTIONS(2134), [anon_sym_new] = ACTIONS(2134), [sym_this] = ACTIONS(2134), [sym_nullptr] = ACTIONS(2134), [sym_raw_string_literal] = ACTIONS(2136), }, [691] = { [ts_builtin_sym_end] = ACTIONS(2148), [sym_identifier] = ACTIONS(2146), [aux_sym_preproc_include_token1] = ACTIONS(2146), [aux_sym_preproc_def_token1] = ACTIONS(2146), [aux_sym_preproc_if_token1] = ACTIONS(2146), [aux_sym_preproc_ifdef_token1] = ACTIONS(2146), [aux_sym_preproc_ifdef_token2] = ACTIONS(2146), [sym_preproc_directive] = ACTIONS(2146), [anon_sym_LPAREN2] = ACTIONS(2148), [anon_sym_BANG] = ACTIONS(2148), [anon_sym_TILDE] = ACTIONS(2148), [anon_sym_DASH] = ACTIONS(2146), [anon_sym_PLUS] = ACTIONS(2146), [anon_sym_STAR] = ACTIONS(2148), [anon_sym_AMP_AMP] = ACTIONS(2148), [anon_sym_AMP] = ACTIONS(2146), [anon_sym_SEMI] = ACTIONS(2148), [anon_sym_typedef] = ACTIONS(2146), [anon_sym_extern] = ACTIONS(2146), [anon_sym___attribute__] = ACTIONS(2146), [anon_sym_COLON_COLON] = ACTIONS(2148), [anon_sym_LBRACK_LBRACK] = ACTIONS(2148), [anon_sym___declspec] = ACTIONS(2146), [anon_sym___based] = ACTIONS(2146), [anon_sym___cdecl] = ACTIONS(2146), [anon_sym___clrcall] = ACTIONS(2146), [anon_sym___stdcall] = ACTIONS(2146), [anon_sym___fastcall] = ACTIONS(2146), [anon_sym___thiscall] = ACTIONS(2146), [anon_sym___vectorcall] = ACTIONS(2146), [anon_sym_LBRACE] = ACTIONS(2148), [anon_sym_LBRACK] = ACTIONS(2146), [anon_sym_static] = ACTIONS(2146), [anon_sym_register] = ACTIONS(2146), [anon_sym_inline] = ACTIONS(2146), [anon_sym_thread_local] = ACTIONS(2146), [anon_sym_const] = ACTIONS(2146), [anon_sym_volatile] = ACTIONS(2146), [anon_sym_restrict] = ACTIONS(2146), [anon_sym__Atomic] = ACTIONS(2146), [anon_sym_mutable] = ACTIONS(2146), [anon_sym_constexpr] = ACTIONS(2146), [anon_sym_signed] = ACTIONS(2146), [anon_sym_unsigned] = ACTIONS(2146), [anon_sym_long] = ACTIONS(2146), [anon_sym_short] = ACTIONS(2146), [sym_primitive_type] = ACTIONS(2146), [anon_sym_enum] = ACTIONS(2146), [anon_sym_class] = ACTIONS(2146), [anon_sym_struct] = ACTIONS(2146), [anon_sym_union] = ACTIONS(2146), [anon_sym_if] = ACTIONS(2146), [anon_sym_switch] = ACTIONS(2146), [anon_sym_case] = ACTIONS(2146), [anon_sym_default] = ACTIONS(2146), [anon_sym_while] = ACTIONS(2146), [anon_sym_do] = ACTIONS(2146), [anon_sym_for] = ACTIONS(2146), [anon_sym_return] = ACTIONS(2146), [anon_sym_break] = ACTIONS(2146), [anon_sym_continue] = ACTIONS(2146), [anon_sym_goto] = ACTIONS(2146), [anon_sym_DASH_DASH] = ACTIONS(2148), [anon_sym_PLUS_PLUS] = ACTIONS(2148), [anon_sym_sizeof] = ACTIONS(2146), [sym_number_literal] = ACTIONS(2148), [anon_sym_L_SQUOTE] = ACTIONS(2148), [anon_sym_u_SQUOTE] = ACTIONS(2148), [anon_sym_U_SQUOTE] = ACTIONS(2148), [anon_sym_u8_SQUOTE] = ACTIONS(2148), [anon_sym_SQUOTE] = ACTIONS(2148), [anon_sym_L_DQUOTE] = ACTIONS(2148), [anon_sym_u_DQUOTE] = ACTIONS(2148), [anon_sym_U_DQUOTE] = ACTIONS(2148), [anon_sym_u8_DQUOTE] = ACTIONS(2148), [anon_sym_DQUOTE] = ACTIONS(2148), [sym_true] = ACTIONS(2146), [sym_false] = ACTIONS(2146), [sym_null] = ACTIONS(2146), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2146), [anon_sym_virtual] = ACTIONS(2146), [anon_sym_explicit] = ACTIONS(2146), [sym_auto] = ACTIONS(2146), [anon_sym_typename] = ACTIONS(2146), [anon_sym_template] = ACTIONS(2146), [anon_sym_operator] = ACTIONS(2146), [anon_sym_delete] = ACTIONS(2146), [anon_sym_throw] = ACTIONS(2146), [anon_sym_namespace] = ACTIONS(2146), [anon_sym_using] = ACTIONS(2146), [anon_sym_static_assert] = ACTIONS(2146), [anon_sym_co_return] = ACTIONS(2146), [anon_sym_co_yield] = ACTIONS(2146), [anon_sym_try] = ACTIONS(2146), [anon_sym_co_await] = ACTIONS(2146), [anon_sym_new] = ACTIONS(2146), [sym_this] = ACTIONS(2146), [sym_nullptr] = ACTIONS(2146), [sym_raw_string_literal] = ACTIONS(2148), }, [692] = { [ts_builtin_sym_end] = ACTIONS(2180), [sym_identifier] = ACTIONS(2178), [aux_sym_preproc_include_token1] = ACTIONS(2178), [aux_sym_preproc_def_token1] = ACTIONS(2178), [aux_sym_preproc_if_token1] = ACTIONS(2178), [aux_sym_preproc_ifdef_token1] = ACTIONS(2178), [aux_sym_preproc_ifdef_token2] = ACTIONS(2178), [sym_preproc_directive] = ACTIONS(2178), [anon_sym_LPAREN2] = ACTIONS(2180), [anon_sym_BANG] = ACTIONS(2180), [anon_sym_TILDE] = ACTIONS(2180), [anon_sym_DASH] = ACTIONS(2178), [anon_sym_PLUS] = ACTIONS(2178), [anon_sym_STAR] = ACTIONS(2180), [anon_sym_AMP_AMP] = ACTIONS(2180), [anon_sym_AMP] = ACTIONS(2178), [anon_sym_SEMI] = ACTIONS(2180), [anon_sym_typedef] = ACTIONS(2178), [anon_sym_extern] = ACTIONS(2178), [anon_sym___attribute__] = ACTIONS(2178), [anon_sym_COLON_COLON] = ACTIONS(2180), [anon_sym_LBRACK_LBRACK] = ACTIONS(2180), [anon_sym___declspec] = ACTIONS(2178), [anon_sym___based] = ACTIONS(2178), [anon_sym___cdecl] = ACTIONS(2178), [anon_sym___clrcall] = ACTIONS(2178), [anon_sym___stdcall] = ACTIONS(2178), [anon_sym___fastcall] = ACTIONS(2178), [anon_sym___thiscall] = ACTIONS(2178), [anon_sym___vectorcall] = ACTIONS(2178), [anon_sym_LBRACE] = ACTIONS(2180), [anon_sym_LBRACK] = ACTIONS(2178), [anon_sym_static] = ACTIONS(2178), [anon_sym_register] = ACTIONS(2178), [anon_sym_inline] = ACTIONS(2178), [anon_sym_thread_local] = ACTIONS(2178), [anon_sym_const] = ACTIONS(2178), [anon_sym_volatile] = ACTIONS(2178), [anon_sym_restrict] = ACTIONS(2178), [anon_sym__Atomic] = ACTIONS(2178), [anon_sym_mutable] = ACTIONS(2178), [anon_sym_constexpr] = ACTIONS(2178), [anon_sym_signed] = ACTIONS(2178), [anon_sym_unsigned] = ACTIONS(2178), [anon_sym_long] = ACTIONS(2178), [anon_sym_short] = ACTIONS(2178), [sym_primitive_type] = ACTIONS(2178), [anon_sym_enum] = ACTIONS(2178), [anon_sym_class] = ACTIONS(2178), [anon_sym_struct] = ACTIONS(2178), [anon_sym_union] = ACTIONS(2178), [anon_sym_if] = ACTIONS(2178), [anon_sym_switch] = ACTIONS(2178), [anon_sym_case] = ACTIONS(2178), [anon_sym_default] = ACTIONS(2178), [anon_sym_while] = ACTIONS(2178), [anon_sym_do] = ACTIONS(2178), [anon_sym_for] = ACTIONS(2178), [anon_sym_return] = ACTIONS(2178), [anon_sym_break] = ACTIONS(2178), [anon_sym_continue] = ACTIONS(2178), [anon_sym_goto] = ACTIONS(2178), [anon_sym_DASH_DASH] = ACTIONS(2180), [anon_sym_PLUS_PLUS] = ACTIONS(2180), [anon_sym_sizeof] = ACTIONS(2178), [sym_number_literal] = ACTIONS(2180), [anon_sym_L_SQUOTE] = ACTIONS(2180), [anon_sym_u_SQUOTE] = ACTIONS(2180), [anon_sym_U_SQUOTE] = ACTIONS(2180), [anon_sym_u8_SQUOTE] = ACTIONS(2180), [anon_sym_SQUOTE] = ACTIONS(2180), [anon_sym_L_DQUOTE] = ACTIONS(2180), [anon_sym_u_DQUOTE] = ACTIONS(2180), [anon_sym_U_DQUOTE] = ACTIONS(2180), [anon_sym_u8_DQUOTE] = ACTIONS(2180), [anon_sym_DQUOTE] = ACTIONS(2180), [sym_true] = ACTIONS(2178), [sym_false] = ACTIONS(2178), [sym_null] = ACTIONS(2178), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2178), [anon_sym_virtual] = ACTIONS(2178), [anon_sym_explicit] = ACTIONS(2178), [sym_auto] = ACTIONS(2178), [anon_sym_typename] = ACTIONS(2178), [anon_sym_template] = ACTIONS(2178), [anon_sym_operator] = ACTIONS(2178), [anon_sym_delete] = ACTIONS(2178), [anon_sym_throw] = ACTIONS(2178), [anon_sym_namespace] = ACTIONS(2178), [anon_sym_using] = ACTIONS(2178), [anon_sym_static_assert] = ACTIONS(2178), [anon_sym_co_return] = ACTIONS(2178), [anon_sym_co_yield] = ACTIONS(2178), [anon_sym_try] = ACTIONS(2178), [anon_sym_co_await] = ACTIONS(2178), [anon_sym_new] = ACTIONS(2178), [sym_this] = ACTIONS(2178), [sym_nullptr] = ACTIONS(2178), [sym_raw_string_literal] = ACTIONS(2180), }, [693] = { [ts_builtin_sym_end] = ACTIONS(2176), [sym_identifier] = ACTIONS(2174), [aux_sym_preproc_include_token1] = ACTIONS(2174), [aux_sym_preproc_def_token1] = ACTIONS(2174), [aux_sym_preproc_if_token1] = ACTIONS(2174), [aux_sym_preproc_ifdef_token1] = ACTIONS(2174), [aux_sym_preproc_ifdef_token2] = ACTIONS(2174), [sym_preproc_directive] = ACTIONS(2174), [anon_sym_LPAREN2] = ACTIONS(2176), [anon_sym_BANG] = ACTIONS(2176), [anon_sym_TILDE] = ACTIONS(2176), [anon_sym_DASH] = ACTIONS(2174), [anon_sym_PLUS] = ACTIONS(2174), [anon_sym_STAR] = ACTIONS(2176), [anon_sym_AMP_AMP] = ACTIONS(2176), [anon_sym_AMP] = ACTIONS(2174), [anon_sym_SEMI] = ACTIONS(2176), [anon_sym_typedef] = ACTIONS(2174), [anon_sym_extern] = ACTIONS(2174), [anon_sym___attribute__] = ACTIONS(2174), [anon_sym_COLON_COLON] = ACTIONS(2176), [anon_sym_LBRACK_LBRACK] = ACTIONS(2176), [anon_sym___declspec] = ACTIONS(2174), [anon_sym___based] = ACTIONS(2174), [anon_sym___cdecl] = ACTIONS(2174), [anon_sym___clrcall] = ACTIONS(2174), [anon_sym___stdcall] = ACTIONS(2174), [anon_sym___fastcall] = ACTIONS(2174), [anon_sym___thiscall] = ACTIONS(2174), [anon_sym___vectorcall] = ACTIONS(2174), [anon_sym_LBRACE] = ACTIONS(2176), [anon_sym_LBRACK] = ACTIONS(2174), [anon_sym_static] = ACTIONS(2174), [anon_sym_register] = ACTIONS(2174), [anon_sym_inline] = ACTIONS(2174), [anon_sym_thread_local] = ACTIONS(2174), [anon_sym_const] = ACTIONS(2174), [anon_sym_volatile] = ACTIONS(2174), [anon_sym_restrict] = ACTIONS(2174), [anon_sym__Atomic] = ACTIONS(2174), [anon_sym_mutable] = ACTIONS(2174), [anon_sym_constexpr] = ACTIONS(2174), [anon_sym_signed] = ACTIONS(2174), [anon_sym_unsigned] = ACTIONS(2174), [anon_sym_long] = ACTIONS(2174), [anon_sym_short] = ACTIONS(2174), [sym_primitive_type] = ACTIONS(2174), [anon_sym_enum] = ACTIONS(2174), [anon_sym_class] = ACTIONS(2174), [anon_sym_struct] = ACTIONS(2174), [anon_sym_union] = ACTIONS(2174), [anon_sym_if] = ACTIONS(2174), [anon_sym_switch] = ACTIONS(2174), [anon_sym_case] = ACTIONS(2174), [anon_sym_default] = ACTIONS(2174), [anon_sym_while] = ACTIONS(2174), [anon_sym_do] = ACTIONS(2174), [anon_sym_for] = ACTIONS(2174), [anon_sym_return] = ACTIONS(2174), [anon_sym_break] = ACTIONS(2174), [anon_sym_continue] = ACTIONS(2174), [anon_sym_goto] = ACTIONS(2174), [anon_sym_DASH_DASH] = ACTIONS(2176), [anon_sym_PLUS_PLUS] = ACTIONS(2176), [anon_sym_sizeof] = ACTIONS(2174), [sym_number_literal] = ACTIONS(2176), [anon_sym_L_SQUOTE] = ACTIONS(2176), [anon_sym_u_SQUOTE] = ACTIONS(2176), [anon_sym_U_SQUOTE] = ACTIONS(2176), [anon_sym_u8_SQUOTE] = ACTIONS(2176), [anon_sym_SQUOTE] = ACTIONS(2176), [anon_sym_L_DQUOTE] = ACTIONS(2176), [anon_sym_u_DQUOTE] = ACTIONS(2176), [anon_sym_U_DQUOTE] = ACTIONS(2176), [anon_sym_u8_DQUOTE] = ACTIONS(2176), [anon_sym_DQUOTE] = ACTIONS(2176), [sym_true] = ACTIONS(2174), [sym_false] = ACTIONS(2174), [sym_null] = ACTIONS(2174), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2174), [anon_sym_virtual] = ACTIONS(2174), [anon_sym_explicit] = ACTIONS(2174), [sym_auto] = ACTIONS(2174), [anon_sym_typename] = ACTIONS(2174), [anon_sym_template] = ACTIONS(2174), [anon_sym_operator] = ACTIONS(2174), [anon_sym_delete] = ACTIONS(2174), [anon_sym_throw] = ACTIONS(2174), [anon_sym_namespace] = ACTIONS(2174), [anon_sym_using] = ACTIONS(2174), [anon_sym_static_assert] = ACTIONS(2174), [anon_sym_co_return] = ACTIONS(2174), [anon_sym_co_yield] = ACTIONS(2174), [anon_sym_try] = ACTIONS(2174), [anon_sym_co_await] = ACTIONS(2174), [anon_sym_new] = ACTIONS(2174), [sym_this] = ACTIONS(2174), [sym_nullptr] = ACTIONS(2174), [sym_raw_string_literal] = ACTIONS(2176), }, [694] = { [sym_identifier] = ACTIONS(2054), [aux_sym_preproc_include_token1] = ACTIONS(2054), [aux_sym_preproc_def_token1] = ACTIONS(2054), [aux_sym_preproc_if_token1] = ACTIONS(2054), [aux_sym_preproc_ifdef_token1] = ACTIONS(2054), [aux_sym_preproc_ifdef_token2] = ACTIONS(2054), [sym_preproc_directive] = ACTIONS(2054), [anon_sym_LPAREN2] = ACTIONS(2056), [anon_sym_BANG] = ACTIONS(2056), [anon_sym_TILDE] = ACTIONS(2056), [anon_sym_DASH] = ACTIONS(2054), [anon_sym_PLUS] = ACTIONS(2054), [anon_sym_STAR] = ACTIONS(2056), [anon_sym_AMP_AMP] = ACTIONS(2056), [anon_sym_AMP] = ACTIONS(2054), [anon_sym_SEMI] = ACTIONS(2056), [anon_sym_typedef] = ACTIONS(2054), [anon_sym_extern] = ACTIONS(2054), [anon_sym___attribute__] = ACTIONS(2054), [anon_sym_COLON_COLON] = ACTIONS(2056), [anon_sym_LBRACK_LBRACK] = ACTIONS(2056), [anon_sym___declspec] = ACTIONS(2054), [anon_sym___based] = ACTIONS(2054), [anon_sym___cdecl] = ACTIONS(2054), [anon_sym___clrcall] = ACTIONS(2054), [anon_sym___stdcall] = ACTIONS(2054), [anon_sym___fastcall] = ACTIONS(2054), [anon_sym___thiscall] = ACTIONS(2054), [anon_sym___vectorcall] = ACTIONS(2054), [anon_sym_LBRACE] = ACTIONS(2056), [anon_sym_RBRACE] = ACTIONS(2056), [anon_sym_LBRACK] = ACTIONS(2054), [anon_sym_static] = ACTIONS(2054), [anon_sym_register] = ACTIONS(2054), [anon_sym_inline] = ACTIONS(2054), [anon_sym_thread_local] = ACTIONS(2054), [anon_sym_const] = ACTIONS(2054), [anon_sym_volatile] = ACTIONS(2054), [anon_sym_restrict] = ACTIONS(2054), [anon_sym__Atomic] = ACTIONS(2054), [anon_sym_mutable] = ACTIONS(2054), [anon_sym_constexpr] = ACTIONS(2054), [anon_sym_signed] = ACTIONS(2054), [anon_sym_unsigned] = ACTIONS(2054), [anon_sym_long] = ACTIONS(2054), [anon_sym_short] = ACTIONS(2054), [sym_primitive_type] = ACTIONS(2054), [anon_sym_enum] = ACTIONS(2054), [anon_sym_class] = ACTIONS(2054), [anon_sym_struct] = ACTIONS(2054), [anon_sym_union] = ACTIONS(2054), [anon_sym_if] = ACTIONS(2054), [anon_sym_switch] = ACTIONS(2054), [anon_sym_case] = ACTIONS(2054), [anon_sym_default] = ACTIONS(2054), [anon_sym_while] = ACTIONS(2054), [anon_sym_do] = ACTIONS(2054), [anon_sym_for] = ACTIONS(2054), [anon_sym_return] = ACTIONS(2054), [anon_sym_break] = ACTIONS(2054), [anon_sym_continue] = ACTIONS(2054), [anon_sym_goto] = ACTIONS(2054), [anon_sym_DASH_DASH] = ACTIONS(2056), [anon_sym_PLUS_PLUS] = ACTIONS(2056), [anon_sym_sizeof] = ACTIONS(2054), [sym_number_literal] = ACTIONS(2056), [anon_sym_L_SQUOTE] = ACTIONS(2056), [anon_sym_u_SQUOTE] = ACTIONS(2056), [anon_sym_U_SQUOTE] = ACTIONS(2056), [anon_sym_u8_SQUOTE] = ACTIONS(2056), [anon_sym_SQUOTE] = ACTIONS(2056), [anon_sym_L_DQUOTE] = ACTIONS(2056), [anon_sym_u_DQUOTE] = ACTIONS(2056), [anon_sym_U_DQUOTE] = ACTIONS(2056), [anon_sym_u8_DQUOTE] = ACTIONS(2056), [anon_sym_DQUOTE] = ACTIONS(2056), [sym_true] = ACTIONS(2054), [sym_false] = ACTIONS(2054), [sym_null] = ACTIONS(2054), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2054), [anon_sym_virtual] = ACTIONS(2054), [anon_sym_explicit] = ACTIONS(2054), [sym_auto] = ACTIONS(2054), [anon_sym_typename] = ACTIONS(2054), [anon_sym_template] = ACTIONS(2054), [anon_sym_operator] = ACTIONS(2054), [anon_sym_delete] = ACTIONS(2054), [anon_sym_throw] = ACTIONS(2054), [anon_sym_namespace] = ACTIONS(2054), [anon_sym_using] = ACTIONS(2054), [anon_sym_static_assert] = ACTIONS(2054), [anon_sym_co_return] = ACTIONS(2054), [anon_sym_co_yield] = ACTIONS(2054), [anon_sym_try] = ACTIONS(2054), [anon_sym_co_await] = ACTIONS(2054), [anon_sym_new] = ACTIONS(2054), [sym_this] = ACTIONS(2054), [sym_nullptr] = ACTIONS(2054), [sym_raw_string_literal] = ACTIONS(2056), }, [695] = { [sym_identifier] = ACTIONS(2114), [aux_sym_preproc_include_token1] = ACTIONS(2114), [aux_sym_preproc_def_token1] = ACTIONS(2114), [aux_sym_preproc_if_token1] = ACTIONS(2114), [aux_sym_preproc_if_token2] = ACTIONS(2114), [aux_sym_preproc_ifdef_token1] = ACTIONS(2114), [aux_sym_preproc_ifdef_token2] = ACTIONS(2114), [sym_preproc_directive] = ACTIONS(2114), [anon_sym_LPAREN2] = ACTIONS(2116), [anon_sym_BANG] = ACTIONS(2116), [anon_sym_TILDE] = ACTIONS(2116), [anon_sym_DASH] = ACTIONS(2114), [anon_sym_PLUS] = ACTIONS(2114), [anon_sym_STAR] = ACTIONS(2116), [anon_sym_AMP_AMP] = ACTIONS(2116), [anon_sym_AMP] = ACTIONS(2114), [anon_sym_SEMI] = ACTIONS(2116), [anon_sym_typedef] = ACTIONS(2114), [anon_sym_extern] = ACTIONS(2114), [anon_sym___attribute__] = ACTIONS(2114), [anon_sym_COLON_COLON] = ACTIONS(2116), [anon_sym_LBRACK_LBRACK] = ACTIONS(2116), [anon_sym___declspec] = ACTIONS(2114), [anon_sym___based] = ACTIONS(2114), [anon_sym___cdecl] = ACTIONS(2114), [anon_sym___clrcall] = ACTIONS(2114), [anon_sym___stdcall] = ACTIONS(2114), [anon_sym___fastcall] = ACTIONS(2114), [anon_sym___thiscall] = ACTIONS(2114), [anon_sym___vectorcall] = ACTIONS(2114), [anon_sym_LBRACE] = ACTIONS(2116), [anon_sym_LBRACK] = ACTIONS(2114), [anon_sym_static] = ACTIONS(2114), [anon_sym_register] = ACTIONS(2114), [anon_sym_inline] = ACTIONS(2114), [anon_sym_thread_local] = ACTIONS(2114), [anon_sym_const] = ACTIONS(2114), [anon_sym_volatile] = ACTIONS(2114), [anon_sym_restrict] = ACTIONS(2114), [anon_sym__Atomic] = ACTIONS(2114), [anon_sym_mutable] = ACTIONS(2114), [anon_sym_constexpr] = ACTIONS(2114), [anon_sym_signed] = ACTIONS(2114), [anon_sym_unsigned] = ACTIONS(2114), [anon_sym_long] = ACTIONS(2114), [anon_sym_short] = ACTIONS(2114), [sym_primitive_type] = ACTIONS(2114), [anon_sym_enum] = ACTIONS(2114), [anon_sym_class] = ACTIONS(2114), [anon_sym_struct] = ACTIONS(2114), [anon_sym_union] = ACTIONS(2114), [anon_sym_if] = ACTIONS(2114), [anon_sym_switch] = ACTIONS(2114), [anon_sym_case] = ACTIONS(2114), [anon_sym_default] = ACTIONS(2114), [anon_sym_while] = ACTIONS(2114), [anon_sym_do] = ACTIONS(2114), [anon_sym_for] = ACTIONS(2114), [anon_sym_return] = ACTIONS(2114), [anon_sym_break] = ACTIONS(2114), [anon_sym_continue] = ACTIONS(2114), [anon_sym_goto] = ACTIONS(2114), [anon_sym_DASH_DASH] = ACTIONS(2116), [anon_sym_PLUS_PLUS] = ACTIONS(2116), [anon_sym_sizeof] = ACTIONS(2114), [sym_number_literal] = ACTIONS(2116), [anon_sym_L_SQUOTE] = ACTIONS(2116), [anon_sym_u_SQUOTE] = ACTIONS(2116), [anon_sym_U_SQUOTE] = ACTIONS(2116), [anon_sym_u8_SQUOTE] = ACTIONS(2116), [anon_sym_SQUOTE] = ACTIONS(2116), [anon_sym_L_DQUOTE] = ACTIONS(2116), [anon_sym_u_DQUOTE] = ACTIONS(2116), [anon_sym_U_DQUOTE] = ACTIONS(2116), [anon_sym_u8_DQUOTE] = ACTIONS(2116), [anon_sym_DQUOTE] = ACTIONS(2116), [sym_true] = ACTIONS(2114), [sym_false] = ACTIONS(2114), [sym_null] = ACTIONS(2114), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2114), [anon_sym_virtual] = ACTIONS(2114), [anon_sym_explicit] = ACTIONS(2114), [sym_auto] = ACTIONS(2114), [anon_sym_typename] = ACTIONS(2114), [anon_sym_template] = ACTIONS(2114), [anon_sym_operator] = ACTIONS(2114), [anon_sym_delete] = ACTIONS(2114), [anon_sym_throw] = ACTIONS(2114), [anon_sym_namespace] = ACTIONS(2114), [anon_sym_using] = ACTIONS(2114), [anon_sym_static_assert] = ACTIONS(2114), [anon_sym_co_return] = ACTIONS(2114), [anon_sym_co_yield] = ACTIONS(2114), [anon_sym_try] = ACTIONS(2114), [anon_sym_co_await] = ACTIONS(2114), [anon_sym_new] = ACTIONS(2114), [sym_this] = ACTIONS(2114), [sym_nullptr] = ACTIONS(2114), [sym_raw_string_literal] = ACTIONS(2116), }, [696] = { [ts_builtin_sym_end] = ACTIONS(2132), [sym_identifier] = ACTIONS(2130), [aux_sym_preproc_include_token1] = ACTIONS(2130), [aux_sym_preproc_def_token1] = ACTIONS(2130), [aux_sym_preproc_if_token1] = ACTIONS(2130), [aux_sym_preproc_ifdef_token1] = ACTIONS(2130), [aux_sym_preproc_ifdef_token2] = ACTIONS(2130), [sym_preproc_directive] = ACTIONS(2130), [anon_sym_LPAREN2] = ACTIONS(2132), [anon_sym_BANG] = ACTIONS(2132), [anon_sym_TILDE] = ACTIONS(2132), [anon_sym_DASH] = ACTIONS(2130), [anon_sym_PLUS] = ACTIONS(2130), [anon_sym_STAR] = ACTIONS(2132), [anon_sym_AMP_AMP] = ACTIONS(2132), [anon_sym_AMP] = ACTIONS(2130), [anon_sym_SEMI] = ACTIONS(2132), [anon_sym_typedef] = ACTIONS(2130), [anon_sym_extern] = ACTIONS(2130), [anon_sym___attribute__] = ACTIONS(2130), [anon_sym_COLON_COLON] = ACTIONS(2132), [anon_sym_LBRACK_LBRACK] = ACTIONS(2132), [anon_sym___declspec] = ACTIONS(2130), [anon_sym___based] = ACTIONS(2130), [anon_sym___cdecl] = ACTIONS(2130), [anon_sym___clrcall] = ACTIONS(2130), [anon_sym___stdcall] = ACTIONS(2130), [anon_sym___fastcall] = ACTIONS(2130), [anon_sym___thiscall] = ACTIONS(2130), [anon_sym___vectorcall] = ACTIONS(2130), [anon_sym_LBRACE] = ACTIONS(2132), [anon_sym_LBRACK] = ACTIONS(2130), [anon_sym_static] = ACTIONS(2130), [anon_sym_register] = ACTIONS(2130), [anon_sym_inline] = ACTIONS(2130), [anon_sym_thread_local] = ACTIONS(2130), [anon_sym_const] = ACTIONS(2130), [anon_sym_volatile] = ACTIONS(2130), [anon_sym_restrict] = ACTIONS(2130), [anon_sym__Atomic] = ACTIONS(2130), [anon_sym_mutable] = ACTIONS(2130), [anon_sym_constexpr] = ACTIONS(2130), [anon_sym_signed] = ACTIONS(2130), [anon_sym_unsigned] = ACTIONS(2130), [anon_sym_long] = ACTIONS(2130), [anon_sym_short] = ACTIONS(2130), [sym_primitive_type] = ACTIONS(2130), [anon_sym_enum] = ACTIONS(2130), [anon_sym_class] = ACTIONS(2130), [anon_sym_struct] = ACTIONS(2130), [anon_sym_union] = ACTIONS(2130), [anon_sym_if] = ACTIONS(2130), [anon_sym_switch] = ACTIONS(2130), [anon_sym_case] = ACTIONS(2130), [anon_sym_default] = ACTIONS(2130), [anon_sym_while] = ACTIONS(2130), [anon_sym_do] = ACTIONS(2130), [anon_sym_for] = ACTIONS(2130), [anon_sym_return] = ACTIONS(2130), [anon_sym_break] = ACTIONS(2130), [anon_sym_continue] = ACTIONS(2130), [anon_sym_goto] = ACTIONS(2130), [anon_sym_DASH_DASH] = ACTIONS(2132), [anon_sym_PLUS_PLUS] = ACTIONS(2132), [anon_sym_sizeof] = ACTIONS(2130), [sym_number_literal] = ACTIONS(2132), [anon_sym_L_SQUOTE] = ACTIONS(2132), [anon_sym_u_SQUOTE] = ACTIONS(2132), [anon_sym_U_SQUOTE] = ACTIONS(2132), [anon_sym_u8_SQUOTE] = ACTIONS(2132), [anon_sym_SQUOTE] = ACTIONS(2132), [anon_sym_L_DQUOTE] = ACTIONS(2132), [anon_sym_u_DQUOTE] = ACTIONS(2132), [anon_sym_U_DQUOTE] = ACTIONS(2132), [anon_sym_u8_DQUOTE] = ACTIONS(2132), [anon_sym_DQUOTE] = ACTIONS(2132), [sym_true] = ACTIONS(2130), [sym_false] = ACTIONS(2130), [sym_null] = ACTIONS(2130), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2130), [anon_sym_virtual] = ACTIONS(2130), [anon_sym_explicit] = ACTIONS(2130), [sym_auto] = ACTIONS(2130), [anon_sym_typename] = ACTIONS(2130), [anon_sym_template] = ACTIONS(2130), [anon_sym_operator] = ACTIONS(2130), [anon_sym_delete] = ACTIONS(2130), [anon_sym_throw] = ACTIONS(2130), [anon_sym_namespace] = ACTIONS(2130), [anon_sym_using] = ACTIONS(2130), [anon_sym_static_assert] = ACTIONS(2130), [anon_sym_co_return] = ACTIONS(2130), [anon_sym_co_yield] = ACTIONS(2130), [anon_sym_try] = ACTIONS(2130), [anon_sym_co_await] = ACTIONS(2130), [anon_sym_new] = ACTIONS(2130), [sym_this] = ACTIONS(2130), [sym_nullptr] = ACTIONS(2130), [sym_raw_string_literal] = ACTIONS(2132), }, [697] = { [ts_builtin_sym_end] = ACTIONS(2072), [sym_identifier] = ACTIONS(2070), [aux_sym_preproc_include_token1] = ACTIONS(2070), [aux_sym_preproc_def_token1] = ACTIONS(2070), [aux_sym_preproc_if_token1] = ACTIONS(2070), [aux_sym_preproc_ifdef_token1] = ACTIONS(2070), [aux_sym_preproc_ifdef_token2] = ACTIONS(2070), [sym_preproc_directive] = ACTIONS(2070), [anon_sym_LPAREN2] = ACTIONS(2072), [anon_sym_BANG] = ACTIONS(2072), [anon_sym_TILDE] = ACTIONS(2072), [anon_sym_DASH] = ACTIONS(2070), [anon_sym_PLUS] = ACTIONS(2070), [anon_sym_STAR] = ACTIONS(2072), [anon_sym_AMP_AMP] = ACTIONS(2072), [anon_sym_AMP] = ACTIONS(2070), [anon_sym_SEMI] = ACTIONS(2072), [anon_sym_typedef] = ACTIONS(2070), [anon_sym_extern] = ACTIONS(2070), [anon_sym___attribute__] = ACTIONS(2070), [anon_sym_COLON_COLON] = ACTIONS(2072), [anon_sym_LBRACK_LBRACK] = ACTIONS(2072), [anon_sym___declspec] = ACTIONS(2070), [anon_sym___based] = ACTIONS(2070), [anon_sym___cdecl] = ACTIONS(2070), [anon_sym___clrcall] = ACTIONS(2070), [anon_sym___stdcall] = ACTIONS(2070), [anon_sym___fastcall] = ACTIONS(2070), [anon_sym___thiscall] = ACTIONS(2070), [anon_sym___vectorcall] = ACTIONS(2070), [anon_sym_LBRACE] = ACTIONS(2072), [anon_sym_LBRACK] = ACTIONS(2070), [anon_sym_static] = ACTIONS(2070), [anon_sym_register] = ACTIONS(2070), [anon_sym_inline] = ACTIONS(2070), [anon_sym_thread_local] = ACTIONS(2070), [anon_sym_const] = ACTIONS(2070), [anon_sym_volatile] = ACTIONS(2070), [anon_sym_restrict] = ACTIONS(2070), [anon_sym__Atomic] = ACTIONS(2070), [anon_sym_mutable] = ACTIONS(2070), [anon_sym_constexpr] = ACTIONS(2070), [anon_sym_signed] = ACTIONS(2070), [anon_sym_unsigned] = ACTIONS(2070), [anon_sym_long] = ACTIONS(2070), [anon_sym_short] = ACTIONS(2070), [sym_primitive_type] = ACTIONS(2070), [anon_sym_enum] = ACTIONS(2070), [anon_sym_class] = ACTIONS(2070), [anon_sym_struct] = ACTIONS(2070), [anon_sym_union] = ACTIONS(2070), [anon_sym_if] = ACTIONS(2070), [anon_sym_switch] = ACTIONS(2070), [anon_sym_case] = ACTIONS(2070), [anon_sym_default] = ACTIONS(2070), [anon_sym_while] = ACTIONS(2070), [anon_sym_do] = ACTIONS(2070), [anon_sym_for] = ACTIONS(2070), [anon_sym_return] = ACTIONS(2070), [anon_sym_break] = ACTIONS(2070), [anon_sym_continue] = ACTIONS(2070), [anon_sym_goto] = ACTIONS(2070), [anon_sym_DASH_DASH] = ACTIONS(2072), [anon_sym_PLUS_PLUS] = ACTIONS(2072), [anon_sym_sizeof] = ACTIONS(2070), [sym_number_literal] = ACTIONS(2072), [anon_sym_L_SQUOTE] = ACTIONS(2072), [anon_sym_u_SQUOTE] = ACTIONS(2072), [anon_sym_U_SQUOTE] = ACTIONS(2072), [anon_sym_u8_SQUOTE] = ACTIONS(2072), [anon_sym_SQUOTE] = ACTIONS(2072), [anon_sym_L_DQUOTE] = ACTIONS(2072), [anon_sym_u_DQUOTE] = ACTIONS(2072), [anon_sym_U_DQUOTE] = ACTIONS(2072), [anon_sym_u8_DQUOTE] = ACTIONS(2072), [anon_sym_DQUOTE] = ACTIONS(2072), [sym_true] = ACTIONS(2070), [sym_false] = ACTIONS(2070), [sym_null] = ACTIONS(2070), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2070), [anon_sym_virtual] = ACTIONS(2070), [anon_sym_explicit] = ACTIONS(2070), [sym_auto] = ACTIONS(2070), [anon_sym_typename] = ACTIONS(2070), [anon_sym_template] = ACTIONS(2070), [anon_sym_operator] = ACTIONS(2070), [anon_sym_delete] = ACTIONS(2070), [anon_sym_throw] = ACTIONS(2070), [anon_sym_namespace] = ACTIONS(2070), [anon_sym_using] = ACTIONS(2070), [anon_sym_static_assert] = ACTIONS(2070), [anon_sym_co_return] = ACTIONS(2070), [anon_sym_co_yield] = ACTIONS(2070), [anon_sym_try] = ACTIONS(2070), [anon_sym_co_await] = ACTIONS(2070), [anon_sym_new] = ACTIONS(2070), [sym_this] = ACTIONS(2070), [sym_nullptr] = ACTIONS(2070), [sym_raw_string_literal] = ACTIONS(2072), }, [698] = { [sym_identifier] = ACTIONS(2058), [aux_sym_preproc_include_token1] = ACTIONS(2058), [aux_sym_preproc_def_token1] = ACTIONS(2058), [aux_sym_preproc_if_token1] = ACTIONS(2058), [aux_sym_preproc_ifdef_token1] = ACTIONS(2058), [aux_sym_preproc_ifdef_token2] = ACTIONS(2058), [sym_preproc_directive] = ACTIONS(2058), [anon_sym_LPAREN2] = ACTIONS(2060), [anon_sym_BANG] = ACTIONS(2060), [anon_sym_TILDE] = ACTIONS(2060), [anon_sym_DASH] = ACTIONS(2058), [anon_sym_PLUS] = ACTIONS(2058), [anon_sym_STAR] = ACTIONS(2060), [anon_sym_AMP_AMP] = ACTIONS(2060), [anon_sym_AMP] = ACTIONS(2058), [anon_sym_SEMI] = ACTIONS(2060), [anon_sym_typedef] = ACTIONS(2058), [anon_sym_extern] = ACTIONS(2058), [anon_sym___attribute__] = ACTIONS(2058), [anon_sym_COLON_COLON] = ACTIONS(2060), [anon_sym_LBRACK_LBRACK] = ACTIONS(2060), [anon_sym___declspec] = ACTIONS(2058), [anon_sym___based] = ACTIONS(2058), [anon_sym___cdecl] = ACTIONS(2058), [anon_sym___clrcall] = ACTIONS(2058), [anon_sym___stdcall] = ACTIONS(2058), [anon_sym___fastcall] = ACTIONS(2058), [anon_sym___thiscall] = ACTIONS(2058), [anon_sym___vectorcall] = ACTIONS(2058), [anon_sym_LBRACE] = ACTIONS(2060), [anon_sym_RBRACE] = ACTIONS(2060), [anon_sym_LBRACK] = ACTIONS(2058), [anon_sym_static] = ACTIONS(2058), [anon_sym_register] = ACTIONS(2058), [anon_sym_inline] = ACTIONS(2058), [anon_sym_thread_local] = ACTIONS(2058), [anon_sym_const] = ACTIONS(2058), [anon_sym_volatile] = ACTIONS(2058), [anon_sym_restrict] = ACTIONS(2058), [anon_sym__Atomic] = ACTIONS(2058), [anon_sym_mutable] = ACTIONS(2058), [anon_sym_constexpr] = ACTIONS(2058), [anon_sym_signed] = ACTIONS(2058), [anon_sym_unsigned] = ACTIONS(2058), [anon_sym_long] = ACTIONS(2058), [anon_sym_short] = ACTIONS(2058), [sym_primitive_type] = ACTIONS(2058), [anon_sym_enum] = ACTIONS(2058), [anon_sym_class] = ACTIONS(2058), [anon_sym_struct] = ACTIONS(2058), [anon_sym_union] = ACTIONS(2058), [anon_sym_if] = ACTIONS(2058), [anon_sym_switch] = ACTIONS(2058), [anon_sym_case] = ACTIONS(2058), [anon_sym_default] = ACTIONS(2058), [anon_sym_while] = ACTIONS(2058), [anon_sym_do] = ACTIONS(2058), [anon_sym_for] = ACTIONS(2058), [anon_sym_return] = ACTIONS(2058), [anon_sym_break] = ACTIONS(2058), [anon_sym_continue] = ACTIONS(2058), [anon_sym_goto] = ACTIONS(2058), [anon_sym_DASH_DASH] = ACTIONS(2060), [anon_sym_PLUS_PLUS] = ACTIONS(2060), [anon_sym_sizeof] = ACTIONS(2058), [sym_number_literal] = ACTIONS(2060), [anon_sym_L_SQUOTE] = ACTIONS(2060), [anon_sym_u_SQUOTE] = ACTIONS(2060), [anon_sym_U_SQUOTE] = ACTIONS(2060), [anon_sym_u8_SQUOTE] = ACTIONS(2060), [anon_sym_SQUOTE] = ACTIONS(2060), [anon_sym_L_DQUOTE] = ACTIONS(2060), [anon_sym_u_DQUOTE] = ACTIONS(2060), [anon_sym_U_DQUOTE] = ACTIONS(2060), [anon_sym_u8_DQUOTE] = ACTIONS(2060), [anon_sym_DQUOTE] = ACTIONS(2060), [sym_true] = ACTIONS(2058), [sym_false] = ACTIONS(2058), [sym_null] = ACTIONS(2058), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2058), [anon_sym_virtual] = ACTIONS(2058), [anon_sym_explicit] = ACTIONS(2058), [sym_auto] = ACTIONS(2058), [anon_sym_typename] = ACTIONS(2058), [anon_sym_template] = ACTIONS(2058), [anon_sym_operator] = ACTIONS(2058), [anon_sym_delete] = ACTIONS(2058), [anon_sym_throw] = ACTIONS(2058), [anon_sym_namespace] = ACTIONS(2058), [anon_sym_using] = ACTIONS(2058), [anon_sym_static_assert] = ACTIONS(2058), [anon_sym_co_return] = ACTIONS(2058), [anon_sym_co_yield] = ACTIONS(2058), [anon_sym_try] = ACTIONS(2058), [anon_sym_co_await] = ACTIONS(2058), [anon_sym_new] = ACTIONS(2058), [sym_this] = ACTIONS(2058), [sym_nullptr] = ACTIONS(2058), [sym_raw_string_literal] = ACTIONS(2060), }, [699] = { [sym_identifier] = ACTIONS(2062), [aux_sym_preproc_include_token1] = ACTIONS(2062), [aux_sym_preproc_def_token1] = ACTIONS(2062), [aux_sym_preproc_if_token1] = ACTIONS(2062), [aux_sym_preproc_ifdef_token1] = ACTIONS(2062), [aux_sym_preproc_ifdef_token2] = ACTIONS(2062), [sym_preproc_directive] = ACTIONS(2062), [anon_sym_LPAREN2] = ACTIONS(2064), [anon_sym_BANG] = ACTIONS(2064), [anon_sym_TILDE] = ACTIONS(2064), [anon_sym_DASH] = ACTIONS(2062), [anon_sym_PLUS] = ACTIONS(2062), [anon_sym_STAR] = ACTIONS(2064), [anon_sym_AMP_AMP] = ACTIONS(2064), [anon_sym_AMP] = ACTIONS(2062), [anon_sym_SEMI] = ACTIONS(2064), [anon_sym_typedef] = ACTIONS(2062), [anon_sym_extern] = ACTIONS(2062), [anon_sym___attribute__] = ACTIONS(2062), [anon_sym_COLON_COLON] = ACTIONS(2064), [anon_sym_LBRACK_LBRACK] = ACTIONS(2064), [anon_sym___declspec] = ACTIONS(2062), [anon_sym___based] = ACTIONS(2062), [anon_sym___cdecl] = ACTIONS(2062), [anon_sym___clrcall] = ACTIONS(2062), [anon_sym___stdcall] = ACTIONS(2062), [anon_sym___fastcall] = ACTIONS(2062), [anon_sym___thiscall] = ACTIONS(2062), [anon_sym___vectorcall] = ACTIONS(2062), [anon_sym_LBRACE] = ACTIONS(2064), [anon_sym_RBRACE] = ACTIONS(2064), [anon_sym_LBRACK] = ACTIONS(2062), [anon_sym_static] = ACTIONS(2062), [anon_sym_register] = ACTIONS(2062), [anon_sym_inline] = ACTIONS(2062), [anon_sym_thread_local] = ACTIONS(2062), [anon_sym_const] = ACTIONS(2062), [anon_sym_volatile] = ACTIONS(2062), [anon_sym_restrict] = ACTIONS(2062), [anon_sym__Atomic] = ACTIONS(2062), [anon_sym_mutable] = ACTIONS(2062), [anon_sym_constexpr] = ACTIONS(2062), [anon_sym_signed] = ACTIONS(2062), [anon_sym_unsigned] = ACTIONS(2062), [anon_sym_long] = ACTIONS(2062), [anon_sym_short] = ACTIONS(2062), [sym_primitive_type] = ACTIONS(2062), [anon_sym_enum] = ACTIONS(2062), [anon_sym_class] = ACTIONS(2062), [anon_sym_struct] = ACTIONS(2062), [anon_sym_union] = ACTIONS(2062), [anon_sym_if] = ACTIONS(2062), [anon_sym_switch] = ACTIONS(2062), [anon_sym_case] = ACTIONS(2062), [anon_sym_default] = ACTIONS(2062), [anon_sym_while] = ACTIONS(2062), [anon_sym_do] = ACTIONS(2062), [anon_sym_for] = ACTIONS(2062), [anon_sym_return] = ACTIONS(2062), [anon_sym_break] = ACTIONS(2062), [anon_sym_continue] = ACTIONS(2062), [anon_sym_goto] = ACTIONS(2062), [anon_sym_DASH_DASH] = ACTIONS(2064), [anon_sym_PLUS_PLUS] = ACTIONS(2064), [anon_sym_sizeof] = ACTIONS(2062), [sym_number_literal] = ACTIONS(2064), [anon_sym_L_SQUOTE] = ACTIONS(2064), [anon_sym_u_SQUOTE] = ACTIONS(2064), [anon_sym_U_SQUOTE] = ACTIONS(2064), [anon_sym_u8_SQUOTE] = ACTIONS(2064), [anon_sym_SQUOTE] = ACTIONS(2064), [anon_sym_L_DQUOTE] = ACTIONS(2064), [anon_sym_u_DQUOTE] = ACTIONS(2064), [anon_sym_U_DQUOTE] = ACTIONS(2064), [anon_sym_u8_DQUOTE] = ACTIONS(2064), [anon_sym_DQUOTE] = ACTIONS(2064), [sym_true] = ACTIONS(2062), [sym_false] = ACTIONS(2062), [sym_null] = ACTIONS(2062), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2062), [anon_sym_virtual] = ACTIONS(2062), [anon_sym_explicit] = ACTIONS(2062), [sym_auto] = ACTIONS(2062), [anon_sym_typename] = ACTIONS(2062), [anon_sym_template] = ACTIONS(2062), [anon_sym_operator] = ACTIONS(2062), [anon_sym_delete] = ACTIONS(2062), [anon_sym_throw] = ACTIONS(2062), [anon_sym_namespace] = ACTIONS(2062), [anon_sym_using] = ACTIONS(2062), [anon_sym_static_assert] = ACTIONS(2062), [anon_sym_co_return] = ACTIONS(2062), [anon_sym_co_yield] = ACTIONS(2062), [anon_sym_try] = ACTIONS(2062), [anon_sym_co_await] = ACTIONS(2062), [anon_sym_new] = ACTIONS(2062), [sym_this] = ACTIONS(2062), [sym_nullptr] = ACTIONS(2062), [sym_raw_string_literal] = ACTIONS(2064), }, [700] = { [sym_identifier] = ACTIONS(2066), [aux_sym_preproc_include_token1] = ACTIONS(2066), [aux_sym_preproc_def_token1] = ACTIONS(2066), [aux_sym_preproc_if_token1] = ACTIONS(2066), [aux_sym_preproc_ifdef_token1] = ACTIONS(2066), [aux_sym_preproc_ifdef_token2] = ACTIONS(2066), [sym_preproc_directive] = ACTIONS(2066), [anon_sym_LPAREN2] = ACTIONS(2068), [anon_sym_BANG] = ACTIONS(2068), [anon_sym_TILDE] = ACTIONS(2068), [anon_sym_DASH] = ACTIONS(2066), [anon_sym_PLUS] = ACTIONS(2066), [anon_sym_STAR] = ACTIONS(2068), [anon_sym_AMP_AMP] = ACTIONS(2068), [anon_sym_AMP] = ACTIONS(2066), [anon_sym_SEMI] = ACTIONS(2068), [anon_sym_typedef] = ACTIONS(2066), [anon_sym_extern] = ACTIONS(2066), [anon_sym___attribute__] = ACTIONS(2066), [anon_sym_COLON_COLON] = ACTIONS(2068), [anon_sym_LBRACK_LBRACK] = ACTIONS(2068), [anon_sym___declspec] = ACTIONS(2066), [anon_sym___based] = ACTIONS(2066), [anon_sym___cdecl] = ACTIONS(2066), [anon_sym___clrcall] = ACTIONS(2066), [anon_sym___stdcall] = ACTIONS(2066), [anon_sym___fastcall] = ACTIONS(2066), [anon_sym___thiscall] = ACTIONS(2066), [anon_sym___vectorcall] = ACTIONS(2066), [anon_sym_LBRACE] = ACTIONS(2068), [anon_sym_RBRACE] = ACTIONS(2068), [anon_sym_LBRACK] = ACTIONS(2066), [anon_sym_static] = ACTIONS(2066), [anon_sym_register] = ACTIONS(2066), [anon_sym_inline] = ACTIONS(2066), [anon_sym_thread_local] = ACTIONS(2066), [anon_sym_const] = ACTIONS(2066), [anon_sym_volatile] = ACTIONS(2066), [anon_sym_restrict] = ACTIONS(2066), [anon_sym__Atomic] = ACTIONS(2066), [anon_sym_mutable] = ACTIONS(2066), [anon_sym_constexpr] = ACTIONS(2066), [anon_sym_signed] = ACTIONS(2066), [anon_sym_unsigned] = ACTIONS(2066), [anon_sym_long] = ACTIONS(2066), [anon_sym_short] = ACTIONS(2066), [sym_primitive_type] = ACTIONS(2066), [anon_sym_enum] = ACTIONS(2066), [anon_sym_class] = ACTIONS(2066), [anon_sym_struct] = ACTIONS(2066), [anon_sym_union] = ACTIONS(2066), [anon_sym_if] = ACTIONS(2066), [anon_sym_switch] = ACTIONS(2066), [anon_sym_case] = ACTIONS(2066), [anon_sym_default] = ACTIONS(2066), [anon_sym_while] = ACTIONS(2066), [anon_sym_do] = ACTIONS(2066), [anon_sym_for] = ACTIONS(2066), [anon_sym_return] = ACTIONS(2066), [anon_sym_break] = ACTIONS(2066), [anon_sym_continue] = ACTIONS(2066), [anon_sym_goto] = ACTIONS(2066), [anon_sym_DASH_DASH] = ACTIONS(2068), [anon_sym_PLUS_PLUS] = ACTIONS(2068), [anon_sym_sizeof] = ACTIONS(2066), [sym_number_literal] = ACTIONS(2068), [anon_sym_L_SQUOTE] = ACTIONS(2068), [anon_sym_u_SQUOTE] = ACTIONS(2068), [anon_sym_U_SQUOTE] = ACTIONS(2068), [anon_sym_u8_SQUOTE] = ACTIONS(2068), [anon_sym_SQUOTE] = ACTIONS(2068), [anon_sym_L_DQUOTE] = ACTIONS(2068), [anon_sym_u_DQUOTE] = ACTIONS(2068), [anon_sym_U_DQUOTE] = ACTIONS(2068), [anon_sym_u8_DQUOTE] = ACTIONS(2068), [anon_sym_DQUOTE] = ACTIONS(2068), [sym_true] = ACTIONS(2066), [sym_false] = ACTIONS(2066), [sym_null] = ACTIONS(2066), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2066), [anon_sym_virtual] = ACTIONS(2066), [anon_sym_explicit] = ACTIONS(2066), [sym_auto] = ACTIONS(2066), [anon_sym_typename] = ACTIONS(2066), [anon_sym_template] = ACTIONS(2066), [anon_sym_operator] = ACTIONS(2066), [anon_sym_delete] = ACTIONS(2066), [anon_sym_throw] = ACTIONS(2066), [anon_sym_namespace] = ACTIONS(2066), [anon_sym_using] = ACTIONS(2066), [anon_sym_static_assert] = ACTIONS(2066), [anon_sym_co_return] = ACTIONS(2066), [anon_sym_co_yield] = ACTIONS(2066), [anon_sym_try] = ACTIONS(2066), [anon_sym_co_await] = ACTIONS(2066), [anon_sym_new] = ACTIONS(2066), [sym_this] = ACTIONS(2066), [sym_nullptr] = ACTIONS(2066), [sym_raw_string_literal] = ACTIONS(2068), }, [701] = { [sym_identifier] = ACTIONS(2070), [aux_sym_preproc_include_token1] = ACTIONS(2070), [aux_sym_preproc_def_token1] = ACTIONS(2070), [aux_sym_preproc_if_token1] = ACTIONS(2070), [aux_sym_preproc_ifdef_token1] = ACTIONS(2070), [aux_sym_preproc_ifdef_token2] = ACTIONS(2070), [sym_preproc_directive] = ACTIONS(2070), [anon_sym_LPAREN2] = ACTIONS(2072), [anon_sym_BANG] = ACTIONS(2072), [anon_sym_TILDE] = ACTIONS(2072), [anon_sym_DASH] = ACTIONS(2070), [anon_sym_PLUS] = ACTIONS(2070), [anon_sym_STAR] = ACTIONS(2072), [anon_sym_AMP_AMP] = ACTIONS(2072), [anon_sym_AMP] = ACTIONS(2070), [anon_sym_SEMI] = ACTIONS(2072), [anon_sym_typedef] = ACTIONS(2070), [anon_sym_extern] = ACTIONS(2070), [anon_sym___attribute__] = ACTIONS(2070), [anon_sym_COLON_COLON] = ACTIONS(2072), [anon_sym_LBRACK_LBRACK] = ACTIONS(2072), [anon_sym___declspec] = ACTIONS(2070), [anon_sym___based] = ACTIONS(2070), [anon_sym___cdecl] = ACTIONS(2070), [anon_sym___clrcall] = ACTIONS(2070), [anon_sym___stdcall] = ACTIONS(2070), [anon_sym___fastcall] = ACTIONS(2070), [anon_sym___thiscall] = ACTIONS(2070), [anon_sym___vectorcall] = ACTIONS(2070), [anon_sym_LBRACE] = ACTIONS(2072), [anon_sym_RBRACE] = ACTIONS(2072), [anon_sym_LBRACK] = ACTIONS(2070), [anon_sym_static] = ACTIONS(2070), [anon_sym_register] = ACTIONS(2070), [anon_sym_inline] = ACTIONS(2070), [anon_sym_thread_local] = ACTIONS(2070), [anon_sym_const] = ACTIONS(2070), [anon_sym_volatile] = ACTIONS(2070), [anon_sym_restrict] = ACTIONS(2070), [anon_sym__Atomic] = ACTIONS(2070), [anon_sym_mutable] = ACTIONS(2070), [anon_sym_constexpr] = ACTIONS(2070), [anon_sym_signed] = ACTIONS(2070), [anon_sym_unsigned] = ACTIONS(2070), [anon_sym_long] = ACTIONS(2070), [anon_sym_short] = ACTIONS(2070), [sym_primitive_type] = ACTIONS(2070), [anon_sym_enum] = ACTIONS(2070), [anon_sym_class] = ACTIONS(2070), [anon_sym_struct] = ACTIONS(2070), [anon_sym_union] = ACTIONS(2070), [anon_sym_if] = ACTIONS(2070), [anon_sym_switch] = ACTIONS(2070), [anon_sym_case] = ACTIONS(2070), [anon_sym_default] = ACTIONS(2070), [anon_sym_while] = ACTIONS(2070), [anon_sym_do] = ACTIONS(2070), [anon_sym_for] = ACTIONS(2070), [anon_sym_return] = ACTIONS(2070), [anon_sym_break] = ACTIONS(2070), [anon_sym_continue] = ACTIONS(2070), [anon_sym_goto] = ACTIONS(2070), [anon_sym_DASH_DASH] = ACTIONS(2072), [anon_sym_PLUS_PLUS] = ACTIONS(2072), [anon_sym_sizeof] = ACTIONS(2070), [sym_number_literal] = ACTIONS(2072), [anon_sym_L_SQUOTE] = ACTIONS(2072), [anon_sym_u_SQUOTE] = ACTIONS(2072), [anon_sym_U_SQUOTE] = ACTIONS(2072), [anon_sym_u8_SQUOTE] = ACTIONS(2072), [anon_sym_SQUOTE] = ACTIONS(2072), [anon_sym_L_DQUOTE] = ACTIONS(2072), [anon_sym_u_DQUOTE] = ACTIONS(2072), [anon_sym_U_DQUOTE] = ACTIONS(2072), [anon_sym_u8_DQUOTE] = ACTIONS(2072), [anon_sym_DQUOTE] = ACTIONS(2072), [sym_true] = ACTIONS(2070), [sym_false] = ACTIONS(2070), [sym_null] = ACTIONS(2070), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2070), [anon_sym_virtual] = ACTIONS(2070), [anon_sym_explicit] = ACTIONS(2070), [sym_auto] = ACTIONS(2070), [anon_sym_typename] = ACTIONS(2070), [anon_sym_template] = ACTIONS(2070), [anon_sym_operator] = ACTIONS(2070), [anon_sym_delete] = ACTIONS(2070), [anon_sym_throw] = ACTIONS(2070), [anon_sym_namespace] = ACTIONS(2070), [anon_sym_using] = ACTIONS(2070), [anon_sym_static_assert] = ACTIONS(2070), [anon_sym_co_return] = ACTIONS(2070), [anon_sym_co_yield] = ACTIONS(2070), [anon_sym_try] = ACTIONS(2070), [anon_sym_co_await] = ACTIONS(2070), [anon_sym_new] = ACTIONS(2070), [sym_this] = ACTIONS(2070), [sym_nullptr] = ACTIONS(2070), [sym_raw_string_literal] = ACTIONS(2072), }, [702] = { [sym_identifier] = ACTIONS(2098), [aux_sym_preproc_include_token1] = ACTIONS(2098), [aux_sym_preproc_def_token1] = ACTIONS(2098), [aux_sym_preproc_if_token1] = ACTIONS(2098), [aux_sym_preproc_ifdef_token1] = ACTIONS(2098), [aux_sym_preproc_ifdef_token2] = ACTIONS(2098), [sym_preproc_directive] = ACTIONS(2098), [anon_sym_LPAREN2] = ACTIONS(2100), [anon_sym_BANG] = ACTIONS(2100), [anon_sym_TILDE] = ACTIONS(2100), [anon_sym_DASH] = ACTIONS(2098), [anon_sym_PLUS] = ACTIONS(2098), [anon_sym_STAR] = ACTIONS(2100), [anon_sym_AMP_AMP] = ACTIONS(2100), [anon_sym_AMP] = ACTIONS(2098), [anon_sym_SEMI] = ACTIONS(2100), [anon_sym_typedef] = ACTIONS(2098), [anon_sym_extern] = ACTIONS(2098), [anon_sym___attribute__] = ACTIONS(2098), [anon_sym_COLON_COLON] = ACTIONS(2100), [anon_sym_LBRACK_LBRACK] = ACTIONS(2100), [anon_sym___declspec] = ACTIONS(2098), [anon_sym___based] = ACTIONS(2098), [anon_sym___cdecl] = ACTIONS(2098), [anon_sym___clrcall] = ACTIONS(2098), [anon_sym___stdcall] = ACTIONS(2098), [anon_sym___fastcall] = ACTIONS(2098), [anon_sym___thiscall] = ACTIONS(2098), [anon_sym___vectorcall] = ACTIONS(2098), [anon_sym_LBRACE] = ACTIONS(2100), [anon_sym_RBRACE] = ACTIONS(2100), [anon_sym_LBRACK] = ACTIONS(2098), [anon_sym_static] = ACTIONS(2098), [anon_sym_register] = ACTIONS(2098), [anon_sym_inline] = ACTIONS(2098), [anon_sym_thread_local] = ACTIONS(2098), [anon_sym_const] = ACTIONS(2098), [anon_sym_volatile] = ACTIONS(2098), [anon_sym_restrict] = ACTIONS(2098), [anon_sym__Atomic] = ACTIONS(2098), [anon_sym_mutable] = ACTIONS(2098), [anon_sym_constexpr] = ACTIONS(2098), [anon_sym_signed] = ACTIONS(2098), [anon_sym_unsigned] = ACTIONS(2098), [anon_sym_long] = ACTIONS(2098), [anon_sym_short] = ACTIONS(2098), [sym_primitive_type] = ACTIONS(2098), [anon_sym_enum] = ACTIONS(2098), [anon_sym_class] = ACTIONS(2098), [anon_sym_struct] = ACTIONS(2098), [anon_sym_union] = ACTIONS(2098), [anon_sym_if] = ACTIONS(2098), [anon_sym_switch] = ACTIONS(2098), [anon_sym_case] = ACTIONS(2098), [anon_sym_default] = ACTIONS(2098), [anon_sym_while] = ACTIONS(2098), [anon_sym_do] = ACTIONS(2098), [anon_sym_for] = ACTIONS(2098), [anon_sym_return] = ACTIONS(2098), [anon_sym_break] = ACTIONS(2098), [anon_sym_continue] = ACTIONS(2098), [anon_sym_goto] = ACTIONS(2098), [anon_sym_DASH_DASH] = ACTIONS(2100), [anon_sym_PLUS_PLUS] = ACTIONS(2100), [anon_sym_sizeof] = ACTIONS(2098), [sym_number_literal] = ACTIONS(2100), [anon_sym_L_SQUOTE] = ACTIONS(2100), [anon_sym_u_SQUOTE] = ACTIONS(2100), [anon_sym_U_SQUOTE] = ACTIONS(2100), [anon_sym_u8_SQUOTE] = ACTIONS(2100), [anon_sym_SQUOTE] = ACTIONS(2100), [anon_sym_L_DQUOTE] = ACTIONS(2100), [anon_sym_u_DQUOTE] = ACTIONS(2100), [anon_sym_U_DQUOTE] = ACTIONS(2100), [anon_sym_u8_DQUOTE] = ACTIONS(2100), [anon_sym_DQUOTE] = ACTIONS(2100), [sym_true] = ACTIONS(2098), [sym_false] = ACTIONS(2098), [sym_null] = ACTIONS(2098), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2098), [anon_sym_virtual] = ACTIONS(2098), [anon_sym_explicit] = ACTIONS(2098), [sym_auto] = ACTIONS(2098), [anon_sym_typename] = ACTIONS(2098), [anon_sym_template] = ACTIONS(2098), [anon_sym_operator] = ACTIONS(2098), [anon_sym_delete] = ACTIONS(2098), [anon_sym_throw] = ACTIONS(2098), [anon_sym_namespace] = ACTIONS(2098), [anon_sym_using] = ACTIONS(2098), [anon_sym_static_assert] = ACTIONS(2098), [anon_sym_co_return] = ACTIONS(2098), [anon_sym_co_yield] = ACTIONS(2098), [anon_sym_try] = ACTIONS(2098), [anon_sym_co_await] = ACTIONS(2098), [anon_sym_new] = ACTIONS(2098), [sym_this] = ACTIONS(2098), [sym_nullptr] = ACTIONS(2098), [sym_raw_string_literal] = ACTIONS(2100), }, [703] = { [sym_identifier] = ACTIONS(2074), [aux_sym_preproc_include_token1] = ACTIONS(2074), [aux_sym_preproc_def_token1] = ACTIONS(2074), [aux_sym_preproc_if_token1] = ACTIONS(2074), [aux_sym_preproc_ifdef_token1] = ACTIONS(2074), [aux_sym_preproc_ifdef_token2] = ACTIONS(2074), [sym_preproc_directive] = ACTIONS(2074), [anon_sym_LPAREN2] = ACTIONS(2076), [anon_sym_BANG] = ACTIONS(2076), [anon_sym_TILDE] = ACTIONS(2076), [anon_sym_DASH] = ACTIONS(2074), [anon_sym_PLUS] = ACTIONS(2074), [anon_sym_STAR] = ACTIONS(2076), [anon_sym_AMP_AMP] = ACTIONS(2076), [anon_sym_AMP] = ACTIONS(2074), [anon_sym_SEMI] = ACTIONS(2076), [anon_sym_typedef] = ACTIONS(2074), [anon_sym_extern] = ACTIONS(2074), [anon_sym___attribute__] = ACTIONS(2074), [anon_sym_COLON_COLON] = ACTIONS(2076), [anon_sym_LBRACK_LBRACK] = ACTIONS(2076), [anon_sym___declspec] = ACTIONS(2074), [anon_sym___based] = ACTIONS(2074), [anon_sym___cdecl] = ACTIONS(2074), [anon_sym___clrcall] = ACTIONS(2074), [anon_sym___stdcall] = ACTIONS(2074), [anon_sym___fastcall] = ACTIONS(2074), [anon_sym___thiscall] = ACTIONS(2074), [anon_sym___vectorcall] = ACTIONS(2074), [anon_sym_LBRACE] = ACTIONS(2076), [anon_sym_RBRACE] = ACTIONS(2076), [anon_sym_LBRACK] = ACTIONS(2074), [anon_sym_static] = ACTIONS(2074), [anon_sym_register] = ACTIONS(2074), [anon_sym_inline] = ACTIONS(2074), [anon_sym_thread_local] = ACTIONS(2074), [anon_sym_const] = ACTIONS(2074), [anon_sym_volatile] = ACTIONS(2074), [anon_sym_restrict] = ACTIONS(2074), [anon_sym__Atomic] = ACTIONS(2074), [anon_sym_mutable] = ACTIONS(2074), [anon_sym_constexpr] = ACTIONS(2074), [anon_sym_signed] = ACTIONS(2074), [anon_sym_unsigned] = ACTIONS(2074), [anon_sym_long] = ACTIONS(2074), [anon_sym_short] = ACTIONS(2074), [sym_primitive_type] = ACTIONS(2074), [anon_sym_enum] = ACTIONS(2074), [anon_sym_class] = ACTIONS(2074), [anon_sym_struct] = ACTIONS(2074), [anon_sym_union] = ACTIONS(2074), [anon_sym_if] = ACTIONS(2074), [anon_sym_switch] = ACTIONS(2074), [anon_sym_case] = ACTIONS(2074), [anon_sym_default] = ACTIONS(2074), [anon_sym_while] = ACTIONS(2074), [anon_sym_do] = ACTIONS(2074), [anon_sym_for] = ACTIONS(2074), [anon_sym_return] = ACTIONS(2074), [anon_sym_break] = ACTIONS(2074), [anon_sym_continue] = ACTIONS(2074), [anon_sym_goto] = ACTIONS(2074), [anon_sym_DASH_DASH] = ACTIONS(2076), [anon_sym_PLUS_PLUS] = ACTIONS(2076), [anon_sym_sizeof] = ACTIONS(2074), [sym_number_literal] = ACTIONS(2076), [anon_sym_L_SQUOTE] = ACTIONS(2076), [anon_sym_u_SQUOTE] = ACTIONS(2076), [anon_sym_U_SQUOTE] = ACTIONS(2076), [anon_sym_u8_SQUOTE] = ACTIONS(2076), [anon_sym_SQUOTE] = ACTIONS(2076), [anon_sym_L_DQUOTE] = ACTIONS(2076), [anon_sym_u_DQUOTE] = ACTIONS(2076), [anon_sym_U_DQUOTE] = ACTIONS(2076), [anon_sym_u8_DQUOTE] = ACTIONS(2076), [anon_sym_DQUOTE] = ACTIONS(2076), [sym_true] = ACTIONS(2074), [sym_false] = ACTIONS(2074), [sym_null] = ACTIONS(2074), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2074), [anon_sym_virtual] = ACTIONS(2074), [anon_sym_explicit] = ACTIONS(2074), [sym_auto] = ACTIONS(2074), [anon_sym_typename] = ACTIONS(2074), [anon_sym_template] = ACTIONS(2074), [anon_sym_operator] = ACTIONS(2074), [anon_sym_delete] = ACTIONS(2074), [anon_sym_throw] = ACTIONS(2074), [anon_sym_namespace] = ACTIONS(2074), [anon_sym_using] = ACTIONS(2074), [anon_sym_static_assert] = ACTIONS(2074), [anon_sym_co_return] = ACTIONS(2074), [anon_sym_co_yield] = ACTIONS(2074), [anon_sym_try] = ACTIONS(2074), [anon_sym_co_await] = ACTIONS(2074), [anon_sym_new] = ACTIONS(2074), [sym_this] = ACTIONS(2074), [sym_nullptr] = ACTIONS(2074), [sym_raw_string_literal] = ACTIONS(2076), }, [704] = { [sym_identifier] = ACTIONS(2018), [aux_sym_preproc_include_token1] = ACTIONS(2018), [aux_sym_preproc_def_token1] = ACTIONS(2018), [aux_sym_preproc_if_token1] = ACTIONS(2018), [aux_sym_preproc_ifdef_token1] = ACTIONS(2018), [aux_sym_preproc_ifdef_token2] = ACTIONS(2018), [sym_preproc_directive] = ACTIONS(2018), [anon_sym_LPAREN2] = ACTIONS(2020), [anon_sym_BANG] = ACTIONS(2020), [anon_sym_TILDE] = ACTIONS(2020), [anon_sym_DASH] = ACTIONS(2018), [anon_sym_PLUS] = ACTIONS(2018), [anon_sym_STAR] = ACTIONS(2020), [anon_sym_AMP_AMP] = ACTIONS(2020), [anon_sym_AMP] = ACTIONS(2018), [anon_sym_SEMI] = ACTIONS(2020), [anon_sym_typedef] = ACTIONS(2018), [anon_sym_extern] = ACTIONS(2018), [anon_sym___attribute__] = ACTIONS(2018), [anon_sym_COLON_COLON] = ACTIONS(2020), [anon_sym_LBRACK_LBRACK] = ACTIONS(2020), [anon_sym___declspec] = ACTIONS(2018), [anon_sym___based] = ACTIONS(2018), [anon_sym___cdecl] = ACTIONS(2018), [anon_sym___clrcall] = ACTIONS(2018), [anon_sym___stdcall] = ACTIONS(2018), [anon_sym___fastcall] = ACTIONS(2018), [anon_sym___thiscall] = ACTIONS(2018), [anon_sym___vectorcall] = ACTIONS(2018), [anon_sym_LBRACE] = ACTIONS(2020), [anon_sym_RBRACE] = ACTIONS(2020), [anon_sym_LBRACK] = ACTIONS(2018), [anon_sym_static] = ACTIONS(2018), [anon_sym_register] = ACTIONS(2018), [anon_sym_inline] = ACTIONS(2018), [anon_sym_thread_local] = ACTIONS(2018), [anon_sym_const] = ACTIONS(2018), [anon_sym_volatile] = ACTIONS(2018), [anon_sym_restrict] = ACTIONS(2018), [anon_sym__Atomic] = ACTIONS(2018), [anon_sym_mutable] = ACTIONS(2018), [anon_sym_constexpr] = ACTIONS(2018), [anon_sym_signed] = ACTIONS(2018), [anon_sym_unsigned] = ACTIONS(2018), [anon_sym_long] = ACTIONS(2018), [anon_sym_short] = ACTIONS(2018), [sym_primitive_type] = ACTIONS(2018), [anon_sym_enum] = ACTIONS(2018), [anon_sym_class] = ACTIONS(2018), [anon_sym_struct] = ACTIONS(2018), [anon_sym_union] = ACTIONS(2018), [anon_sym_if] = ACTIONS(2018), [anon_sym_switch] = ACTIONS(2018), [anon_sym_case] = ACTIONS(2018), [anon_sym_default] = ACTIONS(2018), [anon_sym_while] = ACTIONS(2018), [anon_sym_do] = ACTIONS(2018), [anon_sym_for] = ACTIONS(2018), [anon_sym_return] = ACTIONS(2018), [anon_sym_break] = ACTIONS(2018), [anon_sym_continue] = ACTIONS(2018), [anon_sym_goto] = ACTIONS(2018), [anon_sym_DASH_DASH] = ACTIONS(2020), [anon_sym_PLUS_PLUS] = ACTIONS(2020), [anon_sym_sizeof] = ACTIONS(2018), [sym_number_literal] = ACTIONS(2020), [anon_sym_L_SQUOTE] = ACTIONS(2020), [anon_sym_u_SQUOTE] = ACTIONS(2020), [anon_sym_U_SQUOTE] = ACTIONS(2020), [anon_sym_u8_SQUOTE] = ACTIONS(2020), [anon_sym_SQUOTE] = ACTIONS(2020), [anon_sym_L_DQUOTE] = ACTIONS(2020), [anon_sym_u_DQUOTE] = ACTIONS(2020), [anon_sym_U_DQUOTE] = ACTIONS(2020), [anon_sym_u8_DQUOTE] = ACTIONS(2020), [anon_sym_DQUOTE] = ACTIONS(2020), [sym_true] = ACTIONS(2018), [sym_false] = ACTIONS(2018), [sym_null] = ACTIONS(2018), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2018), [anon_sym_virtual] = ACTIONS(2018), [anon_sym_explicit] = ACTIONS(2018), [sym_auto] = ACTIONS(2018), [anon_sym_typename] = ACTIONS(2018), [anon_sym_template] = ACTIONS(2018), [anon_sym_operator] = ACTIONS(2018), [anon_sym_delete] = ACTIONS(2018), [anon_sym_throw] = ACTIONS(2018), [anon_sym_namespace] = ACTIONS(2018), [anon_sym_using] = ACTIONS(2018), [anon_sym_static_assert] = ACTIONS(2018), [anon_sym_co_return] = ACTIONS(2018), [anon_sym_co_yield] = ACTIONS(2018), [anon_sym_try] = ACTIONS(2018), [anon_sym_co_await] = ACTIONS(2018), [anon_sym_new] = ACTIONS(2018), [sym_this] = ACTIONS(2018), [sym_nullptr] = ACTIONS(2018), [sym_raw_string_literal] = ACTIONS(2020), }, [705] = { [sym_identifier] = ACTIONS(2078), [aux_sym_preproc_include_token1] = ACTIONS(2078), [aux_sym_preproc_def_token1] = ACTIONS(2078), [aux_sym_preproc_if_token1] = ACTIONS(2078), [aux_sym_preproc_ifdef_token1] = ACTIONS(2078), [aux_sym_preproc_ifdef_token2] = ACTIONS(2078), [sym_preproc_directive] = ACTIONS(2078), [anon_sym_LPAREN2] = ACTIONS(2080), [anon_sym_BANG] = ACTIONS(2080), [anon_sym_TILDE] = ACTIONS(2080), [anon_sym_DASH] = ACTIONS(2078), [anon_sym_PLUS] = ACTIONS(2078), [anon_sym_STAR] = ACTIONS(2080), [anon_sym_AMP_AMP] = ACTIONS(2080), [anon_sym_AMP] = ACTIONS(2078), [anon_sym_SEMI] = ACTIONS(2080), [anon_sym_typedef] = ACTIONS(2078), [anon_sym_extern] = ACTIONS(2078), [anon_sym___attribute__] = ACTIONS(2078), [anon_sym_COLON_COLON] = ACTIONS(2080), [anon_sym_LBRACK_LBRACK] = ACTIONS(2080), [anon_sym___declspec] = ACTIONS(2078), [anon_sym___based] = ACTIONS(2078), [anon_sym___cdecl] = ACTIONS(2078), [anon_sym___clrcall] = ACTIONS(2078), [anon_sym___stdcall] = ACTIONS(2078), [anon_sym___fastcall] = ACTIONS(2078), [anon_sym___thiscall] = ACTIONS(2078), [anon_sym___vectorcall] = ACTIONS(2078), [anon_sym_LBRACE] = ACTIONS(2080), [anon_sym_RBRACE] = ACTIONS(2080), [anon_sym_LBRACK] = ACTIONS(2078), [anon_sym_static] = ACTIONS(2078), [anon_sym_register] = ACTIONS(2078), [anon_sym_inline] = ACTIONS(2078), [anon_sym_thread_local] = ACTIONS(2078), [anon_sym_const] = ACTIONS(2078), [anon_sym_volatile] = ACTIONS(2078), [anon_sym_restrict] = ACTIONS(2078), [anon_sym__Atomic] = ACTIONS(2078), [anon_sym_mutable] = ACTIONS(2078), [anon_sym_constexpr] = ACTIONS(2078), [anon_sym_signed] = ACTIONS(2078), [anon_sym_unsigned] = ACTIONS(2078), [anon_sym_long] = ACTIONS(2078), [anon_sym_short] = ACTIONS(2078), [sym_primitive_type] = ACTIONS(2078), [anon_sym_enum] = ACTIONS(2078), [anon_sym_class] = ACTIONS(2078), [anon_sym_struct] = ACTIONS(2078), [anon_sym_union] = ACTIONS(2078), [anon_sym_if] = ACTIONS(2078), [anon_sym_switch] = ACTIONS(2078), [anon_sym_case] = ACTIONS(2078), [anon_sym_default] = ACTIONS(2078), [anon_sym_while] = ACTIONS(2078), [anon_sym_do] = ACTIONS(2078), [anon_sym_for] = ACTIONS(2078), [anon_sym_return] = ACTIONS(2078), [anon_sym_break] = ACTIONS(2078), [anon_sym_continue] = ACTIONS(2078), [anon_sym_goto] = ACTIONS(2078), [anon_sym_DASH_DASH] = ACTIONS(2080), [anon_sym_PLUS_PLUS] = ACTIONS(2080), [anon_sym_sizeof] = ACTIONS(2078), [sym_number_literal] = ACTIONS(2080), [anon_sym_L_SQUOTE] = ACTIONS(2080), [anon_sym_u_SQUOTE] = ACTIONS(2080), [anon_sym_U_SQUOTE] = ACTIONS(2080), [anon_sym_u8_SQUOTE] = ACTIONS(2080), [anon_sym_SQUOTE] = ACTIONS(2080), [anon_sym_L_DQUOTE] = ACTIONS(2080), [anon_sym_u_DQUOTE] = ACTIONS(2080), [anon_sym_U_DQUOTE] = ACTIONS(2080), [anon_sym_u8_DQUOTE] = ACTIONS(2080), [anon_sym_DQUOTE] = ACTIONS(2080), [sym_true] = ACTIONS(2078), [sym_false] = ACTIONS(2078), [sym_null] = ACTIONS(2078), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2078), [anon_sym_virtual] = ACTIONS(2078), [anon_sym_explicit] = ACTIONS(2078), [sym_auto] = ACTIONS(2078), [anon_sym_typename] = ACTIONS(2078), [anon_sym_template] = ACTIONS(2078), [anon_sym_operator] = ACTIONS(2078), [anon_sym_delete] = ACTIONS(2078), [anon_sym_throw] = ACTIONS(2078), [anon_sym_namespace] = ACTIONS(2078), [anon_sym_using] = ACTIONS(2078), [anon_sym_static_assert] = ACTIONS(2078), [anon_sym_co_return] = ACTIONS(2078), [anon_sym_co_yield] = ACTIONS(2078), [anon_sym_try] = ACTIONS(2078), [anon_sym_co_await] = ACTIONS(2078), [anon_sym_new] = ACTIONS(2078), [sym_this] = ACTIONS(2078), [sym_nullptr] = ACTIONS(2078), [sym_raw_string_literal] = ACTIONS(2080), }, [706] = { [sym_identifier] = ACTIONS(2170), [aux_sym_preproc_include_token1] = ACTIONS(2170), [aux_sym_preproc_def_token1] = ACTIONS(2170), [aux_sym_preproc_if_token1] = ACTIONS(2170), [aux_sym_preproc_if_token2] = ACTIONS(2170), [aux_sym_preproc_ifdef_token1] = ACTIONS(2170), [aux_sym_preproc_ifdef_token2] = ACTIONS(2170), [sym_preproc_directive] = ACTIONS(2170), [anon_sym_LPAREN2] = ACTIONS(2172), [anon_sym_BANG] = ACTIONS(2172), [anon_sym_TILDE] = ACTIONS(2172), [anon_sym_DASH] = ACTIONS(2170), [anon_sym_PLUS] = ACTIONS(2170), [anon_sym_STAR] = ACTIONS(2172), [anon_sym_AMP_AMP] = ACTIONS(2172), [anon_sym_AMP] = ACTIONS(2170), [anon_sym_SEMI] = ACTIONS(2172), [anon_sym_typedef] = ACTIONS(2170), [anon_sym_extern] = ACTIONS(2170), [anon_sym___attribute__] = ACTIONS(2170), [anon_sym_COLON_COLON] = ACTIONS(2172), [anon_sym_LBRACK_LBRACK] = ACTIONS(2172), [anon_sym___declspec] = ACTIONS(2170), [anon_sym___based] = ACTIONS(2170), [anon_sym___cdecl] = ACTIONS(2170), [anon_sym___clrcall] = ACTIONS(2170), [anon_sym___stdcall] = ACTIONS(2170), [anon_sym___fastcall] = ACTIONS(2170), [anon_sym___thiscall] = ACTIONS(2170), [anon_sym___vectorcall] = ACTIONS(2170), [anon_sym_LBRACE] = ACTIONS(2172), [anon_sym_LBRACK] = ACTIONS(2170), [anon_sym_static] = ACTIONS(2170), [anon_sym_register] = ACTIONS(2170), [anon_sym_inline] = ACTIONS(2170), [anon_sym_thread_local] = ACTIONS(2170), [anon_sym_const] = ACTIONS(2170), [anon_sym_volatile] = ACTIONS(2170), [anon_sym_restrict] = ACTIONS(2170), [anon_sym__Atomic] = ACTIONS(2170), [anon_sym_mutable] = ACTIONS(2170), [anon_sym_constexpr] = ACTIONS(2170), [anon_sym_signed] = ACTIONS(2170), [anon_sym_unsigned] = ACTIONS(2170), [anon_sym_long] = ACTIONS(2170), [anon_sym_short] = ACTIONS(2170), [sym_primitive_type] = ACTIONS(2170), [anon_sym_enum] = ACTIONS(2170), [anon_sym_class] = ACTIONS(2170), [anon_sym_struct] = ACTIONS(2170), [anon_sym_union] = ACTIONS(2170), [anon_sym_if] = ACTIONS(2170), [anon_sym_switch] = ACTIONS(2170), [anon_sym_case] = ACTIONS(2170), [anon_sym_default] = ACTIONS(2170), [anon_sym_while] = ACTIONS(2170), [anon_sym_do] = ACTIONS(2170), [anon_sym_for] = ACTIONS(2170), [anon_sym_return] = ACTIONS(2170), [anon_sym_break] = ACTIONS(2170), [anon_sym_continue] = ACTIONS(2170), [anon_sym_goto] = ACTIONS(2170), [anon_sym_DASH_DASH] = ACTIONS(2172), [anon_sym_PLUS_PLUS] = ACTIONS(2172), [anon_sym_sizeof] = ACTIONS(2170), [sym_number_literal] = ACTIONS(2172), [anon_sym_L_SQUOTE] = ACTIONS(2172), [anon_sym_u_SQUOTE] = ACTIONS(2172), [anon_sym_U_SQUOTE] = ACTIONS(2172), [anon_sym_u8_SQUOTE] = ACTIONS(2172), [anon_sym_SQUOTE] = ACTIONS(2172), [anon_sym_L_DQUOTE] = ACTIONS(2172), [anon_sym_u_DQUOTE] = ACTIONS(2172), [anon_sym_U_DQUOTE] = ACTIONS(2172), [anon_sym_u8_DQUOTE] = ACTIONS(2172), [anon_sym_DQUOTE] = ACTIONS(2172), [sym_true] = ACTIONS(2170), [sym_false] = ACTIONS(2170), [sym_null] = ACTIONS(2170), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2170), [anon_sym_virtual] = ACTIONS(2170), [anon_sym_explicit] = ACTIONS(2170), [sym_auto] = ACTIONS(2170), [anon_sym_typename] = ACTIONS(2170), [anon_sym_template] = ACTIONS(2170), [anon_sym_operator] = ACTIONS(2170), [anon_sym_delete] = ACTIONS(2170), [anon_sym_throw] = ACTIONS(2170), [anon_sym_namespace] = ACTIONS(2170), [anon_sym_using] = ACTIONS(2170), [anon_sym_static_assert] = ACTIONS(2170), [anon_sym_co_return] = ACTIONS(2170), [anon_sym_co_yield] = ACTIONS(2170), [anon_sym_try] = ACTIONS(2170), [anon_sym_co_await] = ACTIONS(2170), [anon_sym_new] = ACTIONS(2170), [sym_this] = ACTIONS(2170), [sym_nullptr] = ACTIONS(2170), [sym_raw_string_literal] = ACTIONS(2172), }, [707] = { [sym_identifier] = ACTIONS(2030), [aux_sym_preproc_include_token1] = ACTIONS(2030), [aux_sym_preproc_def_token1] = ACTIONS(2030), [aux_sym_preproc_if_token1] = ACTIONS(2030), [aux_sym_preproc_ifdef_token1] = ACTIONS(2030), [aux_sym_preproc_ifdef_token2] = ACTIONS(2030), [sym_preproc_directive] = ACTIONS(2030), [anon_sym_LPAREN2] = ACTIONS(2032), [anon_sym_BANG] = ACTIONS(2032), [anon_sym_TILDE] = ACTIONS(2032), [anon_sym_DASH] = ACTIONS(2030), [anon_sym_PLUS] = ACTIONS(2030), [anon_sym_STAR] = ACTIONS(2032), [anon_sym_AMP_AMP] = ACTIONS(2032), [anon_sym_AMP] = ACTIONS(2030), [anon_sym_SEMI] = ACTIONS(2032), [anon_sym_typedef] = ACTIONS(2030), [anon_sym_extern] = ACTIONS(2030), [anon_sym___attribute__] = ACTIONS(2030), [anon_sym_COLON_COLON] = ACTIONS(2032), [anon_sym_LBRACK_LBRACK] = ACTIONS(2032), [anon_sym___declspec] = ACTIONS(2030), [anon_sym___based] = ACTIONS(2030), [anon_sym___cdecl] = ACTIONS(2030), [anon_sym___clrcall] = ACTIONS(2030), [anon_sym___stdcall] = ACTIONS(2030), [anon_sym___fastcall] = ACTIONS(2030), [anon_sym___thiscall] = ACTIONS(2030), [anon_sym___vectorcall] = ACTIONS(2030), [anon_sym_LBRACE] = ACTIONS(2032), [anon_sym_RBRACE] = ACTIONS(2032), [anon_sym_LBRACK] = ACTIONS(2030), [anon_sym_static] = ACTIONS(2030), [anon_sym_register] = ACTIONS(2030), [anon_sym_inline] = ACTIONS(2030), [anon_sym_thread_local] = ACTIONS(2030), [anon_sym_const] = ACTIONS(2030), [anon_sym_volatile] = ACTIONS(2030), [anon_sym_restrict] = ACTIONS(2030), [anon_sym__Atomic] = ACTIONS(2030), [anon_sym_mutable] = ACTIONS(2030), [anon_sym_constexpr] = ACTIONS(2030), [anon_sym_signed] = ACTIONS(2030), [anon_sym_unsigned] = ACTIONS(2030), [anon_sym_long] = ACTIONS(2030), [anon_sym_short] = ACTIONS(2030), [sym_primitive_type] = ACTIONS(2030), [anon_sym_enum] = ACTIONS(2030), [anon_sym_class] = ACTIONS(2030), [anon_sym_struct] = ACTIONS(2030), [anon_sym_union] = ACTIONS(2030), [anon_sym_if] = ACTIONS(2030), [anon_sym_switch] = ACTIONS(2030), [anon_sym_case] = ACTIONS(2030), [anon_sym_default] = ACTIONS(2030), [anon_sym_while] = ACTIONS(2030), [anon_sym_do] = ACTIONS(2030), [anon_sym_for] = ACTIONS(2030), [anon_sym_return] = ACTIONS(2030), [anon_sym_break] = ACTIONS(2030), [anon_sym_continue] = ACTIONS(2030), [anon_sym_goto] = ACTIONS(2030), [anon_sym_DASH_DASH] = ACTIONS(2032), [anon_sym_PLUS_PLUS] = ACTIONS(2032), [anon_sym_sizeof] = ACTIONS(2030), [sym_number_literal] = ACTIONS(2032), [anon_sym_L_SQUOTE] = ACTIONS(2032), [anon_sym_u_SQUOTE] = ACTIONS(2032), [anon_sym_U_SQUOTE] = ACTIONS(2032), [anon_sym_u8_SQUOTE] = ACTIONS(2032), [anon_sym_SQUOTE] = ACTIONS(2032), [anon_sym_L_DQUOTE] = ACTIONS(2032), [anon_sym_u_DQUOTE] = ACTIONS(2032), [anon_sym_U_DQUOTE] = ACTIONS(2032), [anon_sym_u8_DQUOTE] = ACTIONS(2032), [anon_sym_DQUOTE] = ACTIONS(2032), [sym_true] = ACTIONS(2030), [sym_false] = ACTIONS(2030), [sym_null] = ACTIONS(2030), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2030), [anon_sym_virtual] = ACTIONS(2030), [anon_sym_explicit] = ACTIONS(2030), [sym_auto] = ACTIONS(2030), [anon_sym_typename] = ACTIONS(2030), [anon_sym_template] = ACTIONS(2030), [anon_sym_operator] = ACTIONS(2030), [anon_sym_delete] = ACTIONS(2030), [anon_sym_throw] = ACTIONS(2030), [anon_sym_namespace] = ACTIONS(2030), [anon_sym_using] = ACTIONS(2030), [anon_sym_static_assert] = ACTIONS(2030), [anon_sym_co_return] = ACTIONS(2030), [anon_sym_co_yield] = ACTIONS(2030), [anon_sym_try] = ACTIONS(2030), [anon_sym_co_await] = ACTIONS(2030), [anon_sym_new] = ACTIONS(2030), [sym_this] = ACTIONS(2030), [sym_nullptr] = ACTIONS(2030), [sym_raw_string_literal] = ACTIONS(2032), }, [708] = { [sym_identifier] = ACTIONS(2082), [aux_sym_preproc_include_token1] = ACTIONS(2082), [aux_sym_preproc_def_token1] = ACTIONS(2082), [aux_sym_preproc_if_token1] = ACTIONS(2082), [aux_sym_preproc_ifdef_token1] = ACTIONS(2082), [aux_sym_preproc_ifdef_token2] = ACTIONS(2082), [sym_preproc_directive] = ACTIONS(2082), [anon_sym_LPAREN2] = ACTIONS(2084), [anon_sym_BANG] = ACTIONS(2084), [anon_sym_TILDE] = ACTIONS(2084), [anon_sym_DASH] = ACTIONS(2082), [anon_sym_PLUS] = ACTIONS(2082), [anon_sym_STAR] = ACTIONS(2084), [anon_sym_AMP_AMP] = ACTIONS(2084), [anon_sym_AMP] = ACTIONS(2082), [anon_sym_SEMI] = ACTIONS(2084), [anon_sym_typedef] = ACTIONS(2082), [anon_sym_extern] = ACTIONS(2082), [anon_sym___attribute__] = ACTIONS(2082), [anon_sym_COLON_COLON] = ACTIONS(2084), [anon_sym_LBRACK_LBRACK] = ACTIONS(2084), [anon_sym___declspec] = ACTIONS(2082), [anon_sym___based] = ACTIONS(2082), [anon_sym___cdecl] = ACTIONS(2082), [anon_sym___clrcall] = ACTIONS(2082), [anon_sym___stdcall] = ACTIONS(2082), [anon_sym___fastcall] = ACTIONS(2082), [anon_sym___thiscall] = ACTIONS(2082), [anon_sym___vectorcall] = ACTIONS(2082), [anon_sym_LBRACE] = ACTIONS(2084), [anon_sym_RBRACE] = ACTIONS(2084), [anon_sym_LBRACK] = ACTIONS(2082), [anon_sym_static] = ACTIONS(2082), [anon_sym_register] = ACTIONS(2082), [anon_sym_inline] = ACTIONS(2082), [anon_sym_thread_local] = ACTIONS(2082), [anon_sym_const] = ACTIONS(2082), [anon_sym_volatile] = ACTIONS(2082), [anon_sym_restrict] = ACTIONS(2082), [anon_sym__Atomic] = ACTIONS(2082), [anon_sym_mutable] = ACTIONS(2082), [anon_sym_constexpr] = ACTIONS(2082), [anon_sym_signed] = ACTIONS(2082), [anon_sym_unsigned] = ACTIONS(2082), [anon_sym_long] = ACTIONS(2082), [anon_sym_short] = ACTIONS(2082), [sym_primitive_type] = ACTIONS(2082), [anon_sym_enum] = ACTIONS(2082), [anon_sym_class] = ACTIONS(2082), [anon_sym_struct] = ACTIONS(2082), [anon_sym_union] = ACTIONS(2082), [anon_sym_if] = ACTIONS(2082), [anon_sym_switch] = ACTIONS(2082), [anon_sym_case] = ACTIONS(2082), [anon_sym_default] = ACTIONS(2082), [anon_sym_while] = ACTIONS(2082), [anon_sym_do] = ACTIONS(2082), [anon_sym_for] = ACTIONS(2082), [anon_sym_return] = ACTIONS(2082), [anon_sym_break] = ACTIONS(2082), [anon_sym_continue] = ACTIONS(2082), [anon_sym_goto] = ACTIONS(2082), [anon_sym_DASH_DASH] = ACTIONS(2084), [anon_sym_PLUS_PLUS] = ACTIONS(2084), [anon_sym_sizeof] = ACTIONS(2082), [sym_number_literal] = ACTIONS(2084), [anon_sym_L_SQUOTE] = ACTIONS(2084), [anon_sym_u_SQUOTE] = ACTIONS(2084), [anon_sym_U_SQUOTE] = ACTIONS(2084), [anon_sym_u8_SQUOTE] = ACTIONS(2084), [anon_sym_SQUOTE] = ACTIONS(2084), [anon_sym_L_DQUOTE] = ACTIONS(2084), [anon_sym_u_DQUOTE] = ACTIONS(2084), [anon_sym_U_DQUOTE] = ACTIONS(2084), [anon_sym_u8_DQUOTE] = ACTIONS(2084), [anon_sym_DQUOTE] = ACTIONS(2084), [sym_true] = ACTIONS(2082), [sym_false] = ACTIONS(2082), [sym_null] = ACTIONS(2082), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2082), [anon_sym_virtual] = ACTIONS(2082), [anon_sym_explicit] = ACTIONS(2082), [sym_auto] = ACTIONS(2082), [anon_sym_typename] = ACTIONS(2082), [anon_sym_template] = ACTIONS(2082), [anon_sym_operator] = ACTIONS(2082), [anon_sym_delete] = ACTIONS(2082), [anon_sym_throw] = ACTIONS(2082), [anon_sym_namespace] = ACTIONS(2082), [anon_sym_using] = ACTIONS(2082), [anon_sym_static_assert] = ACTIONS(2082), [anon_sym_co_return] = ACTIONS(2082), [anon_sym_co_yield] = ACTIONS(2082), [anon_sym_try] = ACTIONS(2082), [anon_sym_co_await] = ACTIONS(2082), [anon_sym_new] = ACTIONS(2082), [sym_this] = ACTIONS(2082), [sym_nullptr] = ACTIONS(2082), [sym_raw_string_literal] = ACTIONS(2084), }, [709] = { [sym_identifier] = ACTIONS(2086), [aux_sym_preproc_include_token1] = ACTIONS(2086), [aux_sym_preproc_def_token1] = ACTIONS(2086), [aux_sym_preproc_if_token1] = ACTIONS(2086), [aux_sym_preproc_ifdef_token1] = ACTIONS(2086), [aux_sym_preproc_ifdef_token2] = ACTIONS(2086), [sym_preproc_directive] = ACTIONS(2086), [anon_sym_LPAREN2] = ACTIONS(2088), [anon_sym_BANG] = ACTIONS(2088), [anon_sym_TILDE] = ACTIONS(2088), [anon_sym_DASH] = ACTIONS(2086), [anon_sym_PLUS] = ACTIONS(2086), [anon_sym_STAR] = ACTIONS(2088), [anon_sym_AMP_AMP] = ACTIONS(2088), [anon_sym_AMP] = ACTIONS(2086), [anon_sym_SEMI] = ACTIONS(2088), [anon_sym_typedef] = ACTIONS(2086), [anon_sym_extern] = ACTIONS(2086), [anon_sym___attribute__] = ACTIONS(2086), [anon_sym_COLON_COLON] = ACTIONS(2088), [anon_sym_LBRACK_LBRACK] = ACTIONS(2088), [anon_sym___declspec] = ACTIONS(2086), [anon_sym___based] = ACTIONS(2086), [anon_sym___cdecl] = ACTIONS(2086), [anon_sym___clrcall] = ACTIONS(2086), [anon_sym___stdcall] = ACTIONS(2086), [anon_sym___fastcall] = ACTIONS(2086), [anon_sym___thiscall] = ACTIONS(2086), [anon_sym___vectorcall] = ACTIONS(2086), [anon_sym_LBRACE] = ACTIONS(2088), [anon_sym_RBRACE] = ACTIONS(2088), [anon_sym_LBRACK] = ACTIONS(2086), [anon_sym_static] = ACTIONS(2086), [anon_sym_register] = ACTIONS(2086), [anon_sym_inline] = ACTIONS(2086), [anon_sym_thread_local] = ACTIONS(2086), [anon_sym_const] = ACTIONS(2086), [anon_sym_volatile] = ACTIONS(2086), [anon_sym_restrict] = ACTIONS(2086), [anon_sym__Atomic] = ACTIONS(2086), [anon_sym_mutable] = ACTIONS(2086), [anon_sym_constexpr] = ACTIONS(2086), [anon_sym_signed] = ACTIONS(2086), [anon_sym_unsigned] = ACTIONS(2086), [anon_sym_long] = ACTIONS(2086), [anon_sym_short] = ACTIONS(2086), [sym_primitive_type] = ACTIONS(2086), [anon_sym_enum] = ACTIONS(2086), [anon_sym_class] = ACTIONS(2086), [anon_sym_struct] = ACTIONS(2086), [anon_sym_union] = ACTIONS(2086), [anon_sym_if] = ACTIONS(2086), [anon_sym_switch] = ACTIONS(2086), [anon_sym_case] = ACTIONS(2086), [anon_sym_default] = ACTIONS(2086), [anon_sym_while] = ACTIONS(2086), [anon_sym_do] = ACTIONS(2086), [anon_sym_for] = ACTIONS(2086), [anon_sym_return] = ACTIONS(2086), [anon_sym_break] = ACTIONS(2086), [anon_sym_continue] = ACTIONS(2086), [anon_sym_goto] = ACTIONS(2086), [anon_sym_DASH_DASH] = ACTIONS(2088), [anon_sym_PLUS_PLUS] = ACTIONS(2088), [anon_sym_sizeof] = ACTIONS(2086), [sym_number_literal] = ACTIONS(2088), [anon_sym_L_SQUOTE] = ACTIONS(2088), [anon_sym_u_SQUOTE] = ACTIONS(2088), [anon_sym_U_SQUOTE] = ACTIONS(2088), [anon_sym_u8_SQUOTE] = ACTIONS(2088), [anon_sym_SQUOTE] = ACTIONS(2088), [anon_sym_L_DQUOTE] = ACTIONS(2088), [anon_sym_u_DQUOTE] = ACTIONS(2088), [anon_sym_U_DQUOTE] = ACTIONS(2088), [anon_sym_u8_DQUOTE] = ACTIONS(2088), [anon_sym_DQUOTE] = ACTIONS(2088), [sym_true] = ACTIONS(2086), [sym_false] = ACTIONS(2086), [sym_null] = ACTIONS(2086), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2086), [anon_sym_virtual] = ACTIONS(2086), [anon_sym_explicit] = ACTIONS(2086), [sym_auto] = ACTIONS(2086), [anon_sym_typename] = ACTIONS(2086), [anon_sym_template] = ACTIONS(2086), [anon_sym_operator] = ACTIONS(2086), [anon_sym_delete] = ACTIONS(2086), [anon_sym_throw] = ACTIONS(2086), [anon_sym_namespace] = ACTIONS(2086), [anon_sym_using] = ACTIONS(2086), [anon_sym_static_assert] = ACTIONS(2086), [anon_sym_co_return] = ACTIONS(2086), [anon_sym_co_yield] = ACTIONS(2086), [anon_sym_try] = ACTIONS(2086), [anon_sym_co_await] = ACTIONS(2086), [anon_sym_new] = ACTIONS(2086), [sym_this] = ACTIONS(2086), [sym_nullptr] = ACTIONS(2086), [sym_raw_string_literal] = ACTIONS(2088), }, [710] = { [sym_identifier] = ACTIONS(2038), [aux_sym_preproc_include_token1] = ACTIONS(2038), [aux_sym_preproc_def_token1] = ACTIONS(2038), [aux_sym_preproc_if_token1] = ACTIONS(2038), [aux_sym_preproc_if_token2] = ACTIONS(2038), [aux_sym_preproc_ifdef_token1] = ACTIONS(2038), [aux_sym_preproc_ifdef_token2] = ACTIONS(2038), [sym_preproc_directive] = ACTIONS(2038), [anon_sym_LPAREN2] = ACTIONS(2040), [anon_sym_BANG] = ACTIONS(2040), [anon_sym_TILDE] = ACTIONS(2040), [anon_sym_DASH] = ACTIONS(2038), [anon_sym_PLUS] = ACTIONS(2038), [anon_sym_STAR] = ACTIONS(2040), [anon_sym_AMP_AMP] = ACTIONS(2040), [anon_sym_AMP] = ACTIONS(2038), [anon_sym_SEMI] = ACTIONS(2040), [anon_sym_typedef] = ACTIONS(2038), [anon_sym_extern] = ACTIONS(2038), [anon_sym___attribute__] = ACTIONS(2038), [anon_sym_COLON_COLON] = ACTIONS(2040), [anon_sym_LBRACK_LBRACK] = ACTIONS(2040), [anon_sym___declspec] = ACTIONS(2038), [anon_sym___based] = ACTIONS(2038), [anon_sym___cdecl] = ACTIONS(2038), [anon_sym___clrcall] = ACTIONS(2038), [anon_sym___stdcall] = ACTIONS(2038), [anon_sym___fastcall] = ACTIONS(2038), [anon_sym___thiscall] = ACTIONS(2038), [anon_sym___vectorcall] = ACTIONS(2038), [anon_sym_LBRACE] = ACTIONS(2040), [anon_sym_LBRACK] = ACTIONS(2038), [anon_sym_static] = ACTIONS(2038), [anon_sym_register] = ACTIONS(2038), [anon_sym_inline] = ACTIONS(2038), [anon_sym_thread_local] = ACTIONS(2038), [anon_sym_const] = ACTIONS(2038), [anon_sym_volatile] = ACTIONS(2038), [anon_sym_restrict] = ACTIONS(2038), [anon_sym__Atomic] = ACTIONS(2038), [anon_sym_mutable] = ACTIONS(2038), [anon_sym_constexpr] = ACTIONS(2038), [anon_sym_signed] = ACTIONS(2038), [anon_sym_unsigned] = ACTIONS(2038), [anon_sym_long] = ACTIONS(2038), [anon_sym_short] = ACTIONS(2038), [sym_primitive_type] = ACTIONS(2038), [anon_sym_enum] = ACTIONS(2038), [anon_sym_class] = ACTIONS(2038), [anon_sym_struct] = ACTIONS(2038), [anon_sym_union] = ACTIONS(2038), [anon_sym_if] = ACTIONS(2038), [anon_sym_switch] = ACTIONS(2038), [anon_sym_case] = ACTIONS(2038), [anon_sym_default] = ACTIONS(2038), [anon_sym_while] = ACTIONS(2038), [anon_sym_do] = ACTIONS(2038), [anon_sym_for] = ACTIONS(2038), [anon_sym_return] = ACTIONS(2038), [anon_sym_break] = ACTIONS(2038), [anon_sym_continue] = ACTIONS(2038), [anon_sym_goto] = ACTIONS(2038), [anon_sym_DASH_DASH] = ACTIONS(2040), [anon_sym_PLUS_PLUS] = ACTIONS(2040), [anon_sym_sizeof] = ACTIONS(2038), [sym_number_literal] = ACTIONS(2040), [anon_sym_L_SQUOTE] = ACTIONS(2040), [anon_sym_u_SQUOTE] = ACTIONS(2040), [anon_sym_U_SQUOTE] = ACTIONS(2040), [anon_sym_u8_SQUOTE] = ACTIONS(2040), [anon_sym_SQUOTE] = ACTIONS(2040), [anon_sym_L_DQUOTE] = ACTIONS(2040), [anon_sym_u_DQUOTE] = ACTIONS(2040), [anon_sym_U_DQUOTE] = ACTIONS(2040), [anon_sym_u8_DQUOTE] = ACTIONS(2040), [anon_sym_DQUOTE] = ACTIONS(2040), [sym_true] = ACTIONS(2038), [sym_false] = ACTIONS(2038), [sym_null] = ACTIONS(2038), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2038), [anon_sym_virtual] = ACTIONS(2038), [anon_sym_explicit] = ACTIONS(2038), [sym_auto] = ACTIONS(2038), [anon_sym_typename] = ACTIONS(2038), [anon_sym_template] = ACTIONS(2038), [anon_sym_operator] = ACTIONS(2038), [anon_sym_delete] = ACTIONS(2038), [anon_sym_throw] = ACTIONS(2038), [anon_sym_namespace] = ACTIONS(2038), [anon_sym_using] = ACTIONS(2038), [anon_sym_static_assert] = ACTIONS(2038), [anon_sym_co_return] = ACTIONS(2038), [anon_sym_co_yield] = ACTIONS(2038), [anon_sym_try] = ACTIONS(2038), [anon_sym_co_await] = ACTIONS(2038), [anon_sym_new] = ACTIONS(2038), [sym_this] = ACTIONS(2038), [sym_nullptr] = ACTIONS(2038), [sym_raw_string_literal] = ACTIONS(2040), }, [711] = { [sym_identifier] = ACTIONS(2046), [aux_sym_preproc_include_token1] = ACTIONS(2046), [aux_sym_preproc_def_token1] = ACTIONS(2046), [aux_sym_preproc_if_token1] = ACTIONS(2046), [aux_sym_preproc_if_token2] = ACTIONS(2046), [aux_sym_preproc_ifdef_token1] = ACTIONS(2046), [aux_sym_preproc_ifdef_token2] = ACTIONS(2046), [sym_preproc_directive] = ACTIONS(2046), [anon_sym_LPAREN2] = ACTIONS(2048), [anon_sym_BANG] = ACTIONS(2048), [anon_sym_TILDE] = ACTIONS(2048), [anon_sym_DASH] = ACTIONS(2046), [anon_sym_PLUS] = ACTIONS(2046), [anon_sym_STAR] = ACTIONS(2048), [anon_sym_AMP_AMP] = ACTIONS(2048), [anon_sym_AMP] = ACTIONS(2046), [anon_sym_SEMI] = ACTIONS(2048), [anon_sym_typedef] = ACTIONS(2046), [anon_sym_extern] = ACTIONS(2046), [anon_sym___attribute__] = ACTIONS(2046), [anon_sym_COLON_COLON] = ACTIONS(2048), [anon_sym_LBRACK_LBRACK] = ACTIONS(2048), [anon_sym___declspec] = ACTIONS(2046), [anon_sym___based] = ACTIONS(2046), [anon_sym___cdecl] = ACTIONS(2046), [anon_sym___clrcall] = ACTIONS(2046), [anon_sym___stdcall] = ACTIONS(2046), [anon_sym___fastcall] = ACTIONS(2046), [anon_sym___thiscall] = ACTIONS(2046), [anon_sym___vectorcall] = ACTIONS(2046), [anon_sym_LBRACE] = ACTIONS(2048), [anon_sym_LBRACK] = ACTIONS(2046), [anon_sym_static] = ACTIONS(2046), [anon_sym_register] = ACTIONS(2046), [anon_sym_inline] = ACTIONS(2046), [anon_sym_thread_local] = ACTIONS(2046), [anon_sym_const] = ACTIONS(2046), [anon_sym_volatile] = ACTIONS(2046), [anon_sym_restrict] = ACTIONS(2046), [anon_sym__Atomic] = ACTIONS(2046), [anon_sym_mutable] = ACTIONS(2046), [anon_sym_constexpr] = ACTIONS(2046), [anon_sym_signed] = ACTIONS(2046), [anon_sym_unsigned] = ACTIONS(2046), [anon_sym_long] = ACTIONS(2046), [anon_sym_short] = ACTIONS(2046), [sym_primitive_type] = ACTIONS(2046), [anon_sym_enum] = ACTIONS(2046), [anon_sym_class] = ACTIONS(2046), [anon_sym_struct] = ACTIONS(2046), [anon_sym_union] = ACTIONS(2046), [anon_sym_if] = ACTIONS(2046), [anon_sym_switch] = ACTIONS(2046), [anon_sym_case] = ACTIONS(2046), [anon_sym_default] = ACTIONS(2046), [anon_sym_while] = ACTIONS(2046), [anon_sym_do] = ACTIONS(2046), [anon_sym_for] = ACTIONS(2046), [anon_sym_return] = ACTIONS(2046), [anon_sym_break] = ACTIONS(2046), [anon_sym_continue] = ACTIONS(2046), [anon_sym_goto] = ACTIONS(2046), [anon_sym_DASH_DASH] = ACTIONS(2048), [anon_sym_PLUS_PLUS] = ACTIONS(2048), [anon_sym_sizeof] = ACTIONS(2046), [sym_number_literal] = ACTIONS(2048), [anon_sym_L_SQUOTE] = ACTIONS(2048), [anon_sym_u_SQUOTE] = ACTIONS(2048), [anon_sym_U_SQUOTE] = ACTIONS(2048), [anon_sym_u8_SQUOTE] = ACTIONS(2048), [anon_sym_SQUOTE] = ACTIONS(2048), [anon_sym_L_DQUOTE] = ACTIONS(2048), [anon_sym_u_DQUOTE] = ACTIONS(2048), [anon_sym_U_DQUOTE] = ACTIONS(2048), [anon_sym_u8_DQUOTE] = ACTIONS(2048), [anon_sym_DQUOTE] = ACTIONS(2048), [sym_true] = ACTIONS(2046), [sym_false] = ACTIONS(2046), [sym_null] = ACTIONS(2046), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2046), [anon_sym_virtual] = ACTIONS(2046), [anon_sym_explicit] = ACTIONS(2046), [sym_auto] = ACTIONS(2046), [anon_sym_typename] = ACTIONS(2046), [anon_sym_template] = ACTIONS(2046), [anon_sym_operator] = ACTIONS(2046), [anon_sym_delete] = ACTIONS(2046), [anon_sym_throw] = ACTIONS(2046), [anon_sym_namespace] = ACTIONS(2046), [anon_sym_using] = ACTIONS(2046), [anon_sym_static_assert] = ACTIONS(2046), [anon_sym_co_return] = ACTIONS(2046), [anon_sym_co_yield] = ACTIONS(2046), [anon_sym_try] = ACTIONS(2046), [anon_sym_co_await] = ACTIONS(2046), [anon_sym_new] = ACTIONS(2046), [sym_this] = ACTIONS(2046), [sym_nullptr] = ACTIONS(2046), [sym_raw_string_literal] = ACTIONS(2048), }, [712] = { [ts_builtin_sym_end] = ACTIONS(2172), [sym_identifier] = ACTIONS(2170), [aux_sym_preproc_include_token1] = ACTIONS(2170), [aux_sym_preproc_def_token1] = ACTIONS(2170), [aux_sym_preproc_if_token1] = ACTIONS(2170), [aux_sym_preproc_ifdef_token1] = ACTIONS(2170), [aux_sym_preproc_ifdef_token2] = ACTIONS(2170), [sym_preproc_directive] = ACTIONS(2170), [anon_sym_LPAREN2] = ACTIONS(2172), [anon_sym_BANG] = ACTIONS(2172), [anon_sym_TILDE] = ACTIONS(2172), [anon_sym_DASH] = ACTIONS(2170), [anon_sym_PLUS] = ACTIONS(2170), [anon_sym_STAR] = ACTIONS(2172), [anon_sym_AMP_AMP] = ACTIONS(2172), [anon_sym_AMP] = ACTIONS(2170), [anon_sym_SEMI] = ACTIONS(2172), [anon_sym_typedef] = ACTIONS(2170), [anon_sym_extern] = ACTIONS(2170), [anon_sym___attribute__] = ACTIONS(2170), [anon_sym_COLON_COLON] = ACTIONS(2172), [anon_sym_LBRACK_LBRACK] = ACTIONS(2172), [anon_sym___declspec] = ACTIONS(2170), [anon_sym___based] = ACTIONS(2170), [anon_sym___cdecl] = ACTIONS(2170), [anon_sym___clrcall] = ACTIONS(2170), [anon_sym___stdcall] = ACTIONS(2170), [anon_sym___fastcall] = ACTIONS(2170), [anon_sym___thiscall] = ACTIONS(2170), [anon_sym___vectorcall] = ACTIONS(2170), [anon_sym_LBRACE] = ACTIONS(2172), [anon_sym_LBRACK] = ACTIONS(2170), [anon_sym_static] = ACTIONS(2170), [anon_sym_register] = ACTIONS(2170), [anon_sym_inline] = ACTIONS(2170), [anon_sym_thread_local] = ACTIONS(2170), [anon_sym_const] = ACTIONS(2170), [anon_sym_volatile] = ACTIONS(2170), [anon_sym_restrict] = ACTIONS(2170), [anon_sym__Atomic] = ACTIONS(2170), [anon_sym_mutable] = ACTIONS(2170), [anon_sym_constexpr] = ACTIONS(2170), [anon_sym_signed] = ACTIONS(2170), [anon_sym_unsigned] = ACTIONS(2170), [anon_sym_long] = ACTIONS(2170), [anon_sym_short] = ACTIONS(2170), [sym_primitive_type] = ACTIONS(2170), [anon_sym_enum] = ACTIONS(2170), [anon_sym_class] = ACTIONS(2170), [anon_sym_struct] = ACTIONS(2170), [anon_sym_union] = ACTIONS(2170), [anon_sym_if] = ACTIONS(2170), [anon_sym_switch] = ACTIONS(2170), [anon_sym_case] = ACTIONS(2170), [anon_sym_default] = ACTIONS(2170), [anon_sym_while] = ACTIONS(2170), [anon_sym_do] = ACTIONS(2170), [anon_sym_for] = ACTIONS(2170), [anon_sym_return] = ACTIONS(2170), [anon_sym_break] = ACTIONS(2170), [anon_sym_continue] = ACTIONS(2170), [anon_sym_goto] = ACTIONS(2170), [anon_sym_DASH_DASH] = ACTIONS(2172), [anon_sym_PLUS_PLUS] = ACTIONS(2172), [anon_sym_sizeof] = ACTIONS(2170), [sym_number_literal] = ACTIONS(2172), [anon_sym_L_SQUOTE] = ACTIONS(2172), [anon_sym_u_SQUOTE] = ACTIONS(2172), [anon_sym_U_SQUOTE] = ACTIONS(2172), [anon_sym_u8_SQUOTE] = ACTIONS(2172), [anon_sym_SQUOTE] = ACTIONS(2172), [anon_sym_L_DQUOTE] = ACTIONS(2172), [anon_sym_u_DQUOTE] = ACTIONS(2172), [anon_sym_U_DQUOTE] = ACTIONS(2172), [anon_sym_u8_DQUOTE] = ACTIONS(2172), [anon_sym_DQUOTE] = ACTIONS(2172), [sym_true] = ACTIONS(2170), [sym_false] = ACTIONS(2170), [sym_null] = ACTIONS(2170), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2170), [anon_sym_virtual] = ACTIONS(2170), [anon_sym_explicit] = ACTIONS(2170), [sym_auto] = ACTIONS(2170), [anon_sym_typename] = ACTIONS(2170), [anon_sym_template] = ACTIONS(2170), [anon_sym_operator] = ACTIONS(2170), [anon_sym_delete] = ACTIONS(2170), [anon_sym_throw] = ACTIONS(2170), [anon_sym_namespace] = ACTIONS(2170), [anon_sym_using] = ACTIONS(2170), [anon_sym_static_assert] = ACTIONS(2170), [anon_sym_co_return] = ACTIONS(2170), [anon_sym_co_yield] = ACTIONS(2170), [anon_sym_try] = ACTIONS(2170), [anon_sym_co_await] = ACTIONS(2170), [anon_sym_new] = ACTIONS(2170), [sym_this] = ACTIONS(2170), [sym_nullptr] = ACTIONS(2170), [sym_raw_string_literal] = ACTIONS(2172), }, [713] = { [sym_identifier] = ACTIONS(2178), [aux_sym_preproc_include_token1] = ACTIONS(2178), [aux_sym_preproc_def_token1] = ACTIONS(2178), [aux_sym_preproc_if_token1] = ACTIONS(2178), [aux_sym_preproc_if_token2] = ACTIONS(2178), [aux_sym_preproc_ifdef_token1] = ACTIONS(2178), [aux_sym_preproc_ifdef_token2] = ACTIONS(2178), [sym_preproc_directive] = ACTIONS(2178), [anon_sym_LPAREN2] = ACTIONS(2180), [anon_sym_BANG] = ACTIONS(2180), [anon_sym_TILDE] = ACTIONS(2180), [anon_sym_DASH] = ACTIONS(2178), [anon_sym_PLUS] = ACTIONS(2178), [anon_sym_STAR] = ACTIONS(2180), [anon_sym_AMP_AMP] = ACTIONS(2180), [anon_sym_AMP] = ACTIONS(2178), [anon_sym_SEMI] = ACTIONS(2180), [anon_sym_typedef] = ACTIONS(2178), [anon_sym_extern] = ACTIONS(2178), [anon_sym___attribute__] = ACTIONS(2178), [anon_sym_COLON_COLON] = ACTIONS(2180), [anon_sym_LBRACK_LBRACK] = ACTIONS(2180), [anon_sym___declspec] = ACTIONS(2178), [anon_sym___based] = ACTIONS(2178), [anon_sym___cdecl] = ACTIONS(2178), [anon_sym___clrcall] = ACTIONS(2178), [anon_sym___stdcall] = ACTIONS(2178), [anon_sym___fastcall] = ACTIONS(2178), [anon_sym___thiscall] = ACTIONS(2178), [anon_sym___vectorcall] = ACTIONS(2178), [anon_sym_LBRACE] = ACTIONS(2180), [anon_sym_LBRACK] = ACTIONS(2178), [anon_sym_static] = ACTIONS(2178), [anon_sym_register] = ACTIONS(2178), [anon_sym_inline] = ACTIONS(2178), [anon_sym_thread_local] = ACTIONS(2178), [anon_sym_const] = ACTIONS(2178), [anon_sym_volatile] = ACTIONS(2178), [anon_sym_restrict] = ACTIONS(2178), [anon_sym__Atomic] = ACTIONS(2178), [anon_sym_mutable] = ACTIONS(2178), [anon_sym_constexpr] = ACTIONS(2178), [anon_sym_signed] = ACTIONS(2178), [anon_sym_unsigned] = ACTIONS(2178), [anon_sym_long] = ACTIONS(2178), [anon_sym_short] = ACTIONS(2178), [sym_primitive_type] = ACTIONS(2178), [anon_sym_enum] = ACTIONS(2178), [anon_sym_class] = ACTIONS(2178), [anon_sym_struct] = ACTIONS(2178), [anon_sym_union] = ACTIONS(2178), [anon_sym_if] = ACTIONS(2178), [anon_sym_switch] = ACTIONS(2178), [anon_sym_case] = ACTIONS(2178), [anon_sym_default] = ACTIONS(2178), [anon_sym_while] = ACTIONS(2178), [anon_sym_do] = ACTIONS(2178), [anon_sym_for] = ACTIONS(2178), [anon_sym_return] = ACTIONS(2178), [anon_sym_break] = ACTIONS(2178), [anon_sym_continue] = ACTIONS(2178), [anon_sym_goto] = ACTIONS(2178), [anon_sym_DASH_DASH] = ACTIONS(2180), [anon_sym_PLUS_PLUS] = ACTIONS(2180), [anon_sym_sizeof] = ACTIONS(2178), [sym_number_literal] = ACTIONS(2180), [anon_sym_L_SQUOTE] = ACTIONS(2180), [anon_sym_u_SQUOTE] = ACTIONS(2180), [anon_sym_U_SQUOTE] = ACTIONS(2180), [anon_sym_u8_SQUOTE] = ACTIONS(2180), [anon_sym_SQUOTE] = ACTIONS(2180), [anon_sym_L_DQUOTE] = ACTIONS(2180), [anon_sym_u_DQUOTE] = ACTIONS(2180), [anon_sym_U_DQUOTE] = ACTIONS(2180), [anon_sym_u8_DQUOTE] = ACTIONS(2180), [anon_sym_DQUOTE] = ACTIONS(2180), [sym_true] = ACTIONS(2178), [sym_false] = ACTIONS(2178), [sym_null] = ACTIONS(2178), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2178), [anon_sym_virtual] = ACTIONS(2178), [anon_sym_explicit] = ACTIONS(2178), [sym_auto] = ACTIONS(2178), [anon_sym_typename] = ACTIONS(2178), [anon_sym_template] = ACTIONS(2178), [anon_sym_operator] = ACTIONS(2178), [anon_sym_delete] = ACTIONS(2178), [anon_sym_throw] = ACTIONS(2178), [anon_sym_namespace] = ACTIONS(2178), [anon_sym_using] = ACTIONS(2178), [anon_sym_static_assert] = ACTIONS(2178), [anon_sym_co_return] = ACTIONS(2178), [anon_sym_co_yield] = ACTIONS(2178), [anon_sym_try] = ACTIONS(2178), [anon_sym_co_await] = ACTIONS(2178), [anon_sym_new] = ACTIONS(2178), [sym_this] = ACTIONS(2178), [sym_nullptr] = ACTIONS(2178), [sym_raw_string_literal] = ACTIONS(2180), }, [714] = { [ts_builtin_sym_end] = ACTIONS(2076), [sym_identifier] = ACTIONS(2074), [aux_sym_preproc_include_token1] = ACTIONS(2074), [aux_sym_preproc_def_token1] = ACTIONS(2074), [aux_sym_preproc_if_token1] = ACTIONS(2074), [aux_sym_preproc_ifdef_token1] = ACTIONS(2074), [aux_sym_preproc_ifdef_token2] = ACTIONS(2074), [sym_preproc_directive] = ACTIONS(2074), [anon_sym_LPAREN2] = ACTIONS(2076), [anon_sym_BANG] = ACTIONS(2076), [anon_sym_TILDE] = ACTIONS(2076), [anon_sym_DASH] = ACTIONS(2074), [anon_sym_PLUS] = ACTIONS(2074), [anon_sym_STAR] = ACTIONS(2076), [anon_sym_AMP_AMP] = ACTIONS(2076), [anon_sym_AMP] = ACTIONS(2074), [anon_sym_SEMI] = ACTIONS(2076), [anon_sym_typedef] = ACTIONS(2074), [anon_sym_extern] = ACTIONS(2074), [anon_sym___attribute__] = ACTIONS(2074), [anon_sym_COLON_COLON] = ACTIONS(2076), [anon_sym_LBRACK_LBRACK] = ACTIONS(2076), [anon_sym___declspec] = ACTIONS(2074), [anon_sym___based] = ACTIONS(2074), [anon_sym___cdecl] = ACTIONS(2074), [anon_sym___clrcall] = ACTIONS(2074), [anon_sym___stdcall] = ACTIONS(2074), [anon_sym___fastcall] = ACTIONS(2074), [anon_sym___thiscall] = ACTIONS(2074), [anon_sym___vectorcall] = ACTIONS(2074), [anon_sym_LBRACE] = ACTIONS(2076), [anon_sym_LBRACK] = ACTIONS(2074), [anon_sym_static] = ACTIONS(2074), [anon_sym_register] = ACTIONS(2074), [anon_sym_inline] = ACTIONS(2074), [anon_sym_thread_local] = ACTIONS(2074), [anon_sym_const] = ACTIONS(2074), [anon_sym_volatile] = ACTIONS(2074), [anon_sym_restrict] = ACTIONS(2074), [anon_sym__Atomic] = ACTIONS(2074), [anon_sym_mutable] = ACTIONS(2074), [anon_sym_constexpr] = ACTIONS(2074), [anon_sym_signed] = ACTIONS(2074), [anon_sym_unsigned] = ACTIONS(2074), [anon_sym_long] = ACTIONS(2074), [anon_sym_short] = ACTIONS(2074), [sym_primitive_type] = ACTIONS(2074), [anon_sym_enum] = ACTIONS(2074), [anon_sym_class] = ACTIONS(2074), [anon_sym_struct] = ACTIONS(2074), [anon_sym_union] = ACTIONS(2074), [anon_sym_if] = ACTIONS(2074), [anon_sym_switch] = ACTIONS(2074), [anon_sym_case] = ACTIONS(2074), [anon_sym_default] = ACTIONS(2074), [anon_sym_while] = ACTIONS(2074), [anon_sym_do] = ACTIONS(2074), [anon_sym_for] = ACTIONS(2074), [anon_sym_return] = ACTIONS(2074), [anon_sym_break] = ACTIONS(2074), [anon_sym_continue] = ACTIONS(2074), [anon_sym_goto] = ACTIONS(2074), [anon_sym_DASH_DASH] = ACTIONS(2076), [anon_sym_PLUS_PLUS] = ACTIONS(2076), [anon_sym_sizeof] = ACTIONS(2074), [sym_number_literal] = ACTIONS(2076), [anon_sym_L_SQUOTE] = ACTIONS(2076), [anon_sym_u_SQUOTE] = ACTIONS(2076), [anon_sym_U_SQUOTE] = ACTIONS(2076), [anon_sym_u8_SQUOTE] = ACTIONS(2076), [anon_sym_SQUOTE] = ACTIONS(2076), [anon_sym_L_DQUOTE] = ACTIONS(2076), [anon_sym_u_DQUOTE] = ACTIONS(2076), [anon_sym_U_DQUOTE] = ACTIONS(2076), [anon_sym_u8_DQUOTE] = ACTIONS(2076), [anon_sym_DQUOTE] = ACTIONS(2076), [sym_true] = ACTIONS(2074), [sym_false] = ACTIONS(2074), [sym_null] = ACTIONS(2074), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2074), [anon_sym_virtual] = ACTIONS(2074), [anon_sym_explicit] = ACTIONS(2074), [sym_auto] = ACTIONS(2074), [anon_sym_typename] = ACTIONS(2074), [anon_sym_template] = ACTIONS(2074), [anon_sym_operator] = ACTIONS(2074), [anon_sym_delete] = ACTIONS(2074), [anon_sym_throw] = ACTIONS(2074), [anon_sym_namespace] = ACTIONS(2074), [anon_sym_using] = ACTIONS(2074), [anon_sym_static_assert] = ACTIONS(2074), [anon_sym_co_return] = ACTIONS(2074), [anon_sym_co_yield] = ACTIONS(2074), [anon_sym_try] = ACTIONS(2074), [anon_sym_co_await] = ACTIONS(2074), [anon_sym_new] = ACTIONS(2074), [sym_this] = ACTIONS(2074), [sym_nullptr] = ACTIONS(2074), [sym_raw_string_literal] = ACTIONS(2076), }, [715] = { [sym_identifier] = ACTIONS(2118), [aux_sym_preproc_include_token1] = ACTIONS(2118), [aux_sym_preproc_def_token1] = ACTIONS(2118), [aux_sym_preproc_if_token1] = ACTIONS(2118), [aux_sym_preproc_if_token2] = ACTIONS(2118), [aux_sym_preproc_ifdef_token1] = ACTIONS(2118), [aux_sym_preproc_ifdef_token2] = ACTIONS(2118), [sym_preproc_directive] = ACTIONS(2118), [anon_sym_LPAREN2] = ACTIONS(2120), [anon_sym_BANG] = ACTIONS(2120), [anon_sym_TILDE] = ACTIONS(2120), [anon_sym_DASH] = ACTIONS(2118), [anon_sym_PLUS] = ACTIONS(2118), [anon_sym_STAR] = ACTIONS(2120), [anon_sym_AMP_AMP] = ACTIONS(2120), [anon_sym_AMP] = ACTIONS(2118), [anon_sym_SEMI] = ACTIONS(2120), [anon_sym_typedef] = ACTIONS(2118), [anon_sym_extern] = ACTIONS(2118), [anon_sym___attribute__] = ACTIONS(2118), [anon_sym_COLON_COLON] = ACTIONS(2120), [anon_sym_LBRACK_LBRACK] = ACTIONS(2120), [anon_sym___declspec] = ACTIONS(2118), [anon_sym___based] = ACTIONS(2118), [anon_sym___cdecl] = ACTIONS(2118), [anon_sym___clrcall] = ACTIONS(2118), [anon_sym___stdcall] = ACTIONS(2118), [anon_sym___fastcall] = ACTIONS(2118), [anon_sym___thiscall] = ACTIONS(2118), [anon_sym___vectorcall] = ACTIONS(2118), [anon_sym_LBRACE] = ACTIONS(2120), [anon_sym_LBRACK] = ACTIONS(2118), [anon_sym_static] = ACTIONS(2118), [anon_sym_register] = ACTIONS(2118), [anon_sym_inline] = ACTIONS(2118), [anon_sym_thread_local] = ACTIONS(2118), [anon_sym_const] = ACTIONS(2118), [anon_sym_volatile] = ACTIONS(2118), [anon_sym_restrict] = ACTIONS(2118), [anon_sym__Atomic] = ACTIONS(2118), [anon_sym_mutable] = ACTIONS(2118), [anon_sym_constexpr] = ACTIONS(2118), [anon_sym_signed] = ACTIONS(2118), [anon_sym_unsigned] = ACTIONS(2118), [anon_sym_long] = ACTIONS(2118), [anon_sym_short] = ACTIONS(2118), [sym_primitive_type] = ACTIONS(2118), [anon_sym_enum] = ACTIONS(2118), [anon_sym_class] = ACTIONS(2118), [anon_sym_struct] = ACTIONS(2118), [anon_sym_union] = ACTIONS(2118), [anon_sym_if] = ACTIONS(2118), [anon_sym_switch] = ACTIONS(2118), [anon_sym_case] = ACTIONS(2118), [anon_sym_default] = ACTIONS(2118), [anon_sym_while] = ACTIONS(2118), [anon_sym_do] = ACTIONS(2118), [anon_sym_for] = ACTIONS(2118), [anon_sym_return] = ACTIONS(2118), [anon_sym_break] = ACTIONS(2118), [anon_sym_continue] = ACTIONS(2118), [anon_sym_goto] = ACTIONS(2118), [anon_sym_DASH_DASH] = ACTIONS(2120), [anon_sym_PLUS_PLUS] = ACTIONS(2120), [anon_sym_sizeof] = ACTIONS(2118), [sym_number_literal] = ACTIONS(2120), [anon_sym_L_SQUOTE] = ACTIONS(2120), [anon_sym_u_SQUOTE] = ACTIONS(2120), [anon_sym_U_SQUOTE] = ACTIONS(2120), [anon_sym_u8_SQUOTE] = ACTIONS(2120), [anon_sym_SQUOTE] = ACTIONS(2120), [anon_sym_L_DQUOTE] = ACTIONS(2120), [anon_sym_u_DQUOTE] = ACTIONS(2120), [anon_sym_U_DQUOTE] = ACTIONS(2120), [anon_sym_u8_DQUOTE] = ACTIONS(2120), [anon_sym_DQUOTE] = ACTIONS(2120), [sym_true] = ACTIONS(2118), [sym_false] = ACTIONS(2118), [sym_null] = ACTIONS(2118), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2118), [anon_sym_virtual] = ACTIONS(2118), [anon_sym_explicit] = ACTIONS(2118), [sym_auto] = ACTIONS(2118), [anon_sym_typename] = ACTIONS(2118), [anon_sym_template] = ACTIONS(2118), [anon_sym_operator] = ACTIONS(2118), [anon_sym_delete] = ACTIONS(2118), [anon_sym_throw] = ACTIONS(2118), [anon_sym_namespace] = ACTIONS(2118), [anon_sym_using] = ACTIONS(2118), [anon_sym_static_assert] = ACTIONS(2118), [anon_sym_co_return] = ACTIONS(2118), [anon_sym_co_yield] = ACTIONS(2118), [anon_sym_try] = ACTIONS(2118), [anon_sym_co_await] = ACTIONS(2118), [anon_sym_new] = ACTIONS(2118), [sym_this] = ACTIONS(2118), [sym_nullptr] = ACTIONS(2118), [sym_raw_string_literal] = ACTIONS(2120), }, [716] = { [sym_identifier] = ACTIONS(2034), [aux_sym_preproc_include_token1] = ACTIONS(2034), [aux_sym_preproc_def_token1] = ACTIONS(2034), [aux_sym_preproc_if_token1] = ACTIONS(2034), [aux_sym_preproc_if_token2] = ACTIONS(2034), [aux_sym_preproc_ifdef_token1] = ACTIONS(2034), [aux_sym_preproc_ifdef_token2] = ACTIONS(2034), [sym_preproc_directive] = ACTIONS(2034), [anon_sym_LPAREN2] = ACTIONS(2036), [anon_sym_BANG] = ACTIONS(2036), [anon_sym_TILDE] = ACTIONS(2036), [anon_sym_DASH] = ACTIONS(2034), [anon_sym_PLUS] = ACTIONS(2034), [anon_sym_STAR] = ACTIONS(2036), [anon_sym_AMP_AMP] = ACTIONS(2036), [anon_sym_AMP] = ACTIONS(2034), [anon_sym_SEMI] = ACTIONS(2036), [anon_sym_typedef] = ACTIONS(2034), [anon_sym_extern] = ACTIONS(2034), [anon_sym___attribute__] = ACTIONS(2034), [anon_sym_COLON_COLON] = ACTIONS(2036), [anon_sym_LBRACK_LBRACK] = ACTIONS(2036), [anon_sym___declspec] = ACTIONS(2034), [anon_sym___based] = ACTIONS(2034), [anon_sym___cdecl] = ACTIONS(2034), [anon_sym___clrcall] = ACTIONS(2034), [anon_sym___stdcall] = ACTIONS(2034), [anon_sym___fastcall] = ACTIONS(2034), [anon_sym___thiscall] = ACTIONS(2034), [anon_sym___vectorcall] = ACTIONS(2034), [anon_sym_LBRACE] = ACTIONS(2036), [anon_sym_LBRACK] = ACTIONS(2034), [anon_sym_static] = ACTIONS(2034), [anon_sym_register] = ACTIONS(2034), [anon_sym_inline] = ACTIONS(2034), [anon_sym_thread_local] = ACTIONS(2034), [anon_sym_const] = ACTIONS(2034), [anon_sym_volatile] = ACTIONS(2034), [anon_sym_restrict] = ACTIONS(2034), [anon_sym__Atomic] = ACTIONS(2034), [anon_sym_mutable] = ACTIONS(2034), [anon_sym_constexpr] = ACTIONS(2034), [anon_sym_signed] = ACTIONS(2034), [anon_sym_unsigned] = ACTIONS(2034), [anon_sym_long] = ACTIONS(2034), [anon_sym_short] = ACTIONS(2034), [sym_primitive_type] = ACTIONS(2034), [anon_sym_enum] = ACTIONS(2034), [anon_sym_class] = ACTIONS(2034), [anon_sym_struct] = ACTIONS(2034), [anon_sym_union] = ACTIONS(2034), [anon_sym_if] = ACTIONS(2034), [anon_sym_switch] = ACTIONS(2034), [anon_sym_case] = ACTIONS(2034), [anon_sym_default] = ACTIONS(2034), [anon_sym_while] = ACTIONS(2034), [anon_sym_do] = ACTIONS(2034), [anon_sym_for] = ACTIONS(2034), [anon_sym_return] = ACTIONS(2034), [anon_sym_break] = ACTIONS(2034), [anon_sym_continue] = ACTIONS(2034), [anon_sym_goto] = ACTIONS(2034), [anon_sym_DASH_DASH] = ACTIONS(2036), [anon_sym_PLUS_PLUS] = ACTIONS(2036), [anon_sym_sizeof] = ACTIONS(2034), [sym_number_literal] = ACTIONS(2036), [anon_sym_L_SQUOTE] = ACTIONS(2036), [anon_sym_u_SQUOTE] = ACTIONS(2036), [anon_sym_U_SQUOTE] = ACTIONS(2036), [anon_sym_u8_SQUOTE] = ACTIONS(2036), [anon_sym_SQUOTE] = ACTIONS(2036), [anon_sym_L_DQUOTE] = ACTIONS(2036), [anon_sym_u_DQUOTE] = ACTIONS(2036), [anon_sym_U_DQUOTE] = ACTIONS(2036), [anon_sym_u8_DQUOTE] = ACTIONS(2036), [anon_sym_DQUOTE] = ACTIONS(2036), [sym_true] = ACTIONS(2034), [sym_false] = ACTIONS(2034), [sym_null] = ACTIONS(2034), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2034), [anon_sym_virtual] = ACTIONS(2034), [anon_sym_explicit] = ACTIONS(2034), [sym_auto] = ACTIONS(2034), [anon_sym_typename] = ACTIONS(2034), [anon_sym_template] = ACTIONS(2034), [anon_sym_operator] = ACTIONS(2034), [anon_sym_delete] = ACTIONS(2034), [anon_sym_throw] = ACTIONS(2034), [anon_sym_namespace] = ACTIONS(2034), [anon_sym_using] = ACTIONS(2034), [anon_sym_static_assert] = ACTIONS(2034), [anon_sym_co_return] = ACTIONS(2034), [anon_sym_co_yield] = ACTIONS(2034), [anon_sym_try] = ACTIONS(2034), [anon_sym_co_await] = ACTIONS(2034), [anon_sym_new] = ACTIONS(2034), [sym_this] = ACTIONS(2034), [sym_nullptr] = ACTIONS(2034), [sym_raw_string_literal] = ACTIONS(2036), }, [717] = { [sym_identifier] = ACTIONS(2186), [aux_sym_preproc_include_token1] = ACTIONS(2186), [aux_sym_preproc_def_token1] = ACTIONS(2186), [aux_sym_preproc_if_token1] = ACTIONS(2186), [aux_sym_preproc_if_token2] = ACTIONS(2186), [aux_sym_preproc_ifdef_token1] = ACTIONS(2186), [aux_sym_preproc_ifdef_token2] = ACTIONS(2186), [sym_preproc_directive] = ACTIONS(2186), [anon_sym_LPAREN2] = ACTIONS(2188), [anon_sym_BANG] = ACTIONS(2188), [anon_sym_TILDE] = ACTIONS(2188), [anon_sym_DASH] = ACTIONS(2186), [anon_sym_PLUS] = ACTIONS(2186), [anon_sym_STAR] = ACTIONS(2188), [anon_sym_AMP_AMP] = ACTIONS(2188), [anon_sym_AMP] = ACTIONS(2186), [anon_sym_SEMI] = ACTIONS(2188), [anon_sym_typedef] = ACTIONS(2186), [anon_sym_extern] = ACTIONS(2186), [anon_sym___attribute__] = ACTIONS(2186), [anon_sym_COLON_COLON] = ACTIONS(2188), [anon_sym_LBRACK_LBRACK] = ACTIONS(2188), [anon_sym___declspec] = ACTIONS(2186), [anon_sym___based] = ACTIONS(2186), [anon_sym___cdecl] = ACTIONS(2186), [anon_sym___clrcall] = ACTIONS(2186), [anon_sym___stdcall] = ACTIONS(2186), [anon_sym___fastcall] = ACTIONS(2186), [anon_sym___thiscall] = ACTIONS(2186), [anon_sym___vectorcall] = ACTIONS(2186), [anon_sym_LBRACE] = ACTIONS(2188), [anon_sym_LBRACK] = ACTIONS(2186), [anon_sym_static] = ACTIONS(2186), [anon_sym_register] = ACTIONS(2186), [anon_sym_inline] = ACTIONS(2186), [anon_sym_thread_local] = ACTIONS(2186), [anon_sym_const] = ACTIONS(2186), [anon_sym_volatile] = ACTIONS(2186), [anon_sym_restrict] = ACTIONS(2186), [anon_sym__Atomic] = ACTIONS(2186), [anon_sym_mutable] = ACTIONS(2186), [anon_sym_constexpr] = ACTIONS(2186), [anon_sym_signed] = ACTIONS(2186), [anon_sym_unsigned] = ACTIONS(2186), [anon_sym_long] = ACTIONS(2186), [anon_sym_short] = ACTIONS(2186), [sym_primitive_type] = ACTIONS(2186), [anon_sym_enum] = ACTIONS(2186), [anon_sym_class] = ACTIONS(2186), [anon_sym_struct] = ACTIONS(2186), [anon_sym_union] = ACTIONS(2186), [anon_sym_if] = ACTIONS(2186), [anon_sym_switch] = ACTIONS(2186), [anon_sym_case] = ACTIONS(2186), [anon_sym_default] = ACTIONS(2186), [anon_sym_while] = ACTIONS(2186), [anon_sym_do] = ACTIONS(2186), [anon_sym_for] = ACTIONS(2186), [anon_sym_return] = ACTIONS(2186), [anon_sym_break] = ACTIONS(2186), [anon_sym_continue] = ACTIONS(2186), [anon_sym_goto] = ACTIONS(2186), [anon_sym_DASH_DASH] = ACTIONS(2188), [anon_sym_PLUS_PLUS] = ACTIONS(2188), [anon_sym_sizeof] = ACTIONS(2186), [sym_number_literal] = ACTIONS(2188), [anon_sym_L_SQUOTE] = ACTIONS(2188), [anon_sym_u_SQUOTE] = ACTIONS(2188), [anon_sym_U_SQUOTE] = ACTIONS(2188), [anon_sym_u8_SQUOTE] = ACTIONS(2188), [anon_sym_SQUOTE] = ACTIONS(2188), [anon_sym_L_DQUOTE] = ACTIONS(2188), [anon_sym_u_DQUOTE] = ACTIONS(2188), [anon_sym_U_DQUOTE] = ACTIONS(2188), [anon_sym_u8_DQUOTE] = ACTIONS(2188), [anon_sym_DQUOTE] = ACTIONS(2188), [sym_true] = ACTIONS(2186), [sym_false] = ACTIONS(2186), [sym_null] = ACTIONS(2186), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2186), [anon_sym_virtual] = ACTIONS(2186), [anon_sym_explicit] = ACTIONS(2186), [sym_auto] = ACTIONS(2186), [anon_sym_typename] = ACTIONS(2186), [anon_sym_template] = ACTIONS(2186), [anon_sym_operator] = ACTIONS(2186), [anon_sym_delete] = ACTIONS(2186), [anon_sym_throw] = ACTIONS(2186), [anon_sym_namespace] = ACTIONS(2186), [anon_sym_using] = ACTIONS(2186), [anon_sym_static_assert] = ACTIONS(2186), [anon_sym_co_return] = ACTIONS(2186), [anon_sym_co_yield] = ACTIONS(2186), [anon_sym_try] = ACTIONS(2186), [anon_sym_co_await] = ACTIONS(2186), [anon_sym_new] = ACTIONS(2186), [sym_this] = ACTIONS(2186), [sym_nullptr] = ACTIONS(2186), [sym_raw_string_literal] = ACTIONS(2188), }, [718] = { [ts_builtin_sym_end] = ACTIONS(2140), [sym_identifier] = ACTIONS(2138), [aux_sym_preproc_include_token1] = ACTIONS(2138), [aux_sym_preproc_def_token1] = ACTIONS(2138), [aux_sym_preproc_if_token1] = ACTIONS(2138), [aux_sym_preproc_ifdef_token1] = ACTIONS(2138), [aux_sym_preproc_ifdef_token2] = ACTIONS(2138), [sym_preproc_directive] = ACTIONS(2138), [anon_sym_LPAREN2] = ACTIONS(2140), [anon_sym_BANG] = ACTIONS(2140), [anon_sym_TILDE] = ACTIONS(2140), [anon_sym_DASH] = ACTIONS(2138), [anon_sym_PLUS] = ACTIONS(2138), [anon_sym_STAR] = ACTIONS(2140), [anon_sym_AMP_AMP] = ACTIONS(2140), [anon_sym_AMP] = ACTIONS(2138), [anon_sym_SEMI] = ACTIONS(2140), [anon_sym_typedef] = ACTIONS(2138), [anon_sym_extern] = ACTIONS(2138), [anon_sym___attribute__] = ACTIONS(2138), [anon_sym_COLON_COLON] = ACTIONS(2140), [anon_sym_LBRACK_LBRACK] = ACTIONS(2140), [anon_sym___declspec] = ACTIONS(2138), [anon_sym___based] = ACTIONS(2138), [anon_sym___cdecl] = ACTIONS(2138), [anon_sym___clrcall] = ACTIONS(2138), [anon_sym___stdcall] = ACTIONS(2138), [anon_sym___fastcall] = ACTIONS(2138), [anon_sym___thiscall] = ACTIONS(2138), [anon_sym___vectorcall] = ACTIONS(2138), [anon_sym_LBRACE] = ACTIONS(2140), [anon_sym_LBRACK] = ACTIONS(2138), [anon_sym_static] = ACTIONS(2138), [anon_sym_register] = ACTIONS(2138), [anon_sym_inline] = ACTIONS(2138), [anon_sym_thread_local] = ACTIONS(2138), [anon_sym_const] = ACTIONS(2138), [anon_sym_volatile] = ACTIONS(2138), [anon_sym_restrict] = ACTIONS(2138), [anon_sym__Atomic] = ACTIONS(2138), [anon_sym_mutable] = ACTIONS(2138), [anon_sym_constexpr] = ACTIONS(2138), [anon_sym_signed] = ACTIONS(2138), [anon_sym_unsigned] = ACTIONS(2138), [anon_sym_long] = ACTIONS(2138), [anon_sym_short] = ACTIONS(2138), [sym_primitive_type] = ACTIONS(2138), [anon_sym_enum] = ACTIONS(2138), [anon_sym_class] = ACTIONS(2138), [anon_sym_struct] = ACTIONS(2138), [anon_sym_union] = ACTIONS(2138), [anon_sym_if] = ACTIONS(2138), [anon_sym_switch] = ACTIONS(2138), [anon_sym_case] = ACTIONS(2138), [anon_sym_default] = ACTIONS(2138), [anon_sym_while] = ACTIONS(2138), [anon_sym_do] = ACTIONS(2138), [anon_sym_for] = ACTIONS(2138), [anon_sym_return] = ACTIONS(2138), [anon_sym_break] = ACTIONS(2138), [anon_sym_continue] = ACTIONS(2138), [anon_sym_goto] = ACTIONS(2138), [anon_sym_DASH_DASH] = ACTIONS(2140), [anon_sym_PLUS_PLUS] = ACTIONS(2140), [anon_sym_sizeof] = ACTIONS(2138), [sym_number_literal] = ACTIONS(2140), [anon_sym_L_SQUOTE] = ACTIONS(2140), [anon_sym_u_SQUOTE] = ACTIONS(2140), [anon_sym_U_SQUOTE] = ACTIONS(2140), [anon_sym_u8_SQUOTE] = ACTIONS(2140), [anon_sym_SQUOTE] = ACTIONS(2140), [anon_sym_L_DQUOTE] = ACTIONS(2140), [anon_sym_u_DQUOTE] = ACTIONS(2140), [anon_sym_U_DQUOTE] = ACTIONS(2140), [anon_sym_u8_DQUOTE] = ACTIONS(2140), [anon_sym_DQUOTE] = ACTIONS(2140), [sym_true] = ACTIONS(2138), [sym_false] = ACTIONS(2138), [sym_null] = ACTIONS(2138), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2138), [anon_sym_virtual] = ACTIONS(2138), [anon_sym_explicit] = ACTIONS(2138), [sym_auto] = ACTIONS(2138), [anon_sym_typename] = ACTIONS(2138), [anon_sym_template] = ACTIONS(2138), [anon_sym_operator] = ACTIONS(2138), [anon_sym_delete] = ACTIONS(2138), [anon_sym_throw] = ACTIONS(2138), [anon_sym_namespace] = ACTIONS(2138), [anon_sym_using] = ACTIONS(2138), [anon_sym_static_assert] = ACTIONS(2138), [anon_sym_co_return] = ACTIONS(2138), [anon_sym_co_yield] = ACTIONS(2138), [anon_sym_try] = ACTIONS(2138), [anon_sym_co_await] = ACTIONS(2138), [anon_sym_new] = ACTIONS(2138), [sym_this] = ACTIONS(2138), [sym_nullptr] = ACTIONS(2138), [sym_raw_string_literal] = ACTIONS(2140), }, [719] = { [sym_identifier] = ACTIONS(2190), [aux_sym_preproc_include_token1] = ACTIONS(2190), [aux_sym_preproc_def_token1] = ACTIONS(2190), [aux_sym_preproc_if_token1] = ACTIONS(2190), [aux_sym_preproc_if_token2] = ACTIONS(2190), [aux_sym_preproc_ifdef_token1] = ACTIONS(2190), [aux_sym_preproc_ifdef_token2] = ACTIONS(2190), [sym_preproc_directive] = ACTIONS(2190), [anon_sym_LPAREN2] = ACTIONS(2192), [anon_sym_BANG] = ACTIONS(2192), [anon_sym_TILDE] = ACTIONS(2192), [anon_sym_DASH] = ACTIONS(2190), [anon_sym_PLUS] = ACTIONS(2190), [anon_sym_STAR] = ACTIONS(2192), [anon_sym_AMP_AMP] = ACTIONS(2192), [anon_sym_AMP] = ACTIONS(2190), [anon_sym_SEMI] = ACTIONS(2192), [anon_sym_typedef] = ACTIONS(2190), [anon_sym_extern] = ACTIONS(2190), [anon_sym___attribute__] = ACTIONS(2190), [anon_sym_COLON_COLON] = ACTIONS(2192), [anon_sym_LBRACK_LBRACK] = ACTIONS(2192), [anon_sym___declspec] = ACTIONS(2190), [anon_sym___based] = ACTIONS(2190), [anon_sym___cdecl] = ACTIONS(2190), [anon_sym___clrcall] = ACTIONS(2190), [anon_sym___stdcall] = ACTIONS(2190), [anon_sym___fastcall] = ACTIONS(2190), [anon_sym___thiscall] = ACTIONS(2190), [anon_sym___vectorcall] = ACTIONS(2190), [anon_sym_LBRACE] = ACTIONS(2192), [anon_sym_LBRACK] = ACTIONS(2190), [anon_sym_static] = ACTIONS(2190), [anon_sym_register] = ACTIONS(2190), [anon_sym_inline] = ACTIONS(2190), [anon_sym_thread_local] = ACTIONS(2190), [anon_sym_const] = ACTIONS(2190), [anon_sym_volatile] = ACTIONS(2190), [anon_sym_restrict] = ACTIONS(2190), [anon_sym__Atomic] = ACTIONS(2190), [anon_sym_mutable] = ACTIONS(2190), [anon_sym_constexpr] = ACTIONS(2190), [anon_sym_signed] = ACTIONS(2190), [anon_sym_unsigned] = ACTIONS(2190), [anon_sym_long] = ACTIONS(2190), [anon_sym_short] = ACTIONS(2190), [sym_primitive_type] = ACTIONS(2190), [anon_sym_enum] = ACTIONS(2190), [anon_sym_class] = ACTIONS(2190), [anon_sym_struct] = ACTIONS(2190), [anon_sym_union] = ACTIONS(2190), [anon_sym_if] = ACTIONS(2190), [anon_sym_switch] = ACTIONS(2190), [anon_sym_case] = ACTIONS(2190), [anon_sym_default] = ACTIONS(2190), [anon_sym_while] = ACTIONS(2190), [anon_sym_do] = ACTIONS(2190), [anon_sym_for] = ACTIONS(2190), [anon_sym_return] = ACTIONS(2190), [anon_sym_break] = ACTIONS(2190), [anon_sym_continue] = ACTIONS(2190), [anon_sym_goto] = ACTIONS(2190), [anon_sym_DASH_DASH] = ACTIONS(2192), [anon_sym_PLUS_PLUS] = ACTIONS(2192), [anon_sym_sizeof] = ACTIONS(2190), [sym_number_literal] = ACTIONS(2192), [anon_sym_L_SQUOTE] = ACTIONS(2192), [anon_sym_u_SQUOTE] = ACTIONS(2192), [anon_sym_U_SQUOTE] = ACTIONS(2192), [anon_sym_u8_SQUOTE] = ACTIONS(2192), [anon_sym_SQUOTE] = ACTIONS(2192), [anon_sym_L_DQUOTE] = ACTIONS(2192), [anon_sym_u_DQUOTE] = ACTIONS(2192), [anon_sym_U_DQUOTE] = ACTIONS(2192), [anon_sym_u8_DQUOTE] = ACTIONS(2192), [anon_sym_DQUOTE] = ACTIONS(2192), [sym_true] = ACTIONS(2190), [sym_false] = ACTIONS(2190), [sym_null] = ACTIONS(2190), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2190), [anon_sym_virtual] = ACTIONS(2190), [anon_sym_explicit] = ACTIONS(2190), [sym_auto] = ACTIONS(2190), [anon_sym_typename] = ACTIONS(2190), [anon_sym_template] = ACTIONS(2190), [anon_sym_operator] = ACTIONS(2190), [anon_sym_delete] = ACTIONS(2190), [anon_sym_throw] = ACTIONS(2190), [anon_sym_namespace] = ACTIONS(2190), [anon_sym_using] = ACTIONS(2190), [anon_sym_static_assert] = ACTIONS(2190), [anon_sym_co_return] = ACTIONS(2190), [anon_sym_co_yield] = ACTIONS(2190), [anon_sym_try] = ACTIONS(2190), [anon_sym_co_await] = ACTIONS(2190), [anon_sym_new] = ACTIONS(2190), [sym_this] = ACTIONS(2190), [sym_nullptr] = ACTIONS(2190), [sym_raw_string_literal] = ACTIONS(2192), }, [720] = { [ts_builtin_sym_end] = ACTIONS(2144), [sym_identifier] = ACTIONS(2142), [aux_sym_preproc_include_token1] = ACTIONS(2142), [aux_sym_preproc_def_token1] = ACTIONS(2142), [aux_sym_preproc_if_token1] = ACTIONS(2142), [aux_sym_preproc_ifdef_token1] = ACTIONS(2142), [aux_sym_preproc_ifdef_token2] = ACTIONS(2142), [sym_preproc_directive] = ACTIONS(2142), [anon_sym_LPAREN2] = ACTIONS(2144), [anon_sym_BANG] = ACTIONS(2144), [anon_sym_TILDE] = ACTIONS(2144), [anon_sym_DASH] = ACTIONS(2142), [anon_sym_PLUS] = ACTIONS(2142), [anon_sym_STAR] = ACTIONS(2144), [anon_sym_AMP_AMP] = ACTIONS(2144), [anon_sym_AMP] = ACTIONS(2142), [anon_sym_SEMI] = ACTIONS(2144), [anon_sym_typedef] = ACTIONS(2142), [anon_sym_extern] = ACTIONS(2142), [anon_sym___attribute__] = ACTIONS(2142), [anon_sym_COLON_COLON] = ACTIONS(2144), [anon_sym_LBRACK_LBRACK] = ACTIONS(2144), [anon_sym___declspec] = ACTIONS(2142), [anon_sym___based] = ACTIONS(2142), [anon_sym___cdecl] = ACTIONS(2142), [anon_sym___clrcall] = ACTIONS(2142), [anon_sym___stdcall] = ACTIONS(2142), [anon_sym___fastcall] = ACTIONS(2142), [anon_sym___thiscall] = ACTIONS(2142), [anon_sym___vectorcall] = ACTIONS(2142), [anon_sym_LBRACE] = ACTIONS(2144), [anon_sym_LBRACK] = ACTIONS(2142), [anon_sym_static] = ACTIONS(2142), [anon_sym_register] = ACTIONS(2142), [anon_sym_inline] = ACTIONS(2142), [anon_sym_thread_local] = ACTIONS(2142), [anon_sym_const] = ACTIONS(2142), [anon_sym_volatile] = ACTIONS(2142), [anon_sym_restrict] = ACTIONS(2142), [anon_sym__Atomic] = ACTIONS(2142), [anon_sym_mutable] = ACTIONS(2142), [anon_sym_constexpr] = ACTIONS(2142), [anon_sym_signed] = ACTIONS(2142), [anon_sym_unsigned] = ACTIONS(2142), [anon_sym_long] = ACTIONS(2142), [anon_sym_short] = ACTIONS(2142), [sym_primitive_type] = ACTIONS(2142), [anon_sym_enum] = ACTIONS(2142), [anon_sym_class] = ACTIONS(2142), [anon_sym_struct] = ACTIONS(2142), [anon_sym_union] = ACTIONS(2142), [anon_sym_if] = ACTIONS(2142), [anon_sym_switch] = ACTIONS(2142), [anon_sym_case] = ACTIONS(2142), [anon_sym_default] = ACTIONS(2142), [anon_sym_while] = ACTIONS(2142), [anon_sym_do] = ACTIONS(2142), [anon_sym_for] = ACTIONS(2142), [anon_sym_return] = ACTIONS(2142), [anon_sym_break] = ACTIONS(2142), [anon_sym_continue] = ACTIONS(2142), [anon_sym_goto] = ACTIONS(2142), [anon_sym_DASH_DASH] = ACTIONS(2144), [anon_sym_PLUS_PLUS] = ACTIONS(2144), [anon_sym_sizeof] = ACTIONS(2142), [sym_number_literal] = ACTIONS(2144), [anon_sym_L_SQUOTE] = ACTIONS(2144), [anon_sym_u_SQUOTE] = ACTIONS(2144), [anon_sym_U_SQUOTE] = ACTIONS(2144), [anon_sym_u8_SQUOTE] = ACTIONS(2144), [anon_sym_SQUOTE] = ACTIONS(2144), [anon_sym_L_DQUOTE] = ACTIONS(2144), [anon_sym_u_DQUOTE] = ACTIONS(2144), [anon_sym_U_DQUOTE] = ACTIONS(2144), [anon_sym_u8_DQUOTE] = ACTIONS(2144), [anon_sym_DQUOTE] = ACTIONS(2144), [sym_true] = ACTIONS(2142), [sym_false] = ACTIONS(2142), [sym_null] = ACTIONS(2142), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2142), [anon_sym_virtual] = ACTIONS(2142), [anon_sym_explicit] = ACTIONS(2142), [sym_auto] = ACTIONS(2142), [anon_sym_typename] = ACTIONS(2142), [anon_sym_template] = ACTIONS(2142), [anon_sym_operator] = ACTIONS(2142), [anon_sym_delete] = ACTIONS(2142), [anon_sym_throw] = ACTIONS(2142), [anon_sym_namespace] = ACTIONS(2142), [anon_sym_using] = ACTIONS(2142), [anon_sym_static_assert] = ACTIONS(2142), [anon_sym_co_return] = ACTIONS(2142), [anon_sym_co_yield] = ACTIONS(2142), [anon_sym_try] = ACTIONS(2142), [anon_sym_co_await] = ACTIONS(2142), [anon_sym_new] = ACTIONS(2142), [sym_this] = ACTIONS(2142), [sym_nullptr] = ACTIONS(2142), [sym_raw_string_literal] = ACTIONS(2144), }, [721] = { [sym_identifier] = ACTIONS(2066), [aux_sym_preproc_include_token1] = ACTIONS(2066), [aux_sym_preproc_def_token1] = ACTIONS(2066), [aux_sym_preproc_if_token1] = ACTIONS(2066), [aux_sym_preproc_if_token2] = ACTIONS(2066), [aux_sym_preproc_ifdef_token1] = ACTIONS(2066), [aux_sym_preproc_ifdef_token2] = ACTIONS(2066), [sym_preproc_directive] = ACTIONS(2066), [anon_sym_LPAREN2] = ACTIONS(2068), [anon_sym_BANG] = ACTIONS(2068), [anon_sym_TILDE] = ACTIONS(2068), [anon_sym_DASH] = ACTIONS(2066), [anon_sym_PLUS] = ACTIONS(2066), [anon_sym_STAR] = ACTIONS(2068), [anon_sym_AMP_AMP] = ACTIONS(2068), [anon_sym_AMP] = ACTIONS(2066), [anon_sym_SEMI] = ACTIONS(2068), [anon_sym_typedef] = ACTIONS(2066), [anon_sym_extern] = ACTIONS(2066), [anon_sym___attribute__] = ACTIONS(2066), [anon_sym_COLON_COLON] = ACTIONS(2068), [anon_sym_LBRACK_LBRACK] = ACTIONS(2068), [anon_sym___declspec] = ACTIONS(2066), [anon_sym___based] = ACTIONS(2066), [anon_sym___cdecl] = ACTIONS(2066), [anon_sym___clrcall] = ACTIONS(2066), [anon_sym___stdcall] = ACTIONS(2066), [anon_sym___fastcall] = ACTIONS(2066), [anon_sym___thiscall] = ACTIONS(2066), [anon_sym___vectorcall] = ACTIONS(2066), [anon_sym_LBRACE] = ACTIONS(2068), [anon_sym_LBRACK] = ACTIONS(2066), [anon_sym_static] = ACTIONS(2066), [anon_sym_register] = ACTIONS(2066), [anon_sym_inline] = ACTIONS(2066), [anon_sym_thread_local] = ACTIONS(2066), [anon_sym_const] = ACTIONS(2066), [anon_sym_volatile] = ACTIONS(2066), [anon_sym_restrict] = ACTIONS(2066), [anon_sym__Atomic] = ACTIONS(2066), [anon_sym_mutable] = ACTIONS(2066), [anon_sym_constexpr] = ACTIONS(2066), [anon_sym_signed] = ACTIONS(2066), [anon_sym_unsigned] = ACTIONS(2066), [anon_sym_long] = ACTIONS(2066), [anon_sym_short] = ACTIONS(2066), [sym_primitive_type] = ACTIONS(2066), [anon_sym_enum] = ACTIONS(2066), [anon_sym_class] = ACTIONS(2066), [anon_sym_struct] = ACTIONS(2066), [anon_sym_union] = ACTIONS(2066), [anon_sym_if] = ACTIONS(2066), [anon_sym_switch] = ACTIONS(2066), [anon_sym_case] = ACTIONS(2066), [anon_sym_default] = ACTIONS(2066), [anon_sym_while] = ACTIONS(2066), [anon_sym_do] = ACTIONS(2066), [anon_sym_for] = ACTIONS(2066), [anon_sym_return] = ACTIONS(2066), [anon_sym_break] = ACTIONS(2066), [anon_sym_continue] = ACTIONS(2066), [anon_sym_goto] = ACTIONS(2066), [anon_sym_DASH_DASH] = ACTIONS(2068), [anon_sym_PLUS_PLUS] = ACTIONS(2068), [anon_sym_sizeof] = ACTIONS(2066), [sym_number_literal] = ACTIONS(2068), [anon_sym_L_SQUOTE] = ACTIONS(2068), [anon_sym_u_SQUOTE] = ACTIONS(2068), [anon_sym_U_SQUOTE] = ACTIONS(2068), [anon_sym_u8_SQUOTE] = ACTIONS(2068), [anon_sym_SQUOTE] = ACTIONS(2068), [anon_sym_L_DQUOTE] = ACTIONS(2068), [anon_sym_u_DQUOTE] = ACTIONS(2068), [anon_sym_U_DQUOTE] = ACTIONS(2068), [anon_sym_u8_DQUOTE] = ACTIONS(2068), [anon_sym_DQUOTE] = ACTIONS(2068), [sym_true] = ACTIONS(2066), [sym_false] = ACTIONS(2066), [sym_null] = ACTIONS(2066), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2066), [anon_sym_virtual] = ACTIONS(2066), [anon_sym_explicit] = ACTIONS(2066), [sym_auto] = ACTIONS(2066), [anon_sym_typename] = ACTIONS(2066), [anon_sym_template] = ACTIONS(2066), [anon_sym_operator] = ACTIONS(2066), [anon_sym_delete] = ACTIONS(2066), [anon_sym_throw] = ACTIONS(2066), [anon_sym_namespace] = ACTIONS(2066), [anon_sym_using] = ACTIONS(2066), [anon_sym_static_assert] = ACTIONS(2066), [anon_sym_co_return] = ACTIONS(2066), [anon_sym_co_yield] = ACTIONS(2066), [anon_sym_try] = ACTIONS(2066), [anon_sym_co_await] = ACTIONS(2066), [anon_sym_new] = ACTIONS(2066), [sym_this] = ACTIONS(2066), [sym_nullptr] = ACTIONS(2066), [sym_raw_string_literal] = ACTIONS(2068), }, [722] = { [sym_identifier] = ACTIONS(2070), [aux_sym_preproc_include_token1] = ACTIONS(2070), [aux_sym_preproc_def_token1] = ACTIONS(2070), [aux_sym_preproc_if_token1] = ACTIONS(2070), [aux_sym_preproc_if_token2] = ACTIONS(2070), [aux_sym_preproc_ifdef_token1] = ACTIONS(2070), [aux_sym_preproc_ifdef_token2] = ACTIONS(2070), [sym_preproc_directive] = ACTIONS(2070), [anon_sym_LPAREN2] = ACTIONS(2072), [anon_sym_BANG] = ACTIONS(2072), [anon_sym_TILDE] = ACTIONS(2072), [anon_sym_DASH] = ACTIONS(2070), [anon_sym_PLUS] = ACTIONS(2070), [anon_sym_STAR] = ACTIONS(2072), [anon_sym_AMP_AMP] = ACTIONS(2072), [anon_sym_AMP] = ACTIONS(2070), [anon_sym_SEMI] = ACTIONS(2072), [anon_sym_typedef] = ACTIONS(2070), [anon_sym_extern] = ACTIONS(2070), [anon_sym___attribute__] = ACTIONS(2070), [anon_sym_COLON_COLON] = ACTIONS(2072), [anon_sym_LBRACK_LBRACK] = ACTIONS(2072), [anon_sym___declspec] = ACTIONS(2070), [anon_sym___based] = ACTIONS(2070), [anon_sym___cdecl] = ACTIONS(2070), [anon_sym___clrcall] = ACTIONS(2070), [anon_sym___stdcall] = ACTIONS(2070), [anon_sym___fastcall] = ACTIONS(2070), [anon_sym___thiscall] = ACTIONS(2070), [anon_sym___vectorcall] = ACTIONS(2070), [anon_sym_LBRACE] = ACTIONS(2072), [anon_sym_LBRACK] = ACTIONS(2070), [anon_sym_static] = ACTIONS(2070), [anon_sym_register] = ACTIONS(2070), [anon_sym_inline] = ACTIONS(2070), [anon_sym_thread_local] = ACTIONS(2070), [anon_sym_const] = ACTIONS(2070), [anon_sym_volatile] = ACTIONS(2070), [anon_sym_restrict] = ACTIONS(2070), [anon_sym__Atomic] = ACTIONS(2070), [anon_sym_mutable] = ACTIONS(2070), [anon_sym_constexpr] = ACTIONS(2070), [anon_sym_signed] = ACTIONS(2070), [anon_sym_unsigned] = ACTIONS(2070), [anon_sym_long] = ACTIONS(2070), [anon_sym_short] = ACTIONS(2070), [sym_primitive_type] = ACTIONS(2070), [anon_sym_enum] = ACTIONS(2070), [anon_sym_class] = ACTIONS(2070), [anon_sym_struct] = ACTIONS(2070), [anon_sym_union] = ACTIONS(2070), [anon_sym_if] = ACTIONS(2070), [anon_sym_switch] = ACTIONS(2070), [anon_sym_case] = ACTIONS(2070), [anon_sym_default] = ACTIONS(2070), [anon_sym_while] = ACTIONS(2070), [anon_sym_do] = ACTIONS(2070), [anon_sym_for] = ACTIONS(2070), [anon_sym_return] = ACTIONS(2070), [anon_sym_break] = ACTIONS(2070), [anon_sym_continue] = ACTIONS(2070), [anon_sym_goto] = ACTIONS(2070), [anon_sym_DASH_DASH] = ACTIONS(2072), [anon_sym_PLUS_PLUS] = ACTIONS(2072), [anon_sym_sizeof] = ACTIONS(2070), [sym_number_literal] = ACTIONS(2072), [anon_sym_L_SQUOTE] = ACTIONS(2072), [anon_sym_u_SQUOTE] = ACTIONS(2072), [anon_sym_U_SQUOTE] = ACTIONS(2072), [anon_sym_u8_SQUOTE] = ACTIONS(2072), [anon_sym_SQUOTE] = ACTIONS(2072), [anon_sym_L_DQUOTE] = ACTIONS(2072), [anon_sym_u_DQUOTE] = ACTIONS(2072), [anon_sym_U_DQUOTE] = ACTIONS(2072), [anon_sym_u8_DQUOTE] = ACTIONS(2072), [anon_sym_DQUOTE] = ACTIONS(2072), [sym_true] = ACTIONS(2070), [sym_false] = ACTIONS(2070), [sym_null] = ACTIONS(2070), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2070), [anon_sym_virtual] = ACTIONS(2070), [anon_sym_explicit] = ACTIONS(2070), [sym_auto] = ACTIONS(2070), [anon_sym_typename] = ACTIONS(2070), [anon_sym_template] = ACTIONS(2070), [anon_sym_operator] = ACTIONS(2070), [anon_sym_delete] = ACTIONS(2070), [anon_sym_throw] = ACTIONS(2070), [anon_sym_namespace] = ACTIONS(2070), [anon_sym_using] = ACTIONS(2070), [anon_sym_static_assert] = ACTIONS(2070), [anon_sym_co_return] = ACTIONS(2070), [anon_sym_co_yield] = ACTIONS(2070), [anon_sym_try] = ACTIONS(2070), [anon_sym_co_await] = ACTIONS(2070), [anon_sym_new] = ACTIONS(2070), [sym_this] = ACTIONS(2070), [sym_nullptr] = ACTIONS(2070), [sym_raw_string_literal] = ACTIONS(2072), }, [723] = { [sym_identifier] = ACTIONS(2074), [aux_sym_preproc_include_token1] = ACTIONS(2074), [aux_sym_preproc_def_token1] = ACTIONS(2074), [aux_sym_preproc_if_token1] = ACTIONS(2074), [aux_sym_preproc_if_token2] = ACTIONS(2074), [aux_sym_preproc_ifdef_token1] = ACTIONS(2074), [aux_sym_preproc_ifdef_token2] = ACTIONS(2074), [sym_preproc_directive] = ACTIONS(2074), [anon_sym_LPAREN2] = ACTIONS(2076), [anon_sym_BANG] = ACTIONS(2076), [anon_sym_TILDE] = ACTIONS(2076), [anon_sym_DASH] = ACTIONS(2074), [anon_sym_PLUS] = ACTIONS(2074), [anon_sym_STAR] = ACTIONS(2076), [anon_sym_AMP_AMP] = ACTIONS(2076), [anon_sym_AMP] = ACTIONS(2074), [anon_sym_SEMI] = ACTIONS(2076), [anon_sym_typedef] = ACTIONS(2074), [anon_sym_extern] = ACTIONS(2074), [anon_sym___attribute__] = ACTIONS(2074), [anon_sym_COLON_COLON] = ACTIONS(2076), [anon_sym_LBRACK_LBRACK] = ACTIONS(2076), [anon_sym___declspec] = ACTIONS(2074), [anon_sym___based] = ACTIONS(2074), [anon_sym___cdecl] = ACTIONS(2074), [anon_sym___clrcall] = ACTIONS(2074), [anon_sym___stdcall] = ACTIONS(2074), [anon_sym___fastcall] = ACTIONS(2074), [anon_sym___thiscall] = ACTIONS(2074), [anon_sym___vectorcall] = ACTIONS(2074), [anon_sym_LBRACE] = ACTIONS(2076), [anon_sym_LBRACK] = ACTIONS(2074), [anon_sym_static] = ACTIONS(2074), [anon_sym_register] = ACTIONS(2074), [anon_sym_inline] = ACTIONS(2074), [anon_sym_thread_local] = ACTIONS(2074), [anon_sym_const] = ACTIONS(2074), [anon_sym_volatile] = ACTIONS(2074), [anon_sym_restrict] = ACTIONS(2074), [anon_sym__Atomic] = ACTIONS(2074), [anon_sym_mutable] = ACTIONS(2074), [anon_sym_constexpr] = ACTIONS(2074), [anon_sym_signed] = ACTIONS(2074), [anon_sym_unsigned] = ACTIONS(2074), [anon_sym_long] = ACTIONS(2074), [anon_sym_short] = ACTIONS(2074), [sym_primitive_type] = ACTIONS(2074), [anon_sym_enum] = ACTIONS(2074), [anon_sym_class] = ACTIONS(2074), [anon_sym_struct] = ACTIONS(2074), [anon_sym_union] = ACTIONS(2074), [anon_sym_if] = ACTIONS(2074), [anon_sym_switch] = ACTIONS(2074), [anon_sym_case] = ACTIONS(2074), [anon_sym_default] = ACTIONS(2074), [anon_sym_while] = ACTIONS(2074), [anon_sym_do] = ACTIONS(2074), [anon_sym_for] = ACTIONS(2074), [anon_sym_return] = ACTIONS(2074), [anon_sym_break] = ACTIONS(2074), [anon_sym_continue] = ACTIONS(2074), [anon_sym_goto] = ACTIONS(2074), [anon_sym_DASH_DASH] = ACTIONS(2076), [anon_sym_PLUS_PLUS] = ACTIONS(2076), [anon_sym_sizeof] = ACTIONS(2074), [sym_number_literal] = ACTIONS(2076), [anon_sym_L_SQUOTE] = ACTIONS(2076), [anon_sym_u_SQUOTE] = ACTIONS(2076), [anon_sym_U_SQUOTE] = ACTIONS(2076), [anon_sym_u8_SQUOTE] = ACTIONS(2076), [anon_sym_SQUOTE] = ACTIONS(2076), [anon_sym_L_DQUOTE] = ACTIONS(2076), [anon_sym_u_DQUOTE] = ACTIONS(2076), [anon_sym_U_DQUOTE] = ACTIONS(2076), [anon_sym_u8_DQUOTE] = ACTIONS(2076), [anon_sym_DQUOTE] = ACTIONS(2076), [sym_true] = ACTIONS(2074), [sym_false] = ACTIONS(2074), [sym_null] = ACTIONS(2074), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2074), [anon_sym_virtual] = ACTIONS(2074), [anon_sym_explicit] = ACTIONS(2074), [sym_auto] = ACTIONS(2074), [anon_sym_typename] = ACTIONS(2074), [anon_sym_template] = ACTIONS(2074), [anon_sym_operator] = ACTIONS(2074), [anon_sym_delete] = ACTIONS(2074), [anon_sym_throw] = ACTIONS(2074), [anon_sym_namespace] = ACTIONS(2074), [anon_sym_using] = ACTIONS(2074), [anon_sym_static_assert] = ACTIONS(2074), [anon_sym_co_return] = ACTIONS(2074), [anon_sym_co_yield] = ACTIONS(2074), [anon_sym_try] = ACTIONS(2074), [anon_sym_co_await] = ACTIONS(2074), [anon_sym_new] = ACTIONS(2074), [sym_this] = ACTIONS(2074), [sym_nullptr] = ACTIONS(2074), [sym_raw_string_literal] = ACTIONS(2076), }, [724] = { [sym_identifier] = ACTIONS(2090), [aux_sym_preproc_include_token1] = ACTIONS(2090), [aux_sym_preproc_def_token1] = ACTIONS(2090), [aux_sym_preproc_if_token1] = ACTIONS(2090), [aux_sym_preproc_ifdef_token1] = ACTIONS(2090), [aux_sym_preproc_ifdef_token2] = ACTIONS(2090), [sym_preproc_directive] = ACTIONS(2090), [anon_sym_LPAREN2] = ACTIONS(2092), [anon_sym_BANG] = ACTIONS(2092), [anon_sym_TILDE] = ACTIONS(2092), [anon_sym_DASH] = ACTIONS(2090), [anon_sym_PLUS] = ACTIONS(2090), [anon_sym_STAR] = ACTIONS(2092), [anon_sym_AMP_AMP] = ACTIONS(2092), [anon_sym_AMP] = ACTIONS(2090), [anon_sym_SEMI] = ACTIONS(2092), [anon_sym_typedef] = ACTIONS(2090), [anon_sym_extern] = ACTIONS(2090), [anon_sym___attribute__] = ACTIONS(2090), [anon_sym_COLON_COLON] = ACTIONS(2092), [anon_sym_LBRACK_LBRACK] = ACTIONS(2092), [anon_sym___declspec] = ACTIONS(2090), [anon_sym___based] = ACTIONS(2090), [anon_sym___cdecl] = ACTIONS(2090), [anon_sym___clrcall] = ACTIONS(2090), [anon_sym___stdcall] = ACTIONS(2090), [anon_sym___fastcall] = ACTIONS(2090), [anon_sym___thiscall] = ACTIONS(2090), [anon_sym___vectorcall] = ACTIONS(2090), [anon_sym_LBRACE] = ACTIONS(2092), [anon_sym_RBRACE] = ACTIONS(2092), [anon_sym_LBRACK] = ACTIONS(2090), [anon_sym_static] = ACTIONS(2090), [anon_sym_register] = ACTIONS(2090), [anon_sym_inline] = ACTIONS(2090), [anon_sym_thread_local] = ACTIONS(2090), [anon_sym_const] = ACTIONS(2090), [anon_sym_volatile] = ACTIONS(2090), [anon_sym_restrict] = ACTIONS(2090), [anon_sym__Atomic] = ACTIONS(2090), [anon_sym_mutable] = ACTIONS(2090), [anon_sym_constexpr] = ACTIONS(2090), [anon_sym_signed] = ACTIONS(2090), [anon_sym_unsigned] = ACTIONS(2090), [anon_sym_long] = ACTIONS(2090), [anon_sym_short] = ACTIONS(2090), [sym_primitive_type] = ACTIONS(2090), [anon_sym_enum] = ACTIONS(2090), [anon_sym_class] = ACTIONS(2090), [anon_sym_struct] = ACTIONS(2090), [anon_sym_union] = ACTIONS(2090), [anon_sym_if] = ACTIONS(2090), [anon_sym_switch] = ACTIONS(2090), [anon_sym_case] = ACTIONS(2090), [anon_sym_default] = ACTIONS(2090), [anon_sym_while] = ACTIONS(2090), [anon_sym_do] = ACTIONS(2090), [anon_sym_for] = ACTIONS(2090), [anon_sym_return] = ACTIONS(2090), [anon_sym_break] = ACTIONS(2090), [anon_sym_continue] = ACTIONS(2090), [anon_sym_goto] = ACTIONS(2090), [anon_sym_DASH_DASH] = ACTIONS(2092), [anon_sym_PLUS_PLUS] = ACTIONS(2092), [anon_sym_sizeof] = ACTIONS(2090), [sym_number_literal] = ACTIONS(2092), [anon_sym_L_SQUOTE] = ACTIONS(2092), [anon_sym_u_SQUOTE] = ACTIONS(2092), [anon_sym_U_SQUOTE] = ACTIONS(2092), [anon_sym_u8_SQUOTE] = ACTIONS(2092), [anon_sym_SQUOTE] = ACTIONS(2092), [anon_sym_L_DQUOTE] = ACTIONS(2092), [anon_sym_u_DQUOTE] = ACTIONS(2092), [anon_sym_U_DQUOTE] = ACTIONS(2092), [anon_sym_u8_DQUOTE] = ACTIONS(2092), [anon_sym_DQUOTE] = ACTIONS(2092), [sym_true] = ACTIONS(2090), [sym_false] = ACTIONS(2090), [sym_null] = ACTIONS(2090), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2090), [anon_sym_virtual] = ACTIONS(2090), [anon_sym_explicit] = ACTIONS(2090), [sym_auto] = ACTIONS(2090), [anon_sym_typename] = ACTIONS(2090), [anon_sym_template] = ACTIONS(2090), [anon_sym_operator] = ACTIONS(2090), [anon_sym_delete] = ACTIONS(2090), [anon_sym_throw] = ACTIONS(2090), [anon_sym_namespace] = ACTIONS(2090), [anon_sym_using] = ACTIONS(2090), [anon_sym_static_assert] = ACTIONS(2090), [anon_sym_co_return] = ACTIONS(2090), [anon_sym_co_yield] = ACTIONS(2090), [anon_sym_try] = ACTIONS(2090), [anon_sym_co_await] = ACTIONS(2090), [anon_sym_new] = ACTIONS(2090), [sym_this] = ACTIONS(2090), [sym_nullptr] = ACTIONS(2090), [sym_raw_string_literal] = ACTIONS(2092), }, [725] = { [sym_identifier] = ACTIONS(2018), [aux_sym_preproc_include_token1] = ACTIONS(2018), [aux_sym_preproc_def_token1] = ACTIONS(2018), [aux_sym_preproc_if_token1] = ACTIONS(2018), [aux_sym_preproc_if_token2] = ACTIONS(2018), [aux_sym_preproc_ifdef_token1] = ACTIONS(2018), [aux_sym_preproc_ifdef_token2] = ACTIONS(2018), [sym_preproc_directive] = ACTIONS(2018), [anon_sym_LPAREN2] = ACTIONS(2020), [anon_sym_BANG] = ACTIONS(2020), [anon_sym_TILDE] = ACTIONS(2020), [anon_sym_DASH] = ACTIONS(2018), [anon_sym_PLUS] = ACTIONS(2018), [anon_sym_STAR] = ACTIONS(2020), [anon_sym_AMP_AMP] = ACTIONS(2020), [anon_sym_AMP] = ACTIONS(2018), [anon_sym_SEMI] = ACTIONS(2020), [anon_sym_typedef] = ACTIONS(2018), [anon_sym_extern] = ACTIONS(2018), [anon_sym___attribute__] = ACTIONS(2018), [anon_sym_COLON_COLON] = ACTIONS(2020), [anon_sym_LBRACK_LBRACK] = ACTIONS(2020), [anon_sym___declspec] = ACTIONS(2018), [anon_sym___based] = ACTIONS(2018), [anon_sym___cdecl] = ACTIONS(2018), [anon_sym___clrcall] = ACTIONS(2018), [anon_sym___stdcall] = ACTIONS(2018), [anon_sym___fastcall] = ACTIONS(2018), [anon_sym___thiscall] = ACTIONS(2018), [anon_sym___vectorcall] = ACTIONS(2018), [anon_sym_LBRACE] = ACTIONS(2020), [anon_sym_LBRACK] = ACTIONS(2018), [anon_sym_static] = ACTIONS(2018), [anon_sym_register] = ACTIONS(2018), [anon_sym_inline] = ACTIONS(2018), [anon_sym_thread_local] = ACTIONS(2018), [anon_sym_const] = ACTIONS(2018), [anon_sym_volatile] = ACTIONS(2018), [anon_sym_restrict] = ACTIONS(2018), [anon_sym__Atomic] = ACTIONS(2018), [anon_sym_mutable] = ACTIONS(2018), [anon_sym_constexpr] = ACTIONS(2018), [anon_sym_signed] = ACTIONS(2018), [anon_sym_unsigned] = ACTIONS(2018), [anon_sym_long] = ACTIONS(2018), [anon_sym_short] = ACTIONS(2018), [sym_primitive_type] = ACTIONS(2018), [anon_sym_enum] = ACTIONS(2018), [anon_sym_class] = ACTIONS(2018), [anon_sym_struct] = ACTIONS(2018), [anon_sym_union] = ACTIONS(2018), [anon_sym_if] = ACTIONS(2018), [anon_sym_switch] = ACTIONS(2018), [anon_sym_case] = ACTIONS(2018), [anon_sym_default] = ACTIONS(2018), [anon_sym_while] = ACTIONS(2018), [anon_sym_do] = ACTIONS(2018), [anon_sym_for] = ACTIONS(2018), [anon_sym_return] = ACTIONS(2018), [anon_sym_break] = ACTIONS(2018), [anon_sym_continue] = ACTIONS(2018), [anon_sym_goto] = ACTIONS(2018), [anon_sym_DASH_DASH] = ACTIONS(2020), [anon_sym_PLUS_PLUS] = ACTIONS(2020), [anon_sym_sizeof] = ACTIONS(2018), [sym_number_literal] = ACTIONS(2020), [anon_sym_L_SQUOTE] = ACTIONS(2020), [anon_sym_u_SQUOTE] = ACTIONS(2020), [anon_sym_U_SQUOTE] = ACTIONS(2020), [anon_sym_u8_SQUOTE] = ACTIONS(2020), [anon_sym_SQUOTE] = ACTIONS(2020), [anon_sym_L_DQUOTE] = ACTIONS(2020), [anon_sym_u_DQUOTE] = ACTIONS(2020), [anon_sym_U_DQUOTE] = ACTIONS(2020), [anon_sym_u8_DQUOTE] = ACTIONS(2020), [anon_sym_DQUOTE] = ACTIONS(2020), [sym_true] = ACTIONS(2018), [sym_false] = ACTIONS(2018), [sym_null] = ACTIONS(2018), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2018), [anon_sym_virtual] = ACTIONS(2018), [anon_sym_explicit] = ACTIONS(2018), [sym_auto] = ACTIONS(2018), [anon_sym_typename] = ACTIONS(2018), [anon_sym_template] = ACTIONS(2018), [anon_sym_operator] = ACTIONS(2018), [anon_sym_delete] = ACTIONS(2018), [anon_sym_throw] = ACTIONS(2018), [anon_sym_namespace] = ACTIONS(2018), [anon_sym_using] = ACTIONS(2018), [anon_sym_static_assert] = ACTIONS(2018), [anon_sym_co_return] = ACTIONS(2018), [anon_sym_co_yield] = ACTIONS(2018), [anon_sym_try] = ACTIONS(2018), [anon_sym_co_await] = ACTIONS(2018), [anon_sym_new] = ACTIONS(2018), [sym_this] = ACTIONS(2018), [sym_nullptr] = ACTIONS(2018), [sym_raw_string_literal] = ACTIONS(2020), }, [726] = { [sym_identifier] = ACTIONS(2078), [aux_sym_preproc_include_token1] = ACTIONS(2078), [aux_sym_preproc_def_token1] = ACTIONS(2078), [aux_sym_preproc_if_token1] = ACTIONS(2078), [aux_sym_preproc_if_token2] = ACTIONS(2078), [aux_sym_preproc_ifdef_token1] = ACTIONS(2078), [aux_sym_preproc_ifdef_token2] = ACTIONS(2078), [sym_preproc_directive] = ACTIONS(2078), [anon_sym_LPAREN2] = ACTIONS(2080), [anon_sym_BANG] = ACTIONS(2080), [anon_sym_TILDE] = ACTIONS(2080), [anon_sym_DASH] = ACTIONS(2078), [anon_sym_PLUS] = ACTIONS(2078), [anon_sym_STAR] = ACTIONS(2080), [anon_sym_AMP_AMP] = ACTIONS(2080), [anon_sym_AMP] = ACTIONS(2078), [anon_sym_SEMI] = ACTIONS(2080), [anon_sym_typedef] = ACTIONS(2078), [anon_sym_extern] = ACTIONS(2078), [anon_sym___attribute__] = ACTIONS(2078), [anon_sym_COLON_COLON] = ACTIONS(2080), [anon_sym_LBRACK_LBRACK] = ACTIONS(2080), [anon_sym___declspec] = ACTIONS(2078), [anon_sym___based] = ACTIONS(2078), [anon_sym___cdecl] = ACTIONS(2078), [anon_sym___clrcall] = ACTIONS(2078), [anon_sym___stdcall] = ACTIONS(2078), [anon_sym___fastcall] = ACTIONS(2078), [anon_sym___thiscall] = ACTIONS(2078), [anon_sym___vectorcall] = ACTIONS(2078), [anon_sym_LBRACE] = ACTIONS(2080), [anon_sym_LBRACK] = ACTIONS(2078), [anon_sym_static] = ACTIONS(2078), [anon_sym_register] = ACTIONS(2078), [anon_sym_inline] = ACTIONS(2078), [anon_sym_thread_local] = ACTIONS(2078), [anon_sym_const] = ACTIONS(2078), [anon_sym_volatile] = ACTIONS(2078), [anon_sym_restrict] = ACTIONS(2078), [anon_sym__Atomic] = ACTIONS(2078), [anon_sym_mutable] = ACTIONS(2078), [anon_sym_constexpr] = ACTIONS(2078), [anon_sym_signed] = ACTIONS(2078), [anon_sym_unsigned] = ACTIONS(2078), [anon_sym_long] = ACTIONS(2078), [anon_sym_short] = ACTIONS(2078), [sym_primitive_type] = ACTIONS(2078), [anon_sym_enum] = ACTIONS(2078), [anon_sym_class] = ACTIONS(2078), [anon_sym_struct] = ACTIONS(2078), [anon_sym_union] = ACTIONS(2078), [anon_sym_if] = ACTIONS(2078), [anon_sym_switch] = ACTIONS(2078), [anon_sym_case] = ACTIONS(2078), [anon_sym_default] = ACTIONS(2078), [anon_sym_while] = ACTIONS(2078), [anon_sym_do] = ACTIONS(2078), [anon_sym_for] = ACTIONS(2078), [anon_sym_return] = ACTIONS(2078), [anon_sym_break] = ACTIONS(2078), [anon_sym_continue] = ACTIONS(2078), [anon_sym_goto] = ACTIONS(2078), [anon_sym_DASH_DASH] = ACTIONS(2080), [anon_sym_PLUS_PLUS] = ACTIONS(2080), [anon_sym_sizeof] = ACTIONS(2078), [sym_number_literal] = ACTIONS(2080), [anon_sym_L_SQUOTE] = ACTIONS(2080), [anon_sym_u_SQUOTE] = ACTIONS(2080), [anon_sym_U_SQUOTE] = ACTIONS(2080), [anon_sym_u8_SQUOTE] = ACTIONS(2080), [anon_sym_SQUOTE] = ACTIONS(2080), [anon_sym_L_DQUOTE] = ACTIONS(2080), [anon_sym_u_DQUOTE] = ACTIONS(2080), [anon_sym_U_DQUOTE] = ACTIONS(2080), [anon_sym_u8_DQUOTE] = ACTIONS(2080), [anon_sym_DQUOTE] = ACTIONS(2080), [sym_true] = ACTIONS(2078), [sym_false] = ACTIONS(2078), [sym_null] = ACTIONS(2078), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2078), [anon_sym_virtual] = ACTIONS(2078), [anon_sym_explicit] = ACTIONS(2078), [sym_auto] = ACTIONS(2078), [anon_sym_typename] = ACTIONS(2078), [anon_sym_template] = ACTIONS(2078), [anon_sym_operator] = ACTIONS(2078), [anon_sym_delete] = ACTIONS(2078), [anon_sym_throw] = ACTIONS(2078), [anon_sym_namespace] = ACTIONS(2078), [anon_sym_using] = ACTIONS(2078), [anon_sym_static_assert] = ACTIONS(2078), [anon_sym_co_return] = ACTIONS(2078), [anon_sym_co_yield] = ACTIONS(2078), [anon_sym_try] = ACTIONS(2078), [anon_sym_co_await] = ACTIONS(2078), [anon_sym_new] = ACTIONS(2078), [sym_this] = ACTIONS(2078), [sym_nullptr] = ACTIONS(2078), [sym_raw_string_literal] = ACTIONS(2080), }, [727] = { [sym_identifier] = ACTIONS(2094), [aux_sym_preproc_include_token1] = ACTIONS(2094), [aux_sym_preproc_def_token1] = ACTIONS(2094), [aux_sym_preproc_if_token1] = ACTIONS(2094), [aux_sym_preproc_ifdef_token1] = ACTIONS(2094), [aux_sym_preproc_ifdef_token2] = ACTIONS(2094), [sym_preproc_directive] = ACTIONS(2094), [anon_sym_LPAREN2] = ACTIONS(2096), [anon_sym_BANG] = ACTIONS(2096), [anon_sym_TILDE] = ACTIONS(2096), [anon_sym_DASH] = ACTIONS(2094), [anon_sym_PLUS] = ACTIONS(2094), [anon_sym_STAR] = ACTIONS(2096), [anon_sym_AMP_AMP] = ACTIONS(2096), [anon_sym_AMP] = ACTIONS(2094), [anon_sym_SEMI] = ACTIONS(2096), [anon_sym_typedef] = ACTIONS(2094), [anon_sym_extern] = ACTIONS(2094), [anon_sym___attribute__] = ACTIONS(2094), [anon_sym_COLON_COLON] = ACTIONS(2096), [anon_sym_LBRACK_LBRACK] = ACTIONS(2096), [anon_sym___declspec] = ACTIONS(2094), [anon_sym___based] = ACTIONS(2094), [anon_sym___cdecl] = ACTIONS(2094), [anon_sym___clrcall] = ACTIONS(2094), [anon_sym___stdcall] = ACTIONS(2094), [anon_sym___fastcall] = ACTIONS(2094), [anon_sym___thiscall] = ACTIONS(2094), [anon_sym___vectorcall] = ACTIONS(2094), [anon_sym_LBRACE] = ACTIONS(2096), [anon_sym_RBRACE] = ACTIONS(2096), [anon_sym_LBRACK] = ACTIONS(2094), [anon_sym_static] = ACTIONS(2094), [anon_sym_register] = ACTIONS(2094), [anon_sym_inline] = ACTIONS(2094), [anon_sym_thread_local] = ACTIONS(2094), [anon_sym_const] = ACTIONS(2094), [anon_sym_volatile] = ACTIONS(2094), [anon_sym_restrict] = ACTIONS(2094), [anon_sym__Atomic] = ACTIONS(2094), [anon_sym_mutable] = ACTIONS(2094), [anon_sym_constexpr] = ACTIONS(2094), [anon_sym_signed] = ACTIONS(2094), [anon_sym_unsigned] = ACTIONS(2094), [anon_sym_long] = ACTIONS(2094), [anon_sym_short] = ACTIONS(2094), [sym_primitive_type] = ACTIONS(2094), [anon_sym_enum] = ACTIONS(2094), [anon_sym_class] = ACTIONS(2094), [anon_sym_struct] = ACTIONS(2094), [anon_sym_union] = ACTIONS(2094), [anon_sym_if] = ACTIONS(2094), [anon_sym_switch] = ACTIONS(2094), [anon_sym_case] = ACTIONS(2094), [anon_sym_default] = ACTIONS(2094), [anon_sym_while] = ACTIONS(2094), [anon_sym_do] = ACTIONS(2094), [anon_sym_for] = ACTIONS(2094), [anon_sym_return] = ACTIONS(2094), [anon_sym_break] = ACTIONS(2094), [anon_sym_continue] = ACTIONS(2094), [anon_sym_goto] = ACTIONS(2094), [anon_sym_DASH_DASH] = ACTIONS(2096), [anon_sym_PLUS_PLUS] = ACTIONS(2096), [anon_sym_sizeof] = ACTIONS(2094), [sym_number_literal] = ACTIONS(2096), [anon_sym_L_SQUOTE] = ACTIONS(2096), [anon_sym_u_SQUOTE] = ACTIONS(2096), [anon_sym_U_SQUOTE] = ACTIONS(2096), [anon_sym_u8_SQUOTE] = ACTIONS(2096), [anon_sym_SQUOTE] = ACTIONS(2096), [anon_sym_L_DQUOTE] = ACTIONS(2096), [anon_sym_u_DQUOTE] = ACTIONS(2096), [anon_sym_U_DQUOTE] = ACTIONS(2096), [anon_sym_u8_DQUOTE] = ACTIONS(2096), [anon_sym_DQUOTE] = ACTIONS(2096), [sym_true] = ACTIONS(2094), [sym_false] = ACTIONS(2094), [sym_null] = ACTIONS(2094), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2094), [anon_sym_virtual] = ACTIONS(2094), [anon_sym_explicit] = ACTIONS(2094), [sym_auto] = ACTIONS(2094), [anon_sym_typename] = ACTIONS(2094), [anon_sym_template] = ACTIONS(2094), [anon_sym_operator] = ACTIONS(2094), [anon_sym_delete] = ACTIONS(2094), [anon_sym_throw] = ACTIONS(2094), [anon_sym_namespace] = ACTIONS(2094), [anon_sym_using] = ACTIONS(2094), [anon_sym_static_assert] = ACTIONS(2094), [anon_sym_co_return] = ACTIONS(2094), [anon_sym_co_yield] = ACTIONS(2094), [anon_sym_try] = ACTIONS(2094), [anon_sym_co_await] = ACTIONS(2094), [anon_sym_new] = ACTIONS(2094), [sym_this] = ACTIONS(2094), [sym_nullptr] = ACTIONS(2094), [sym_raw_string_literal] = ACTIONS(2096), }, [728] = { [sym_identifier] = ACTIONS(2022), [aux_sym_preproc_include_token1] = ACTIONS(2022), [aux_sym_preproc_def_token1] = ACTIONS(2022), [aux_sym_preproc_if_token1] = ACTIONS(2022), [aux_sym_preproc_ifdef_token1] = ACTIONS(2022), [aux_sym_preproc_ifdef_token2] = ACTIONS(2022), [sym_preproc_directive] = ACTIONS(2022), [anon_sym_LPAREN2] = ACTIONS(2024), [anon_sym_BANG] = ACTIONS(2024), [anon_sym_TILDE] = ACTIONS(2024), [anon_sym_DASH] = ACTIONS(2022), [anon_sym_PLUS] = ACTIONS(2022), [anon_sym_STAR] = ACTIONS(2024), [anon_sym_AMP_AMP] = ACTIONS(2024), [anon_sym_AMP] = ACTIONS(2022), [anon_sym_SEMI] = ACTIONS(2024), [anon_sym_typedef] = ACTIONS(2022), [anon_sym_extern] = ACTIONS(2022), [anon_sym___attribute__] = ACTIONS(2022), [anon_sym_COLON_COLON] = ACTIONS(2024), [anon_sym_LBRACK_LBRACK] = ACTIONS(2024), [anon_sym___declspec] = ACTIONS(2022), [anon_sym___based] = ACTIONS(2022), [anon_sym___cdecl] = ACTIONS(2022), [anon_sym___clrcall] = ACTIONS(2022), [anon_sym___stdcall] = ACTIONS(2022), [anon_sym___fastcall] = ACTIONS(2022), [anon_sym___thiscall] = ACTIONS(2022), [anon_sym___vectorcall] = ACTIONS(2022), [anon_sym_LBRACE] = ACTIONS(2024), [anon_sym_RBRACE] = ACTIONS(2024), [anon_sym_LBRACK] = ACTIONS(2022), [anon_sym_static] = ACTIONS(2022), [anon_sym_register] = ACTIONS(2022), [anon_sym_inline] = ACTIONS(2022), [anon_sym_thread_local] = ACTIONS(2022), [anon_sym_const] = ACTIONS(2022), [anon_sym_volatile] = ACTIONS(2022), [anon_sym_restrict] = ACTIONS(2022), [anon_sym__Atomic] = ACTIONS(2022), [anon_sym_mutable] = ACTIONS(2022), [anon_sym_constexpr] = ACTIONS(2022), [anon_sym_signed] = ACTIONS(2022), [anon_sym_unsigned] = ACTIONS(2022), [anon_sym_long] = ACTIONS(2022), [anon_sym_short] = ACTIONS(2022), [sym_primitive_type] = ACTIONS(2022), [anon_sym_enum] = ACTIONS(2022), [anon_sym_class] = ACTIONS(2022), [anon_sym_struct] = ACTIONS(2022), [anon_sym_union] = ACTIONS(2022), [anon_sym_if] = ACTIONS(2022), [anon_sym_switch] = ACTIONS(2022), [anon_sym_case] = ACTIONS(2022), [anon_sym_default] = ACTIONS(2022), [anon_sym_while] = ACTIONS(2022), [anon_sym_do] = ACTIONS(2022), [anon_sym_for] = ACTIONS(2022), [anon_sym_return] = ACTIONS(2022), [anon_sym_break] = ACTIONS(2022), [anon_sym_continue] = ACTIONS(2022), [anon_sym_goto] = ACTIONS(2022), [anon_sym_DASH_DASH] = ACTIONS(2024), [anon_sym_PLUS_PLUS] = ACTIONS(2024), [anon_sym_sizeof] = ACTIONS(2022), [sym_number_literal] = ACTIONS(2024), [anon_sym_L_SQUOTE] = ACTIONS(2024), [anon_sym_u_SQUOTE] = ACTIONS(2024), [anon_sym_U_SQUOTE] = ACTIONS(2024), [anon_sym_u8_SQUOTE] = ACTIONS(2024), [anon_sym_SQUOTE] = ACTIONS(2024), [anon_sym_L_DQUOTE] = ACTIONS(2024), [anon_sym_u_DQUOTE] = ACTIONS(2024), [anon_sym_U_DQUOTE] = ACTIONS(2024), [anon_sym_u8_DQUOTE] = ACTIONS(2024), [anon_sym_DQUOTE] = ACTIONS(2024), [sym_true] = ACTIONS(2022), [sym_false] = ACTIONS(2022), [sym_null] = ACTIONS(2022), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2022), [anon_sym_virtual] = ACTIONS(2022), [anon_sym_explicit] = ACTIONS(2022), [sym_auto] = ACTIONS(2022), [anon_sym_typename] = ACTIONS(2022), [anon_sym_template] = ACTIONS(2022), [anon_sym_operator] = ACTIONS(2022), [anon_sym_delete] = ACTIONS(2022), [anon_sym_throw] = ACTIONS(2022), [anon_sym_namespace] = ACTIONS(2022), [anon_sym_using] = ACTIONS(2022), [anon_sym_static_assert] = ACTIONS(2022), [anon_sym_co_return] = ACTIONS(2022), [anon_sym_co_yield] = ACTIONS(2022), [anon_sym_try] = ACTIONS(2022), [anon_sym_co_await] = ACTIONS(2022), [anon_sym_new] = ACTIONS(2022), [sym_this] = ACTIONS(2022), [sym_nullptr] = ACTIONS(2022), [sym_raw_string_literal] = ACTIONS(2024), }, [729] = { [sym_identifier] = ACTIONS(2082), [aux_sym_preproc_include_token1] = ACTIONS(2082), [aux_sym_preproc_def_token1] = ACTIONS(2082), [aux_sym_preproc_if_token1] = ACTIONS(2082), [aux_sym_preproc_if_token2] = ACTIONS(2082), [aux_sym_preproc_ifdef_token1] = ACTIONS(2082), [aux_sym_preproc_ifdef_token2] = ACTIONS(2082), [sym_preproc_directive] = ACTIONS(2082), [anon_sym_LPAREN2] = ACTIONS(2084), [anon_sym_BANG] = ACTIONS(2084), [anon_sym_TILDE] = ACTIONS(2084), [anon_sym_DASH] = ACTIONS(2082), [anon_sym_PLUS] = ACTIONS(2082), [anon_sym_STAR] = ACTIONS(2084), [anon_sym_AMP_AMP] = ACTIONS(2084), [anon_sym_AMP] = ACTIONS(2082), [anon_sym_SEMI] = ACTIONS(2084), [anon_sym_typedef] = ACTIONS(2082), [anon_sym_extern] = ACTIONS(2082), [anon_sym___attribute__] = ACTIONS(2082), [anon_sym_COLON_COLON] = ACTIONS(2084), [anon_sym_LBRACK_LBRACK] = ACTIONS(2084), [anon_sym___declspec] = ACTIONS(2082), [anon_sym___based] = ACTIONS(2082), [anon_sym___cdecl] = ACTIONS(2082), [anon_sym___clrcall] = ACTIONS(2082), [anon_sym___stdcall] = ACTIONS(2082), [anon_sym___fastcall] = ACTIONS(2082), [anon_sym___thiscall] = ACTIONS(2082), [anon_sym___vectorcall] = ACTIONS(2082), [anon_sym_LBRACE] = ACTIONS(2084), [anon_sym_LBRACK] = ACTIONS(2082), [anon_sym_static] = ACTIONS(2082), [anon_sym_register] = ACTIONS(2082), [anon_sym_inline] = ACTIONS(2082), [anon_sym_thread_local] = ACTIONS(2082), [anon_sym_const] = ACTIONS(2082), [anon_sym_volatile] = ACTIONS(2082), [anon_sym_restrict] = ACTIONS(2082), [anon_sym__Atomic] = ACTIONS(2082), [anon_sym_mutable] = ACTIONS(2082), [anon_sym_constexpr] = ACTIONS(2082), [anon_sym_signed] = ACTIONS(2082), [anon_sym_unsigned] = ACTIONS(2082), [anon_sym_long] = ACTIONS(2082), [anon_sym_short] = ACTIONS(2082), [sym_primitive_type] = ACTIONS(2082), [anon_sym_enum] = ACTIONS(2082), [anon_sym_class] = ACTIONS(2082), [anon_sym_struct] = ACTIONS(2082), [anon_sym_union] = ACTIONS(2082), [anon_sym_if] = ACTIONS(2082), [anon_sym_switch] = ACTIONS(2082), [anon_sym_case] = ACTIONS(2082), [anon_sym_default] = ACTIONS(2082), [anon_sym_while] = ACTIONS(2082), [anon_sym_do] = ACTIONS(2082), [anon_sym_for] = ACTIONS(2082), [anon_sym_return] = ACTIONS(2082), [anon_sym_break] = ACTIONS(2082), [anon_sym_continue] = ACTIONS(2082), [anon_sym_goto] = ACTIONS(2082), [anon_sym_DASH_DASH] = ACTIONS(2084), [anon_sym_PLUS_PLUS] = ACTIONS(2084), [anon_sym_sizeof] = ACTIONS(2082), [sym_number_literal] = ACTIONS(2084), [anon_sym_L_SQUOTE] = ACTIONS(2084), [anon_sym_u_SQUOTE] = ACTIONS(2084), [anon_sym_U_SQUOTE] = ACTIONS(2084), [anon_sym_u8_SQUOTE] = ACTIONS(2084), [anon_sym_SQUOTE] = ACTIONS(2084), [anon_sym_L_DQUOTE] = ACTIONS(2084), [anon_sym_u_DQUOTE] = ACTIONS(2084), [anon_sym_U_DQUOTE] = ACTIONS(2084), [anon_sym_u8_DQUOTE] = ACTIONS(2084), [anon_sym_DQUOTE] = ACTIONS(2084), [sym_true] = ACTIONS(2082), [sym_false] = ACTIONS(2082), [sym_null] = ACTIONS(2082), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2082), [anon_sym_virtual] = ACTIONS(2082), [anon_sym_explicit] = ACTIONS(2082), [sym_auto] = ACTIONS(2082), [anon_sym_typename] = ACTIONS(2082), [anon_sym_template] = ACTIONS(2082), [anon_sym_operator] = ACTIONS(2082), [anon_sym_delete] = ACTIONS(2082), [anon_sym_throw] = ACTIONS(2082), [anon_sym_namespace] = ACTIONS(2082), [anon_sym_using] = ACTIONS(2082), [anon_sym_static_assert] = ACTIONS(2082), [anon_sym_co_return] = ACTIONS(2082), [anon_sym_co_yield] = ACTIONS(2082), [anon_sym_try] = ACTIONS(2082), [anon_sym_co_await] = ACTIONS(2082), [anon_sym_new] = ACTIONS(2082), [sym_this] = ACTIONS(2082), [sym_nullptr] = ACTIONS(2082), [sym_raw_string_literal] = ACTIONS(2084), }, [730] = { [sym_identifier] = ACTIONS(2026), [aux_sym_preproc_include_token1] = ACTIONS(2026), [aux_sym_preproc_def_token1] = ACTIONS(2026), [aux_sym_preproc_if_token1] = ACTIONS(2026), [aux_sym_preproc_ifdef_token1] = ACTIONS(2026), [aux_sym_preproc_ifdef_token2] = ACTIONS(2026), [sym_preproc_directive] = ACTIONS(2026), [anon_sym_LPAREN2] = ACTIONS(2028), [anon_sym_BANG] = ACTIONS(2028), [anon_sym_TILDE] = ACTIONS(2028), [anon_sym_DASH] = ACTIONS(2026), [anon_sym_PLUS] = ACTIONS(2026), [anon_sym_STAR] = ACTIONS(2028), [anon_sym_AMP_AMP] = ACTIONS(2028), [anon_sym_AMP] = ACTIONS(2026), [anon_sym_SEMI] = ACTIONS(2028), [anon_sym_typedef] = ACTIONS(2026), [anon_sym_extern] = ACTIONS(2026), [anon_sym___attribute__] = ACTIONS(2026), [anon_sym_COLON_COLON] = ACTIONS(2028), [anon_sym_LBRACK_LBRACK] = ACTIONS(2028), [anon_sym___declspec] = ACTIONS(2026), [anon_sym___based] = ACTIONS(2026), [anon_sym___cdecl] = ACTIONS(2026), [anon_sym___clrcall] = ACTIONS(2026), [anon_sym___stdcall] = ACTIONS(2026), [anon_sym___fastcall] = ACTIONS(2026), [anon_sym___thiscall] = ACTIONS(2026), [anon_sym___vectorcall] = ACTIONS(2026), [anon_sym_LBRACE] = ACTIONS(2028), [anon_sym_RBRACE] = ACTIONS(2028), [anon_sym_LBRACK] = ACTIONS(2026), [anon_sym_static] = ACTIONS(2026), [anon_sym_register] = ACTIONS(2026), [anon_sym_inline] = ACTIONS(2026), [anon_sym_thread_local] = ACTIONS(2026), [anon_sym_const] = ACTIONS(2026), [anon_sym_volatile] = ACTIONS(2026), [anon_sym_restrict] = ACTIONS(2026), [anon_sym__Atomic] = ACTIONS(2026), [anon_sym_mutable] = ACTIONS(2026), [anon_sym_constexpr] = ACTIONS(2026), [anon_sym_signed] = ACTIONS(2026), [anon_sym_unsigned] = ACTIONS(2026), [anon_sym_long] = ACTIONS(2026), [anon_sym_short] = ACTIONS(2026), [sym_primitive_type] = ACTIONS(2026), [anon_sym_enum] = ACTIONS(2026), [anon_sym_class] = ACTIONS(2026), [anon_sym_struct] = ACTIONS(2026), [anon_sym_union] = ACTIONS(2026), [anon_sym_if] = ACTIONS(2026), [anon_sym_switch] = ACTIONS(2026), [anon_sym_case] = ACTIONS(2026), [anon_sym_default] = ACTIONS(2026), [anon_sym_while] = ACTIONS(2026), [anon_sym_do] = ACTIONS(2026), [anon_sym_for] = ACTIONS(2026), [anon_sym_return] = ACTIONS(2026), [anon_sym_break] = ACTIONS(2026), [anon_sym_continue] = ACTIONS(2026), [anon_sym_goto] = ACTIONS(2026), [anon_sym_DASH_DASH] = ACTIONS(2028), [anon_sym_PLUS_PLUS] = ACTIONS(2028), [anon_sym_sizeof] = ACTIONS(2026), [sym_number_literal] = ACTIONS(2028), [anon_sym_L_SQUOTE] = ACTIONS(2028), [anon_sym_u_SQUOTE] = ACTIONS(2028), [anon_sym_U_SQUOTE] = ACTIONS(2028), [anon_sym_u8_SQUOTE] = ACTIONS(2028), [anon_sym_SQUOTE] = ACTIONS(2028), [anon_sym_L_DQUOTE] = ACTIONS(2028), [anon_sym_u_DQUOTE] = ACTIONS(2028), [anon_sym_U_DQUOTE] = ACTIONS(2028), [anon_sym_u8_DQUOTE] = ACTIONS(2028), [anon_sym_DQUOTE] = ACTIONS(2028), [sym_true] = ACTIONS(2026), [sym_false] = ACTIONS(2026), [sym_null] = ACTIONS(2026), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2026), [anon_sym_virtual] = ACTIONS(2026), [anon_sym_explicit] = ACTIONS(2026), [sym_auto] = ACTIONS(2026), [anon_sym_typename] = ACTIONS(2026), [anon_sym_template] = ACTIONS(2026), [anon_sym_operator] = ACTIONS(2026), [anon_sym_delete] = ACTIONS(2026), [anon_sym_throw] = ACTIONS(2026), [anon_sym_namespace] = ACTIONS(2026), [anon_sym_using] = ACTIONS(2026), [anon_sym_static_assert] = ACTIONS(2026), [anon_sym_co_return] = ACTIONS(2026), [anon_sym_co_yield] = ACTIONS(2026), [anon_sym_try] = ACTIONS(2026), [anon_sym_co_await] = ACTIONS(2026), [anon_sym_new] = ACTIONS(2026), [sym_this] = ACTIONS(2026), [sym_nullptr] = ACTIONS(2026), [sym_raw_string_literal] = ACTIONS(2028), }, [731] = { [ts_builtin_sym_end] = ACTIONS(2028), [sym_identifier] = ACTIONS(2026), [aux_sym_preproc_include_token1] = ACTIONS(2026), [aux_sym_preproc_def_token1] = ACTIONS(2026), [aux_sym_preproc_if_token1] = ACTIONS(2026), [aux_sym_preproc_ifdef_token1] = ACTIONS(2026), [aux_sym_preproc_ifdef_token2] = ACTIONS(2026), [sym_preproc_directive] = ACTIONS(2026), [anon_sym_LPAREN2] = ACTIONS(2028), [anon_sym_BANG] = ACTIONS(2028), [anon_sym_TILDE] = ACTIONS(2028), [anon_sym_DASH] = ACTIONS(2026), [anon_sym_PLUS] = ACTIONS(2026), [anon_sym_STAR] = ACTIONS(2028), [anon_sym_AMP_AMP] = ACTIONS(2028), [anon_sym_AMP] = ACTIONS(2026), [anon_sym_SEMI] = ACTIONS(2028), [anon_sym_typedef] = ACTIONS(2026), [anon_sym_extern] = ACTIONS(2026), [anon_sym___attribute__] = ACTIONS(2026), [anon_sym_COLON_COLON] = ACTIONS(2028), [anon_sym_LBRACK_LBRACK] = ACTIONS(2028), [anon_sym___declspec] = ACTIONS(2026), [anon_sym___based] = ACTIONS(2026), [anon_sym___cdecl] = ACTIONS(2026), [anon_sym___clrcall] = ACTIONS(2026), [anon_sym___stdcall] = ACTIONS(2026), [anon_sym___fastcall] = ACTIONS(2026), [anon_sym___thiscall] = ACTIONS(2026), [anon_sym___vectorcall] = ACTIONS(2026), [anon_sym_LBRACE] = ACTIONS(2028), [anon_sym_LBRACK] = ACTIONS(2026), [anon_sym_static] = ACTIONS(2026), [anon_sym_register] = ACTIONS(2026), [anon_sym_inline] = ACTIONS(2026), [anon_sym_thread_local] = ACTIONS(2026), [anon_sym_const] = ACTIONS(2026), [anon_sym_volatile] = ACTIONS(2026), [anon_sym_restrict] = ACTIONS(2026), [anon_sym__Atomic] = ACTIONS(2026), [anon_sym_mutable] = ACTIONS(2026), [anon_sym_constexpr] = ACTIONS(2026), [anon_sym_signed] = ACTIONS(2026), [anon_sym_unsigned] = ACTIONS(2026), [anon_sym_long] = ACTIONS(2026), [anon_sym_short] = ACTIONS(2026), [sym_primitive_type] = ACTIONS(2026), [anon_sym_enum] = ACTIONS(2026), [anon_sym_class] = ACTIONS(2026), [anon_sym_struct] = ACTIONS(2026), [anon_sym_union] = ACTIONS(2026), [anon_sym_if] = ACTIONS(2026), [anon_sym_switch] = ACTIONS(2026), [anon_sym_case] = ACTIONS(2026), [anon_sym_default] = ACTIONS(2026), [anon_sym_while] = ACTIONS(2026), [anon_sym_do] = ACTIONS(2026), [anon_sym_for] = ACTIONS(2026), [anon_sym_return] = ACTIONS(2026), [anon_sym_break] = ACTIONS(2026), [anon_sym_continue] = ACTIONS(2026), [anon_sym_goto] = ACTIONS(2026), [anon_sym_DASH_DASH] = ACTIONS(2028), [anon_sym_PLUS_PLUS] = ACTIONS(2028), [anon_sym_sizeof] = ACTIONS(2026), [sym_number_literal] = ACTIONS(2028), [anon_sym_L_SQUOTE] = ACTIONS(2028), [anon_sym_u_SQUOTE] = ACTIONS(2028), [anon_sym_U_SQUOTE] = ACTIONS(2028), [anon_sym_u8_SQUOTE] = ACTIONS(2028), [anon_sym_SQUOTE] = ACTIONS(2028), [anon_sym_L_DQUOTE] = ACTIONS(2028), [anon_sym_u_DQUOTE] = ACTIONS(2028), [anon_sym_U_DQUOTE] = ACTIONS(2028), [anon_sym_u8_DQUOTE] = ACTIONS(2028), [anon_sym_DQUOTE] = ACTIONS(2028), [sym_true] = ACTIONS(2026), [sym_false] = ACTIONS(2026), [sym_null] = ACTIONS(2026), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2026), [anon_sym_virtual] = ACTIONS(2026), [anon_sym_explicit] = ACTIONS(2026), [sym_auto] = ACTIONS(2026), [anon_sym_typename] = ACTIONS(2026), [anon_sym_template] = ACTIONS(2026), [anon_sym_operator] = ACTIONS(2026), [anon_sym_delete] = ACTIONS(2026), [anon_sym_throw] = ACTIONS(2026), [anon_sym_namespace] = ACTIONS(2026), [anon_sym_using] = ACTIONS(2026), [anon_sym_static_assert] = ACTIONS(2026), [anon_sym_co_return] = ACTIONS(2026), [anon_sym_co_yield] = ACTIONS(2026), [anon_sym_try] = ACTIONS(2026), [anon_sym_co_await] = ACTIONS(2026), [anon_sym_new] = ACTIONS(2026), [sym_this] = ACTIONS(2026), [sym_nullptr] = ACTIONS(2026), [sym_raw_string_literal] = ACTIONS(2028), }, [732] = { [sym_identifier] = ACTIONS(2174), [aux_sym_preproc_include_token1] = ACTIONS(2174), [aux_sym_preproc_def_token1] = ACTIONS(2174), [aux_sym_preproc_if_token1] = ACTIONS(2174), [aux_sym_preproc_ifdef_token1] = ACTIONS(2174), [aux_sym_preproc_ifdef_token2] = ACTIONS(2174), [sym_preproc_directive] = ACTIONS(2174), [anon_sym_LPAREN2] = ACTIONS(2176), [anon_sym_BANG] = ACTIONS(2176), [anon_sym_TILDE] = ACTIONS(2176), [anon_sym_DASH] = ACTIONS(2174), [anon_sym_PLUS] = ACTIONS(2174), [anon_sym_STAR] = ACTIONS(2176), [anon_sym_AMP_AMP] = ACTIONS(2176), [anon_sym_AMP] = ACTIONS(2174), [anon_sym_SEMI] = ACTIONS(2176), [anon_sym_typedef] = ACTIONS(2174), [anon_sym_extern] = ACTIONS(2174), [anon_sym___attribute__] = ACTIONS(2174), [anon_sym_COLON_COLON] = ACTIONS(2176), [anon_sym_LBRACK_LBRACK] = ACTIONS(2176), [anon_sym___declspec] = ACTIONS(2174), [anon_sym___based] = ACTIONS(2174), [anon_sym___cdecl] = ACTIONS(2174), [anon_sym___clrcall] = ACTIONS(2174), [anon_sym___stdcall] = ACTIONS(2174), [anon_sym___fastcall] = ACTIONS(2174), [anon_sym___thiscall] = ACTIONS(2174), [anon_sym___vectorcall] = ACTIONS(2174), [anon_sym_LBRACE] = ACTIONS(2176), [anon_sym_RBRACE] = ACTIONS(2176), [anon_sym_LBRACK] = ACTIONS(2174), [anon_sym_static] = ACTIONS(2174), [anon_sym_register] = ACTIONS(2174), [anon_sym_inline] = ACTIONS(2174), [anon_sym_thread_local] = ACTIONS(2174), [anon_sym_const] = ACTIONS(2174), [anon_sym_volatile] = ACTIONS(2174), [anon_sym_restrict] = ACTIONS(2174), [anon_sym__Atomic] = ACTIONS(2174), [anon_sym_mutable] = ACTIONS(2174), [anon_sym_constexpr] = ACTIONS(2174), [anon_sym_signed] = ACTIONS(2174), [anon_sym_unsigned] = ACTIONS(2174), [anon_sym_long] = ACTIONS(2174), [anon_sym_short] = ACTIONS(2174), [sym_primitive_type] = ACTIONS(2174), [anon_sym_enum] = ACTIONS(2174), [anon_sym_class] = ACTIONS(2174), [anon_sym_struct] = ACTIONS(2174), [anon_sym_union] = ACTIONS(2174), [anon_sym_if] = ACTIONS(2174), [anon_sym_switch] = ACTIONS(2174), [anon_sym_case] = ACTIONS(2174), [anon_sym_default] = ACTIONS(2174), [anon_sym_while] = ACTIONS(2174), [anon_sym_do] = ACTIONS(2174), [anon_sym_for] = ACTIONS(2174), [anon_sym_return] = ACTIONS(2174), [anon_sym_break] = ACTIONS(2174), [anon_sym_continue] = ACTIONS(2174), [anon_sym_goto] = ACTIONS(2174), [anon_sym_DASH_DASH] = ACTIONS(2176), [anon_sym_PLUS_PLUS] = ACTIONS(2176), [anon_sym_sizeof] = ACTIONS(2174), [sym_number_literal] = ACTIONS(2176), [anon_sym_L_SQUOTE] = ACTIONS(2176), [anon_sym_u_SQUOTE] = ACTIONS(2176), [anon_sym_U_SQUOTE] = ACTIONS(2176), [anon_sym_u8_SQUOTE] = ACTIONS(2176), [anon_sym_SQUOTE] = ACTIONS(2176), [anon_sym_L_DQUOTE] = ACTIONS(2176), [anon_sym_u_DQUOTE] = ACTIONS(2176), [anon_sym_U_DQUOTE] = ACTIONS(2176), [anon_sym_u8_DQUOTE] = ACTIONS(2176), [anon_sym_DQUOTE] = ACTIONS(2176), [sym_true] = ACTIONS(2174), [sym_false] = ACTIONS(2174), [sym_null] = ACTIONS(2174), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2174), [anon_sym_virtual] = ACTIONS(2174), [anon_sym_explicit] = ACTIONS(2174), [sym_auto] = ACTIONS(2174), [anon_sym_typename] = ACTIONS(2174), [anon_sym_template] = ACTIONS(2174), [anon_sym_operator] = ACTIONS(2174), [anon_sym_delete] = ACTIONS(2174), [anon_sym_throw] = ACTIONS(2174), [anon_sym_namespace] = ACTIONS(2174), [anon_sym_using] = ACTIONS(2174), [anon_sym_static_assert] = ACTIONS(2174), [anon_sym_co_return] = ACTIONS(2174), [anon_sym_co_yield] = ACTIONS(2174), [anon_sym_try] = ACTIONS(2174), [anon_sym_co_await] = ACTIONS(2174), [anon_sym_new] = ACTIONS(2174), [sym_this] = ACTIONS(2174), [sym_nullptr] = ACTIONS(2174), [sym_raw_string_literal] = ACTIONS(2176), }, [733] = { [ts_builtin_sym_end] = ACTIONS(2208), [sym_identifier] = ACTIONS(2206), [aux_sym_preproc_include_token1] = ACTIONS(2206), [aux_sym_preproc_def_token1] = ACTIONS(2206), [aux_sym_preproc_if_token1] = ACTIONS(2206), [aux_sym_preproc_ifdef_token1] = ACTIONS(2206), [aux_sym_preproc_ifdef_token2] = ACTIONS(2206), [sym_preproc_directive] = ACTIONS(2206), [anon_sym_LPAREN2] = ACTIONS(2208), [anon_sym_BANG] = ACTIONS(2208), [anon_sym_TILDE] = ACTIONS(2208), [anon_sym_DASH] = ACTIONS(2206), [anon_sym_PLUS] = ACTIONS(2206), [anon_sym_STAR] = ACTIONS(2208), [anon_sym_AMP_AMP] = ACTIONS(2208), [anon_sym_AMP] = ACTIONS(2206), [anon_sym_SEMI] = ACTIONS(2208), [anon_sym_typedef] = ACTIONS(2206), [anon_sym_extern] = ACTIONS(2206), [anon_sym___attribute__] = ACTIONS(2206), [anon_sym_COLON_COLON] = ACTIONS(2208), [anon_sym_LBRACK_LBRACK] = ACTIONS(2208), [anon_sym___declspec] = ACTIONS(2206), [anon_sym___based] = ACTIONS(2206), [anon_sym___cdecl] = ACTIONS(2206), [anon_sym___clrcall] = ACTIONS(2206), [anon_sym___stdcall] = ACTIONS(2206), [anon_sym___fastcall] = ACTIONS(2206), [anon_sym___thiscall] = ACTIONS(2206), [anon_sym___vectorcall] = ACTIONS(2206), [anon_sym_LBRACE] = ACTIONS(2208), [anon_sym_LBRACK] = ACTIONS(2206), [anon_sym_static] = ACTIONS(2206), [anon_sym_register] = ACTIONS(2206), [anon_sym_inline] = ACTIONS(2206), [anon_sym_thread_local] = ACTIONS(2206), [anon_sym_const] = ACTIONS(2206), [anon_sym_volatile] = ACTIONS(2206), [anon_sym_restrict] = ACTIONS(2206), [anon_sym__Atomic] = ACTIONS(2206), [anon_sym_mutable] = ACTIONS(2206), [anon_sym_constexpr] = ACTIONS(2206), [anon_sym_signed] = ACTIONS(2206), [anon_sym_unsigned] = ACTIONS(2206), [anon_sym_long] = ACTIONS(2206), [anon_sym_short] = ACTIONS(2206), [sym_primitive_type] = ACTIONS(2206), [anon_sym_enum] = ACTIONS(2206), [anon_sym_class] = ACTIONS(2206), [anon_sym_struct] = ACTIONS(2206), [anon_sym_union] = ACTIONS(2206), [anon_sym_if] = ACTIONS(2206), [anon_sym_switch] = ACTIONS(2206), [anon_sym_case] = ACTIONS(2206), [anon_sym_default] = ACTIONS(2206), [anon_sym_while] = ACTIONS(2206), [anon_sym_do] = ACTIONS(2206), [anon_sym_for] = ACTIONS(2206), [anon_sym_return] = ACTIONS(2206), [anon_sym_break] = ACTIONS(2206), [anon_sym_continue] = ACTIONS(2206), [anon_sym_goto] = ACTIONS(2206), [anon_sym_DASH_DASH] = ACTIONS(2208), [anon_sym_PLUS_PLUS] = ACTIONS(2208), [anon_sym_sizeof] = ACTIONS(2206), [sym_number_literal] = ACTIONS(2208), [anon_sym_L_SQUOTE] = ACTIONS(2208), [anon_sym_u_SQUOTE] = ACTIONS(2208), [anon_sym_U_SQUOTE] = ACTIONS(2208), [anon_sym_u8_SQUOTE] = ACTIONS(2208), [anon_sym_SQUOTE] = ACTIONS(2208), [anon_sym_L_DQUOTE] = ACTIONS(2208), [anon_sym_u_DQUOTE] = ACTIONS(2208), [anon_sym_U_DQUOTE] = ACTIONS(2208), [anon_sym_u8_DQUOTE] = ACTIONS(2208), [anon_sym_DQUOTE] = ACTIONS(2208), [sym_true] = ACTIONS(2206), [sym_false] = ACTIONS(2206), [sym_null] = ACTIONS(2206), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2206), [anon_sym_virtual] = ACTIONS(2206), [anon_sym_explicit] = ACTIONS(2206), [sym_auto] = ACTIONS(2206), [anon_sym_typename] = ACTIONS(2206), [anon_sym_template] = ACTIONS(2206), [anon_sym_operator] = ACTIONS(2206), [anon_sym_delete] = ACTIONS(2206), [anon_sym_throw] = ACTIONS(2206), [anon_sym_namespace] = ACTIONS(2206), [anon_sym_using] = ACTIONS(2206), [anon_sym_static_assert] = ACTIONS(2206), [anon_sym_co_return] = ACTIONS(2206), [anon_sym_co_yield] = ACTIONS(2206), [anon_sym_try] = ACTIONS(2206), [anon_sym_co_await] = ACTIONS(2206), [anon_sym_new] = ACTIONS(2206), [sym_this] = ACTIONS(2206), [sym_nullptr] = ACTIONS(2206), [sym_raw_string_literal] = ACTIONS(2208), }, [734] = { [sym_identifier] = ACTIONS(2090), [aux_sym_preproc_include_token1] = ACTIONS(2090), [aux_sym_preproc_def_token1] = ACTIONS(2090), [aux_sym_preproc_if_token1] = ACTIONS(2090), [aux_sym_preproc_if_token2] = ACTIONS(2090), [aux_sym_preproc_ifdef_token1] = ACTIONS(2090), [aux_sym_preproc_ifdef_token2] = ACTIONS(2090), [sym_preproc_directive] = ACTIONS(2090), [anon_sym_LPAREN2] = ACTIONS(2092), [anon_sym_BANG] = ACTIONS(2092), [anon_sym_TILDE] = ACTIONS(2092), [anon_sym_DASH] = ACTIONS(2090), [anon_sym_PLUS] = ACTIONS(2090), [anon_sym_STAR] = ACTIONS(2092), [anon_sym_AMP_AMP] = ACTIONS(2092), [anon_sym_AMP] = ACTIONS(2090), [anon_sym_SEMI] = ACTIONS(2092), [anon_sym_typedef] = ACTIONS(2090), [anon_sym_extern] = ACTIONS(2090), [anon_sym___attribute__] = ACTIONS(2090), [anon_sym_COLON_COLON] = ACTIONS(2092), [anon_sym_LBRACK_LBRACK] = ACTIONS(2092), [anon_sym___declspec] = ACTIONS(2090), [anon_sym___based] = ACTIONS(2090), [anon_sym___cdecl] = ACTIONS(2090), [anon_sym___clrcall] = ACTIONS(2090), [anon_sym___stdcall] = ACTIONS(2090), [anon_sym___fastcall] = ACTIONS(2090), [anon_sym___thiscall] = ACTIONS(2090), [anon_sym___vectorcall] = ACTIONS(2090), [anon_sym_LBRACE] = ACTIONS(2092), [anon_sym_LBRACK] = ACTIONS(2090), [anon_sym_static] = ACTIONS(2090), [anon_sym_register] = ACTIONS(2090), [anon_sym_inline] = ACTIONS(2090), [anon_sym_thread_local] = ACTIONS(2090), [anon_sym_const] = ACTIONS(2090), [anon_sym_volatile] = ACTIONS(2090), [anon_sym_restrict] = ACTIONS(2090), [anon_sym__Atomic] = ACTIONS(2090), [anon_sym_mutable] = ACTIONS(2090), [anon_sym_constexpr] = ACTIONS(2090), [anon_sym_signed] = ACTIONS(2090), [anon_sym_unsigned] = ACTIONS(2090), [anon_sym_long] = ACTIONS(2090), [anon_sym_short] = ACTIONS(2090), [sym_primitive_type] = ACTIONS(2090), [anon_sym_enum] = ACTIONS(2090), [anon_sym_class] = ACTIONS(2090), [anon_sym_struct] = ACTIONS(2090), [anon_sym_union] = ACTIONS(2090), [anon_sym_if] = ACTIONS(2090), [anon_sym_switch] = ACTIONS(2090), [anon_sym_case] = ACTIONS(2090), [anon_sym_default] = ACTIONS(2090), [anon_sym_while] = ACTIONS(2090), [anon_sym_do] = ACTIONS(2090), [anon_sym_for] = ACTIONS(2090), [anon_sym_return] = ACTIONS(2090), [anon_sym_break] = ACTIONS(2090), [anon_sym_continue] = ACTIONS(2090), [anon_sym_goto] = ACTIONS(2090), [anon_sym_DASH_DASH] = ACTIONS(2092), [anon_sym_PLUS_PLUS] = ACTIONS(2092), [anon_sym_sizeof] = ACTIONS(2090), [sym_number_literal] = ACTIONS(2092), [anon_sym_L_SQUOTE] = ACTIONS(2092), [anon_sym_u_SQUOTE] = ACTIONS(2092), [anon_sym_U_SQUOTE] = ACTIONS(2092), [anon_sym_u8_SQUOTE] = ACTIONS(2092), [anon_sym_SQUOTE] = ACTIONS(2092), [anon_sym_L_DQUOTE] = ACTIONS(2092), [anon_sym_u_DQUOTE] = ACTIONS(2092), [anon_sym_U_DQUOTE] = ACTIONS(2092), [anon_sym_u8_DQUOTE] = ACTIONS(2092), [anon_sym_DQUOTE] = ACTIONS(2092), [sym_true] = ACTIONS(2090), [sym_false] = ACTIONS(2090), [sym_null] = ACTIONS(2090), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2090), [anon_sym_virtual] = ACTIONS(2090), [anon_sym_explicit] = ACTIONS(2090), [sym_auto] = ACTIONS(2090), [anon_sym_typename] = ACTIONS(2090), [anon_sym_template] = ACTIONS(2090), [anon_sym_operator] = ACTIONS(2090), [anon_sym_delete] = ACTIONS(2090), [anon_sym_throw] = ACTIONS(2090), [anon_sym_namespace] = ACTIONS(2090), [anon_sym_using] = ACTIONS(2090), [anon_sym_static_assert] = ACTIONS(2090), [anon_sym_co_return] = ACTIONS(2090), [anon_sym_co_yield] = ACTIONS(2090), [anon_sym_try] = ACTIONS(2090), [anon_sym_co_await] = ACTIONS(2090), [anon_sym_new] = ACTIONS(2090), [sym_this] = ACTIONS(2090), [sym_nullptr] = ACTIONS(2090), [sym_raw_string_literal] = ACTIONS(2092), }, [735] = { [ts_builtin_sym_end] = ACTIONS(2128), [sym_identifier] = ACTIONS(2126), [aux_sym_preproc_include_token1] = ACTIONS(2126), [aux_sym_preproc_def_token1] = ACTIONS(2126), [aux_sym_preproc_if_token1] = ACTIONS(2126), [aux_sym_preproc_ifdef_token1] = ACTIONS(2126), [aux_sym_preproc_ifdef_token2] = ACTIONS(2126), [sym_preproc_directive] = ACTIONS(2126), [anon_sym_LPAREN2] = ACTIONS(2128), [anon_sym_BANG] = ACTIONS(2128), [anon_sym_TILDE] = ACTIONS(2128), [anon_sym_DASH] = ACTIONS(2126), [anon_sym_PLUS] = ACTIONS(2126), [anon_sym_STAR] = ACTIONS(2128), [anon_sym_AMP_AMP] = ACTIONS(2128), [anon_sym_AMP] = ACTIONS(2126), [anon_sym_SEMI] = ACTIONS(2128), [anon_sym_typedef] = ACTIONS(2126), [anon_sym_extern] = ACTIONS(2126), [anon_sym___attribute__] = ACTIONS(2126), [anon_sym_COLON_COLON] = ACTIONS(2128), [anon_sym_LBRACK_LBRACK] = ACTIONS(2128), [anon_sym___declspec] = ACTIONS(2126), [anon_sym___based] = ACTIONS(2126), [anon_sym___cdecl] = ACTIONS(2126), [anon_sym___clrcall] = ACTIONS(2126), [anon_sym___stdcall] = ACTIONS(2126), [anon_sym___fastcall] = ACTIONS(2126), [anon_sym___thiscall] = ACTIONS(2126), [anon_sym___vectorcall] = ACTIONS(2126), [anon_sym_LBRACE] = ACTIONS(2128), [anon_sym_LBRACK] = ACTIONS(2126), [anon_sym_static] = ACTIONS(2126), [anon_sym_register] = ACTIONS(2126), [anon_sym_inline] = ACTIONS(2126), [anon_sym_thread_local] = ACTIONS(2126), [anon_sym_const] = ACTIONS(2126), [anon_sym_volatile] = ACTIONS(2126), [anon_sym_restrict] = ACTIONS(2126), [anon_sym__Atomic] = ACTIONS(2126), [anon_sym_mutable] = ACTIONS(2126), [anon_sym_constexpr] = ACTIONS(2126), [anon_sym_signed] = ACTIONS(2126), [anon_sym_unsigned] = ACTIONS(2126), [anon_sym_long] = ACTIONS(2126), [anon_sym_short] = ACTIONS(2126), [sym_primitive_type] = ACTIONS(2126), [anon_sym_enum] = ACTIONS(2126), [anon_sym_class] = ACTIONS(2126), [anon_sym_struct] = ACTIONS(2126), [anon_sym_union] = ACTIONS(2126), [anon_sym_if] = ACTIONS(2126), [anon_sym_switch] = ACTIONS(2126), [anon_sym_case] = ACTIONS(2126), [anon_sym_default] = ACTIONS(2126), [anon_sym_while] = ACTIONS(2126), [anon_sym_do] = ACTIONS(2126), [anon_sym_for] = ACTIONS(2126), [anon_sym_return] = ACTIONS(2126), [anon_sym_break] = ACTIONS(2126), [anon_sym_continue] = ACTIONS(2126), [anon_sym_goto] = ACTIONS(2126), [anon_sym_DASH_DASH] = ACTIONS(2128), [anon_sym_PLUS_PLUS] = ACTIONS(2128), [anon_sym_sizeof] = ACTIONS(2126), [sym_number_literal] = ACTIONS(2128), [anon_sym_L_SQUOTE] = ACTIONS(2128), [anon_sym_u_SQUOTE] = ACTIONS(2128), [anon_sym_U_SQUOTE] = ACTIONS(2128), [anon_sym_u8_SQUOTE] = ACTIONS(2128), [anon_sym_SQUOTE] = ACTIONS(2128), [anon_sym_L_DQUOTE] = ACTIONS(2128), [anon_sym_u_DQUOTE] = ACTIONS(2128), [anon_sym_U_DQUOTE] = ACTIONS(2128), [anon_sym_u8_DQUOTE] = ACTIONS(2128), [anon_sym_DQUOTE] = ACTIONS(2128), [sym_true] = ACTIONS(2126), [sym_false] = ACTIONS(2126), [sym_null] = ACTIONS(2126), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2126), [anon_sym_virtual] = ACTIONS(2126), [anon_sym_explicit] = ACTIONS(2126), [sym_auto] = ACTIONS(2126), [anon_sym_typename] = ACTIONS(2126), [anon_sym_template] = ACTIONS(2126), [anon_sym_operator] = ACTIONS(2126), [anon_sym_delete] = ACTIONS(2126), [anon_sym_throw] = ACTIONS(2126), [anon_sym_namespace] = ACTIONS(2126), [anon_sym_using] = ACTIONS(2126), [anon_sym_static_assert] = ACTIONS(2126), [anon_sym_co_return] = ACTIONS(2126), [anon_sym_co_yield] = ACTIONS(2126), [anon_sym_try] = ACTIONS(2126), [anon_sym_co_await] = ACTIONS(2126), [anon_sym_new] = ACTIONS(2126), [sym_this] = ACTIONS(2126), [sym_nullptr] = ACTIONS(2126), [sym_raw_string_literal] = ACTIONS(2128), }, [736] = { [ts_builtin_sym_end] = ACTIONS(2204), [sym_identifier] = ACTIONS(2202), [aux_sym_preproc_include_token1] = ACTIONS(2202), [aux_sym_preproc_def_token1] = ACTIONS(2202), [aux_sym_preproc_if_token1] = ACTIONS(2202), [aux_sym_preproc_ifdef_token1] = ACTIONS(2202), [aux_sym_preproc_ifdef_token2] = ACTIONS(2202), [sym_preproc_directive] = ACTIONS(2202), [anon_sym_LPAREN2] = ACTIONS(2204), [anon_sym_BANG] = ACTIONS(2204), [anon_sym_TILDE] = ACTIONS(2204), [anon_sym_DASH] = ACTIONS(2202), [anon_sym_PLUS] = ACTIONS(2202), [anon_sym_STAR] = ACTIONS(2204), [anon_sym_AMP_AMP] = ACTIONS(2204), [anon_sym_AMP] = ACTIONS(2202), [anon_sym_SEMI] = ACTIONS(2204), [anon_sym_typedef] = ACTIONS(2202), [anon_sym_extern] = ACTIONS(2202), [anon_sym___attribute__] = ACTIONS(2202), [anon_sym_COLON_COLON] = ACTIONS(2204), [anon_sym_LBRACK_LBRACK] = ACTIONS(2204), [anon_sym___declspec] = ACTIONS(2202), [anon_sym___based] = ACTIONS(2202), [anon_sym___cdecl] = ACTIONS(2202), [anon_sym___clrcall] = ACTIONS(2202), [anon_sym___stdcall] = ACTIONS(2202), [anon_sym___fastcall] = ACTIONS(2202), [anon_sym___thiscall] = ACTIONS(2202), [anon_sym___vectorcall] = ACTIONS(2202), [anon_sym_LBRACE] = ACTIONS(2204), [anon_sym_LBRACK] = ACTIONS(2202), [anon_sym_static] = ACTIONS(2202), [anon_sym_register] = ACTIONS(2202), [anon_sym_inline] = ACTIONS(2202), [anon_sym_thread_local] = ACTIONS(2202), [anon_sym_const] = ACTIONS(2202), [anon_sym_volatile] = ACTIONS(2202), [anon_sym_restrict] = ACTIONS(2202), [anon_sym__Atomic] = ACTIONS(2202), [anon_sym_mutable] = ACTIONS(2202), [anon_sym_constexpr] = ACTIONS(2202), [anon_sym_signed] = ACTIONS(2202), [anon_sym_unsigned] = ACTIONS(2202), [anon_sym_long] = ACTIONS(2202), [anon_sym_short] = ACTIONS(2202), [sym_primitive_type] = ACTIONS(2202), [anon_sym_enum] = ACTIONS(2202), [anon_sym_class] = ACTIONS(2202), [anon_sym_struct] = ACTIONS(2202), [anon_sym_union] = ACTIONS(2202), [anon_sym_if] = ACTIONS(2202), [anon_sym_switch] = ACTIONS(2202), [anon_sym_case] = ACTIONS(2202), [anon_sym_default] = ACTIONS(2202), [anon_sym_while] = ACTIONS(2202), [anon_sym_do] = ACTIONS(2202), [anon_sym_for] = ACTIONS(2202), [anon_sym_return] = ACTIONS(2202), [anon_sym_break] = ACTIONS(2202), [anon_sym_continue] = ACTIONS(2202), [anon_sym_goto] = ACTIONS(2202), [anon_sym_DASH_DASH] = ACTIONS(2204), [anon_sym_PLUS_PLUS] = ACTIONS(2204), [anon_sym_sizeof] = ACTIONS(2202), [sym_number_literal] = ACTIONS(2204), [anon_sym_L_SQUOTE] = ACTIONS(2204), [anon_sym_u_SQUOTE] = ACTIONS(2204), [anon_sym_U_SQUOTE] = ACTIONS(2204), [anon_sym_u8_SQUOTE] = ACTIONS(2204), [anon_sym_SQUOTE] = ACTIONS(2204), [anon_sym_L_DQUOTE] = ACTIONS(2204), [anon_sym_u_DQUOTE] = ACTIONS(2204), [anon_sym_U_DQUOTE] = ACTIONS(2204), [anon_sym_u8_DQUOTE] = ACTIONS(2204), [anon_sym_DQUOTE] = ACTIONS(2204), [sym_true] = ACTIONS(2202), [sym_false] = ACTIONS(2202), [sym_null] = ACTIONS(2202), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2202), [anon_sym_virtual] = ACTIONS(2202), [anon_sym_explicit] = ACTIONS(2202), [sym_auto] = ACTIONS(2202), [anon_sym_typename] = ACTIONS(2202), [anon_sym_template] = ACTIONS(2202), [anon_sym_operator] = ACTIONS(2202), [anon_sym_delete] = ACTIONS(2202), [anon_sym_throw] = ACTIONS(2202), [anon_sym_namespace] = ACTIONS(2202), [anon_sym_using] = ACTIONS(2202), [anon_sym_static_assert] = ACTIONS(2202), [anon_sym_co_return] = ACTIONS(2202), [anon_sym_co_yield] = ACTIONS(2202), [anon_sym_try] = ACTIONS(2202), [anon_sym_co_await] = ACTIONS(2202), [anon_sym_new] = ACTIONS(2202), [sym_this] = ACTIONS(2202), [sym_nullptr] = ACTIONS(2202), [sym_raw_string_literal] = ACTIONS(2204), }, [737] = { [sym_identifier] = ACTIONS(2102), [aux_sym_preproc_include_token1] = ACTIONS(2102), [aux_sym_preproc_def_token1] = ACTIONS(2102), [aux_sym_preproc_if_token1] = ACTIONS(2102), [aux_sym_preproc_ifdef_token1] = ACTIONS(2102), [aux_sym_preproc_ifdef_token2] = ACTIONS(2102), [sym_preproc_directive] = ACTIONS(2102), [anon_sym_LPAREN2] = ACTIONS(2104), [anon_sym_BANG] = ACTIONS(2104), [anon_sym_TILDE] = ACTIONS(2104), [anon_sym_DASH] = ACTIONS(2102), [anon_sym_PLUS] = ACTIONS(2102), [anon_sym_STAR] = ACTIONS(2104), [anon_sym_AMP_AMP] = ACTIONS(2104), [anon_sym_AMP] = ACTIONS(2102), [anon_sym_SEMI] = ACTIONS(2104), [anon_sym_typedef] = ACTIONS(2102), [anon_sym_extern] = ACTIONS(2102), [anon_sym___attribute__] = ACTIONS(2102), [anon_sym_COLON_COLON] = ACTIONS(2104), [anon_sym_LBRACK_LBRACK] = ACTIONS(2104), [anon_sym___declspec] = ACTIONS(2102), [anon_sym___based] = ACTIONS(2102), [anon_sym___cdecl] = ACTIONS(2102), [anon_sym___clrcall] = ACTIONS(2102), [anon_sym___stdcall] = ACTIONS(2102), [anon_sym___fastcall] = ACTIONS(2102), [anon_sym___thiscall] = ACTIONS(2102), [anon_sym___vectorcall] = ACTIONS(2102), [anon_sym_LBRACE] = ACTIONS(2104), [anon_sym_RBRACE] = ACTIONS(2104), [anon_sym_LBRACK] = ACTIONS(2102), [anon_sym_static] = ACTIONS(2102), [anon_sym_register] = ACTIONS(2102), [anon_sym_inline] = ACTIONS(2102), [anon_sym_thread_local] = ACTIONS(2102), [anon_sym_const] = ACTIONS(2102), [anon_sym_volatile] = ACTIONS(2102), [anon_sym_restrict] = ACTIONS(2102), [anon_sym__Atomic] = ACTIONS(2102), [anon_sym_mutable] = ACTIONS(2102), [anon_sym_constexpr] = ACTIONS(2102), [anon_sym_signed] = ACTIONS(2102), [anon_sym_unsigned] = ACTIONS(2102), [anon_sym_long] = ACTIONS(2102), [anon_sym_short] = ACTIONS(2102), [sym_primitive_type] = ACTIONS(2102), [anon_sym_enum] = ACTIONS(2102), [anon_sym_class] = ACTIONS(2102), [anon_sym_struct] = ACTIONS(2102), [anon_sym_union] = ACTIONS(2102), [anon_sym_if] = ACTIONS(2102), [anon_sym_switch] = ACTIONS(2102), [anon_sym_case] = ACTIONS(2102), [anon_sym_default] = ACTIONS(2102), [anon_sym_while] = ACTIONS(2102), [anon_sym_do] = ACTIONS(2102), [anon_sym_for] = ACTIONS(2102), [anon_sym_return] = ACTIONS(2102), [anon_sym_break] = ACTIONS(2102), [anon_sym_continue] = ACTIONS(2102), [anon_sym_goto] = ACTIONS(2102), [anon_sym_DASH_DASH] = ACTIONS(2104), [anon_sym_PLUS_PLUS] = ACTIONS(2104), [anon_sym_sizeof] = ACTIONS(2102), [sym_number_literal] = ACTIONS(2104), [anon_sym_L_SQUOTE] = ACTIONS(2104), [anon_sym_u_SQUOTE] = ACTIONS(2104), [anon_sym_U_SQUOTE] = ACTIONS(2104), [anon_sym_u8_SQUOTE] = ACTIONS(2104), [anon_sym_SQUOTE] = ACTIONS(2104), [anon_sym_L_DQUOTE] = ACTIONS(2104), [anon_sym_u_DQUOTE] = ACTIONS(2104), [anon_sym_U_DQUOTE] = ACTIONS(2104), [anon_sym_u8_DQUOTE] = ACTIONS(2104), [anon_sym_DQUOTE] = ACTIONS(2104), [sym_true] = ACTIONS(2102), [sym_false] = ACTIONS(2102), [sym_null] = ACTIONS(2102), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2102), [anon_sym_virtual] = ACTIONS(2102), [anon_sym_explicit] = ACTIONS(2102), [sym_auto] = ACTIONS(2102), [anon_sym_typename] = ACTIONS(2102), [anon_sym_template] = ACTIONS(2102), [anon_sym_operator] = ACTIONS(2102), [anon_sym_delete] = ACTIONS(2102), [anon_sym_throw] = ACTIONS(2102), [anon_sym_namespace] = ACTIONS(2102), [anon_sym_using] = ACTIONS(2102), [anon_sym_static_assert] = ACTIONS(2102), [anon_sym_co_return] = ACTIONS(2102), [anon_sym_co_yield] = ACTIONS(2102), [anon_sym_try] = ACTIONS(2102), [anon_sym_co_await] = ACTIONS(2102), [anon_sym_new] = ACTIONS(2102), [sym_this] = ACTIONS(2102), [sym_nullptr] = ACTIONS(2102), [sym_raw_string_literal] = ACTIONS(2104), }, [738] = { [sym_identifier] = ACTIONS(2106), [aux_sym_preproc_include_token1] = ACTIONS(2106), [aux_sym_preproc_def_token1] = ACTIONS(2106), [aux_sym_preproc_if_token1] = ACTIONS(2106), [aux_sym_preproc_ifdef_token1] = ACTIONS(2106), [aux_sym_preproc_ifdef_token2] = ACTIONS(2106), [sym_preproc_directive] = ACTIONS(2106), [anon_sym_LPAREN2] = ACTIONS(2108), [anon_sym_BANG] = ACTIONS(2108), [anon_sym_TILDE] = ACTIONS(2108), [anon_sym_DASH] = ACTIONS(2106), [anon_sym_PLUS] = ACTIONS(2106), [anon_sym_STAR] = ACTIONS(2108), [anon_sym_AMP_AMP] = ACTIONS(2108), [anon_sym_AMP] = ACTIONS(2106), [anon_sym_SEMI] = ACTIONS(2108), [anon_sym_typedef] = ACTIONS(2106), [anon_sym_extern] = ACTIONS(2106), [anon_sym___attribute__] = ACTIONS(2106), [anon_sym_COLON_COLON] = ACTIONS(2108), [anon_sym_LBRACK_LBRACK] = ACTIONS(2108), [anon_sym___declspec] = ACTIONS(2106), [anon_sym___based] = ACTIONS(2106), [anon_sym___cdecl] = ACTIONS(2106), [anon_sym___clrcall] = ACTIONS(2106), [anon_sym___stdcall] = ACTIONS(2106), [anon_sym___fastcall] = ACTIONS(2106), [anon_sym___thiscall] = ACTIONS(2106), [anon_sym___vectorcall] = ACTIONS(2106), [anon_sym_LBRACE] = ACTIONS(2108), [anon_sym_RBRACE] = ACTIONS(2108), [anon_sym_LBRACK] = ACTIONS(2106), [anon_sym_static] = ACTIONS(2106), [anon_sym_register] = ACTIONS(2106), [anon_sym_inline] = ACTIONS(2106), [anon_sym_thread_local] = ACTIONS(2106), [anon_sym_const] = ACTIONS(2106), [anon_sym_volatile] = ACTIONS(2106), [anon_sym_restrict] = ACTIONS(2106), [anon_sym__Atomic] = ACTIONS(2106), [anon_sym_mutable] = ACTIONS(2106), [anon_sym_constexpr] = ACTIONS(2106), [anon_sym_signed] = ACTIONS(2106), [anon_sym_unsigned] = ACTIONS(2106), [anon_sym_long] = ACTIONS(2106), [anon_sym_short] = ACTIONS(2106), [sym_primitive_type] = ACTIONS(2106), [anon_sym_enum] = ACTIONS(2106), [anon_sym_class] = ACTIONS(2106), [anon_sym_struct] = ACTIONS(2106), [anon_sym_union] = ACTIONS(2106), [anon_sym_if] = ACTIONS(2106), [anon_sym_switch] = ACTIONS(2106), [anon_sym_case] = ACTIONS(2106), [anon_sym_default] = ACTIONS(2106), [anon_sym_while] = ACTIONS(2106), [anon_sym_do] = ACTIONS(2106), [anon_sym_for] = ACTIONS(2106), [anon_sym_return] = ACTIONS(2106), [anon_sym_break] = ACTIONS(2106), [anon_sym_continue] = ACTIONS(2106), [anon_sym_goto] = ACTIONS(2106), [anon_sym_DASH_DASH] = ACTIONS(2108), [anon_sym_PLUS_PLUS] = ACTIONS(2108), [anon_sym_sizeof] = ACTIONS(2106), [sym_number_literal] = ACTIONS(2108), [anon_sym_L_SQUOTE] = ACTIONS(2108), [anon_sym_u_SQUOTE] = ACTIONS(2108), [anon_sym_U_SQUOTE] = ACTIONS(2108), [anon_sym_u8_SQUOTE] = ACTIONS(2108), [anon_sym_SQUOTE] = ACTIONS(2108), [anon_sym_L_DQUOTE] = ACTIONS(2108), [anon_sym_u_DQUOTE] = ACTIONS(2108), [anon_sym_U_DQUOTE] = ACTIONS(2108), [anon_sym_u8_DQUOTE] = ACTIONS(2108), [anon_sym_DQUOTE] = ACTIONS(2108), [sym_true] = ACTIONS(2106), [sym_false] = ACTIONS(2106), [sym_null] = ACTIONS(2106), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2106), [anon_sym_virtual] = ACTIONS(2106), [anon_sym_explicit] = ACTIONS(2106), [sym_auto] = ACTIONS(2106), [anon_sym_typename] = ACTIONS(2106), [anon_sym_template] = ACTIONS(2106), [anon_sym_operator] = ACTIONS(2106), [anon_sym_delete] = ACTIONS(2106), [anon_sym_throw] = ACTIONS(2106), [anon_sym_namespace] = ACTIONS(2106), [anon_sym_using] = ACTIONS(2106), [anon_sym_static_assert] = ACTIONS(2106), [anon_sym_co_return] = ACTIONS(2106), [anon_sym_co_yield] = ACTIONS(2106), [anon_sym_try] = ACTIONS(2106), [anon_sym_co_await] = ACTIONS(2106), [anon_sym_new] = ACTIONS(2106), [sym_this] = ACTIONS(2106), [sym_nullptr] = ACTIONS(2106), [sym_raw_string_literal] = ACTIONS(2108), }, [739] = { [ts_builtin_sym_end] = ACTIONS(2100), [sym_identifier] = ACTIONS(2098), [aux_sym_preproc_include_token1] = ACTIONS(2098), [aux_sym_preproc_def_token1] = ACTIONS(2098), [aux_sym_preproc_if_token1] = ACTIONS(2098), [aux_sym_preproc_ifdef_token1] = ACTIONS(2098), [aux_sym_preproc_ifdef_token2] = ACTIONS(2098), [sym_preproc_directive] = ACTIONS(2098), [anon_sym_LPAREN2] = ACTIONS(2100), [anon_sym_BANG] = ACTIONS(2100), [anon_sym_TILDE] = ACTIONS(2100), [anon_sym_DASH] = ACTIONS(2098), [anon_sym_PLUS] = ACTIONS(2098), [anon_sym_STAR] = ACTIONS(2100), [anon_sym_AMP_AMP] = ACTIONS(2100), [anon_sym_AMP] = ACTIONS(2098), [anon_sym_SEMI] = ACTIONS(2100), [anon_sym_typedef] = ACTIONS(2098), [anon_sym_extern] = ACTIONS(2098), [anon_sym___attribute__] = ACTIONS(2098), [anon_sym_COLON_COLON] = ACTIONS(2100), [anon_sym_LBRACK_LBRACK] = ACTIONS(2100), [anon_sym___declspec] = ACTIONS(2098), [anon_sym___based] = ACTIONS(2098), [anon_sym___cdecl] = ACTIONS(2098), [anon_sym___clrcall] = ACTIONS(2098), [anon_sym___stdcall] = ACTIONS(2098), [anon_sym___fastcall] = ACTIONS(2098), [anon_sym___thiscall] = ACTIONS(2098), [anon_sym___vectorcall] = ACTIONS(2098), [anon_sym_LBRACE] = ACTIONS(2100), [anon_sym_LBRACK] = ACTIONS(2098), [anon_sym_static] = ACTIONS(2098), [anon_sym_register] = ACTIONS(2098), [anon_sym_inline] = ACTIONS(2098), [anon_sym_thread_local] = ACTIONS(2098), [anon_sym_const] = ACTIONS(2098), [anon_sym_volatile] = ACTIONS(2098), [anon_sym_restrict] = ACTIONS(2098), [anon_sym__Atomic] = ACTIONS(2098), [anon_sym_mutable] = ACTIONS(2098), [anon_sym_constexpr] = ACTIONS(2098), [anon_sym_signed] = ACTIONS(2098), [anon_sym_unsigned] = ACTIONS(2098), [anon_sym_long] = ACTIONS(2098), [anon_sym_short] = ACTIONS(2098), [sym_primitive_type] = ACTIONS(2098), [anon_sym_enum] = ACTIONS(2098), [anon_sym_class] = ACTIONS(2098), [anon_sym_struct] = ACTIONS(2098), [anon_sym_union] = ACTIONS(2098), [anon_sym_if] = ACTIONS(2098), [anon_sym_switch] = ACTIONS(2098), [anon_sym_case] = ACTIONS(2098), [anon_sym_default] = ACTIONS(2098), [anon_sym_while] = ACTIONS(2098), [anon_sym_do] = ACTIONS(2098), [anon_sym_for] = ACTIONS(2098), [anon_sym_return] = ACTIONS(2098), [anon_sym_break] = ACTIONS(2098), [anon_sym_continue] = ACTIONS(2098), [anon_sym_goto] = ACTIONS(2098), [anon_sym_DASH_DASH] = ACTIONS(2100), [anon_sym_PLUS_PLUS] = ACTIONS(2100), [anon_sym_sizeof] = ACTIONS(2098), [sym_number_literal] = ACTIONS(2100), [anon_sym_L_SQUOTE] = ACTIONS(2100), [anon_sym_u_SQUOTE] = ACTIONS(2100), [anon_sym_U_SQUOTE] = ACTIONS(2100), [anon_sym_u8_SQUOTE] = ACTIONS(2100), [anon_sym_SQUOTE] = ACTIONS(2100), [anon_sym_L_DQUOTE] = ACTIONS(2100), [anon_sym_u_DQUOTE] = ACTIONS(2100), [anon_sym_U_DQUOTE] = ACTIONS(2100), [anon_sym_u8_DQUOTE] = ACTIONS(2100), [anon_sym_DQUOTE] = ACTIONS(2100), [sym_true] = ACTIONS(2098), [sym_false] = ACTIONS(2098), [sym_null] = ACTIONS(2098), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2098), [anon_sym_virtual] = ACTIONS(2098), [anon_sym_explicit] = ACTIONS(2098), [sym_auto] = ACTIONS(2098), [anon_sym_typename] = ACTIONS(2098), [anon_sym_template] = ACTIONS(2098), [anon_sym_operator] = ACTIONS(2098), [anon_sym_delete] = ACTIONS(2098), [anon_sym_throw] = ACTIONS(2098), [anon_sym_namespace] = ACTIONS(2098), [anon_sym_using] = ACTIONS(2098), [anon_sym_static_assert] = ACTIONS(2098), [anon_sym_co_return] = ACTIONS(2098), [anon_sym_co_yield] = ACTIONS(2098), [anon_sym_try] = ACTIONS(2098), [anon_sym_co_await] = ACTIONS(2098), [anon_sym_new] = ACTIONS(2098), [sym_this] = ACTIONS(2098), [sym_nullptr] = ACTIONS(2098), [sym_raw_string_literal] = ACTIONS(2100), }, [740] = { [sym_identifier] = ACTIONS(2098), [aux_sym_preproc_include_token1] = ACTIONS(2098), [aux_sym_preproc_def_token1] = ACTIONS(2098), [aux_sym_preproc_if_token1] = ACTIONS(2098), [aux_sym_preproc_if_token2] = ACTIONS(2098), [aux_sym_preproc_ifdef_token1] = ACTIONS(2098), [aux_sym_preproc_ifdef_token2] = ACTIONS(2098), [sym_preproc_directive] = ACTIONS(2098), [anon_sym_LPAREN2] = ACTIONS(2100), [anon_sym_BANG] = ACTIONS(2100), [anon_sym_TILDE] = ACTIONS(2100), [anon_sym_DASH] = ACTIONS(2098), [anon_sym_PLUS] = ACTIONS(2098), [anon_sym_STAR] = ACTIONS(2100), [anon_sym_AMP_AMP] = ACTIONS(2100), [anon_sym_AMP] = ACTIONS(2098), [anon_sym_SEMI] = ACTIONS(2100), [anon_sym_typedef] = ACTIONS(2098), [anon_sym_extern] = ACTIONS(2098), [anon_sym___attribute__] = ACTIONS(2098), [anon_sym_COLON_COLON] = ACTIONS(2100), [anon_sym_LBRACK_LBRACK] = ACTIONS(2100), [anon_sym___declspec] = ACTIONS(2098), [anon_sym___based] = ACTIONS(2098), [anon_sym___cdecl] = ACTIONS(2098), [anon_sym___clrcall] = ACTIONS(2098), [anon_sym___stdcall] = ACTIONS(2098), [anon_sym___fastcall] = ACTIONS(2098), [anon_sym___thiscall] = ACTIONS(2098), [anon_sym___vectorcall] = ACTIONS(2098), [anon_sym_LBRACE] = ACTIONS(2100), [anon_sym_LBRACK] = ACTIONS(2098), [anon_sym_static] = ACTIONS(2098), [anon_sym_register] = ACTIONS(2098), [anon_sym_inline] = ACTIONS(2098), [anon_sym_thread_local] = ACTIONS(2098), [anon_sym_const] = ACTIONS(2098), [anon_sym_volatile] = ACTIONS(2098), [anon_sym_restrict] = ACTIONS(2098), [anon_sym__Atomic] = ACTIONS(2098), [anon_sym_mutable] = ACTIONS(2098), [anon_sym_constexpr] = ACTIONS(2098), [anon_sym_signed] = ACTIONS(2098), [anon_sym_unsigned] = ACTIONS(2098), [anon_sym_long] = ACTIONS(2098), [anon_sym_short] = ACTIONS(2098), [sym_primitive_type] = ACTIONS(2098), [anon_sym_enum] = ACTIONS(2098), [anon_sym_class] = ACTIONS(2098), [anon_sym_struct] = ACTIONS(2098), [anon_sym_union] = ACTIONS(2098), [anon_sym_if] = ACTIONS(2098), [anon_sym_switch] = ACTIONS(2098), [anon_sym_case] = ACTIONS(2098), [anon_sym_default] = ACTIONS(2098), [anon_sym_while] = ACTIONS(2098), [anon_sym_do] = ACTIONS(2098), [anon_sym_for] = ACTIONS(2098), [anon_sym_return] = ACTIONS(2098), [anon_sym_break] = ACTIONS(2098), [anon_sym_continue] = ACTIONS(2098), [anon_sym_goto] = ACTIONS(2098), [anon_sym_DASH_DASH] = ACTIONS(2100), [anon_sym_PLUS_PLUS] = ACTIONS(2100), [anon_sym_sizeof] = ACTIONS(2098), [sym_number_literal] = ACTIONS(2100), [anon_sym_L_SQUOTE] = ACTIONS(2100), [anon_sym_u_SQUOTE] = ACTIONS(2100), [anon_sym_U_SQUOTE] = ACTIONS(2100), [anon_sym_u8_SQUOTE] = ACTIONS(2100), [anon_sym_SQUOTE] = ACTIONS(2100), [anon_sym_L_DQUOTE] = ACTIONS(2100), [anon_sym_u_DQUOTE] = ACTIONS(2100), [anon_sym_U_DQUOTE] = ACTIONS(2100), [anon_sym_u8_DQUOTE] = ACTIONS(2100), [anon_sym_DQUOTE] = ACTIONS(2100), [sym_true] = ACTIONS(2098), [sym_false] = ACTIONS(2098), [sym_null] = ACTIONS(2098), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2098), [anon_sym_virtual] = ACTIONS(2098), [anon_sym_explicit] = ACTIONS(2098), [sym_auto] = ACTIONS(2098), [anon_sym_typename] = ACTIONS(2098), [anon_sym_template] = ACTIONS(2098), [anon_sym_operator] = ACTIONS(2098), [anon_sym_delete] = ACTIONS(2098), [anon_sym_throw] = ACTIONS(2098), [anon_sym_namespace] = ACTIONS(2098), [anon_sym_using] = ACTIONS(2098), [anon_sym_static_assert] = ACTIONS(2098), [anon_sym_co_return] = ACTIONS(2098), [anon_sym_co_yield] = ACTIONS(2098), [anon_sym_try] = ACTIONS(2098), [anon_sym_co_await] = ACTIONS(2098), [anon_sym_new] = ACTIONS(2098), [sym_this] = ACTIONS(2098), [sym_nullptr] = ACTIONS(2098), [sym_raw_string_literal] = ACTIONS(2100), }, [741] = { [sym_identifier] = ACTIONS(2110), [aux_sym_preproc_include_token1] = ACTIONS(2110), [aux_sym_preproc_def_token1] = ACTIONS(2110), [aux_sym_preproc_if_token1] = ACTIONS(2110), [aux_sym_preproc_ifdef_token1] = ACTIONS(2110), [aux_sym_preproc_ifdef_token2] = ACTIONS(2110), [sym_preproc_directive] = ACTIONS(2110), [anon_sym_LPAREN2] = ACTIONS(2112), [anon_sym_BANG] = ACTIONS(2112), [anon_sym_TILDE] = ACTIONS(2112), [anon_sym_DASH] = ACTIONS(2110), [anon_sym_PLUS] = ACTIONS(2110), [anon_sym_STAR] = ACTIONS(2112), [anon_sym_AMP_AMP] = ACTIONS(2112), [anon_sym_AMP] = ACTIONS(2110), [anon_sym_SEMI] = ACTIONS(2112), [anon_sym_typedef] = ACTIONS(2110), [anon_sym_extern] = ACTIONS(2110), [anon_sym___attribute__] = ACTIONS(2110), [anon_sym_COLON_COLON] = ACTIONS(2112), [anon_sym_LBRACK_LBRACK] = ACTIONS(2112), [anon_sym___declspec] = ACTIONS(2110), [anon_sym___based] = ACTIONS(2110), [anon_sym___cdecl] = ACTIONS(2110), [anon_sym___clrcall] = ACTIONS(2110), [anon_sym___stdcall] = ACTIONS(2110), [anon_sym___fastcall] = ACTIONS(2110), [anon_sym___thiscall] = ACTIONS(2110), [anon_sym___vectorcall] = ACTIONS(2110), [anon_sym_LBRACE] = ACTIONS(2112), [anon_sym_RBRACE] = ACTIONS(2112), [anon_sym_LBRACK] = ACTIONS(2110), [anon_sym_static] = ACTIONS(2110), [anon_sym_register] = ACTIONS(2110), [anon_sym_inline] = ACTIONS(2110), [anon_sym_thread_local] = ACTIONS(2110), [anon_sym_const] = ACTIONS(2110), [anon_sym_volatile] = ACTIONS(2110), [anon_sym_restrict] = ACTIONS(2110), [anon_sym__Atomic] = ACTIONS(2110), [anon_sym_mutable] = ACTIONS(2110), [anon_sym_constexpr] = ACTIONS(2110), [anon_sym_signed] = ACTIONS(2110), [anon_sym_unsigned] = ACTIONS(2110), [anon_sym_long] = ACTIONS(2110), [anon_sym_short] = ACTIONS(2110), [sym_primitive_type] = ACTIONS(2110), [anon_sym_enum] = ACTIONS(2110), [anon_sym_class] = ACTIONS(2110), [anon_sym_struct] = ACTIONS(2110), [anon_sym_union] = ACTIONS(2110), [anon_sym_if] = ACTIONS(2110), [anon_sym_switch] = ACTIONS(2110), [anon_sym_case] = ACTIONS(2110), [anon_sym_default] = ACTIONS(2110), [anon_sym_while] = ACTIONS(2110), [anon_sym_do] = ACTIONS(2110), [anon_sym_for] = ACTIONS(2110), [anon_sym_return] = ACTIONS(2110), [anon_sym_break] = ACTIONS(2110), [anon_sym_continue] = ACTIONS(2110), [anon_sym_goto] = ACTIONS(2110), [anon_sym_DASH_DASH] = ACTIONS(2112), [anon_sym_PLUS_PLUS] = ACTIONS(2112), [anon_sym_sizeof] = ACTIONS(2110), [sym_number_literal] = ACTIONS(2112), [anon_sym_L_SQUOTE] = ACTIONS(2112), [anon_sym_u_SQUOTE] = ACTIONS(2112), [anon_sym_U_SQUOTE] = ACTIONS(2112), [anon_sym_u8_SQUOTE] = ACTIONS(2112), [anon_sym_SQUOTE] = ACTIONS(2112), [anon_sym_L_DQUOTE] = ACTIONS(2112), [anon_sym_u_DQUOTE] = ACTIONS(2112), [anon_sym_U_DQUOTE] = ACTIONS(2112), [anon_sym_u8_DQUOTE] = ACTIONS(2112), [anon_sym_DQUOTE] = ACTIONS(2112), [sym_true] = ACTIONS(2110), [sym_false] = ACTIONS(2110), [sym_null] = ACTIONS(2110), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2110), [anon_sym_virtual] = ACTIONS(2110), [anon_sym_explicit] = ACTIONS(2110), [sym_auto] = ACTIONS(2110), [anon_sym_typename] = ACTIONS(2110), [anon_sym_template] = ACTIONS(2110), [anon_sym_operator] = ACTIONS(2110), [anon_sym_delete] = ACTIONS(2110), [anon_sym_throw] = ACTIONS(2110), [anon_sym_namespace] = ACTIONS(2110), [anon_sym_using] = ACTIONS(2110), [anon_sym_static_assert] = ACTIONS(2110), [anon_sym_co_return] = ACTIONS(2110), [anon_sym_co_yield] = ACTIONS(2110), [anon_sym_try] = ACTIONS(2110), [anon_sym_co_await] = ACTIONS(2110), [anon_sym_new] = ACTIONS(2110), [sym_this] = ACTIONS(2110), [sym_nullptr] = ACTIONS(2110), [sym_raw_string_literal] = ACTIONS(2112), }, [742] = { [sym_identifier] = ACTIONS(2218), [aux_sym_preproc_include_token1] = ACTIONS(2218), [aux_sym_preproc_def_token1] = ACTIONS(2218), [aux_sym_preproc_if_token1] = ACTIONS(2218), [aux_sym_preproc_if_token2] = ACTIONS(2218), [aux_sym_preproc_ifdef_token1] = ACTIONS(2218), [aux_sym_preproc_ifdef_token2] = ACTIONS(2218), [sym_preproc_directive] = ACTIONS(2218), [anon_sym_LPAREN2] = ACTIONS(2220), [anon_sym_BANG] = ACTIONS(2220), [anon_sym_TILDE] = ACTIONS(2220), [anon_sym_DASH] = ACTIONS(2218), [anon_sym_PLUS] = ACTIONS(2218), [anon_sym_STAR] = ACTIONS(2220), [anon_sym_AMP_AMP] = ACTIONS(2220), [anon_sym_AMP] = ACTIONS(2218), [anon_sym_SEMI] = ACTIONS(2220), [anon_sym_typedef] = ACTIONS(2218), [anon_sym_extern] = ACTIONS(2218), [anon_sym___attribute__] = ACTIONS(2218), [anon_sym_COLON_COLON] = ACTIONS(2220), [anon_sym_LBRACK_LBRACK] = ACTIONS(2220), [anon_sym___declspec] = ACTIONS(2218), [anon_sym___based] = ACTIONS(2218), [anon_sym___cdecl] = ACTIONS(2218), [anon_sym___clrcall] = ACTIONS(2218), [anon_sym___stdcall] = ACTIONS(2218), [anon_sym___fastcall] = ACTIONS(2218), [anon_sym___thiscall] = ACTIONS(2218), [anon_sym___vectorcall] = ACTIONS(2218), [anon_sym_LBRACE] = ACTIONS(2220), [anon_sym_LBRACK] = ACTIONS(2218), [anon_sym_static] = ACTIONS(2218), [anon_sym_register] = ACTIONS(2218), [anon_sym_inline] = ACTIONS(2218), [anon_sym_thread_local] = ACTIONS(2218), [anon_sym_const] = ACTIONS(2218), [anon_sym_volatile] = ACTIONS(2218), [anon_sym_restrict] = ACTIONS(2218), [anon_sym__Atomic] = ACTIONS(2218), [anon_sym_mutable] = ACTIONS(2218), [anon_sym_constexpr] = ACTIONS(2218), [anon_sym_signed] = ACTIONS(2218), [anon_sym_unsigned] = ACTIONS(2218), [anon_sym_long] = ACTIONS(2218), [anon_sym_short] = ACTIONS(2218), [sym_primitive_type] = ACTIONS(2218), [anon_sym_enum] = ACTIONS(2218), [anon_sym_class] = ACTIONS(2218), [anon_sym_struct] = ACTIONS(2218), [anon_sym_union] = ACTIONS(2218), [anon_sym_if] = ACTIONS(2218), [anon_sym_switch] = ACTIONS(2218), [anon_sym_case] = ACTIONS(2218), [anon_sym_default] = ACTIONS(2218), [anon_sym_while] = ACTIONS(2218), [anon_sym_do] = ACTIONS(2218), [anon_sym_for] = ACTIONS(2218), [anon_sym_return] = ACTIONS(2218), [anon_sym_break] = ACTIONS(2218), [anon_sym_continue] = ACTIONS(2218), [anon_sym_goto] = ACTIONS(2218), [anon_sym_DASH_DASH] = ACTIONS(2220), [anon_sym_PLUS_PLUS] = ACTIONS(2220), [anon_sym_sizeof] = ACTIONS(2218), [sym_number_literal] = ACTIONS(2220), [anon_sym_L_SQUOTE] = ACTIONS(2220), [anon_sym_u_SQUOTE] = ACTIONS(2220), [anon_sym_U_SQUOTE] = ACTIONS(2220), [anon_sym_u8_SQUOTE] = ACTIONS(2220), [anon_sym_SQUOTE] = ACTIONS(2220), [anon_sym_L_DQUOTE] = ACTIONS(2220), [anon_sym_u_DQUOTE] = ACTIONS(2220), [anon_sym_U_DQUOTE] = ACTIONS(2220), [anon_sym_u8_DQUOTE] = ACTIONS(2220), [anon_sym_DQUOTE] = ACTIONS(2220), [sym_true] = ACTIONS(2218), [sym_false] = ACTIONS(2218), [sym_null] = ACTIONS(2218), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2218), [anon_sym_virtual] = ACTIONS(2218), [anon_sym_explicit] = ACTIONS(2218), [sym_auto] = ACTIONS(2218), [anon_sym_typename] = ACTIONS(2218), [anon_sym_template] = ACTIONS(2218), [anon_sym_operator] = ACTIONS(2218), [anon_sym_delete] = ACTIONS(2218), [anon_sym_throw] = ACTIONS(2218), [anon_sym_namespace] = ACTIONS(2218), [anon_sym_using] = ACTIONS(2218), [anon_sym_static_assert] = ACTIONS(2218), [anon_sym_co_return] = ACTIONS(2218), [anon_sym_co_yield] = ACTIONS(2218), [anon_sym_try] = ACTIONS(2218), [anon_sym_co_await] = ACTIONS(2218), [anon_sym_new] = ACTIONS(2218), [sym_this] = ACTIONS(2218), [sym_nullptr] = ACTIONS(2218), [sym_raw_string_literal] = ACTIONS(2220), }, [743] = { [sym_identifier] = ACTIONS(2214), [aux_sym_preproc_include_token1] = ACTIONS(2214), [aux_sym_preproc_def_token1] = ACTIONS(2214), [aux_sym_preproc_if_token1] = ACTIONS(2214), [aux_sym_preproc_ifdef_token1] = ACTIONS(2214), [aux_sym_preproc_ifdef_token2] = ACTIONS(2214), [sym_preproc_directive] = ACTIONS(2214), [anon_sym_LPAREN2] = ACTIONS(2216), [anon_sym_BANG] = ACTIONS(2216), [anon_sym_TILDE] = ACTIONS(2216), [anon_sym_DASH] = ACTIONS(2214), [anon_sym_PLUS] = ACTIONS(2214), [anon_sym_STAR] = ACTIONS(2216), [anon_sym_AMP_AMP] = ACTIONS(2216), [anon_sym_AMP] = ACTIONS(2214), [anon_sym_SEMI] = ACTIONS(2216), [anon_sym_typedef] = ACTIONS(2214), [anon_sym_extern] = ACTIONS(2214), [anon_sym___attribute__] = ACTIONS(2214), [anon_sym_COLON_COLON] = ACTIONS(2216), [anon_sym_LBRACK_LBRACK] = ACTIONS(2216), [anon_sym___declspec] = ACTIONS(2214), [anon_sym___based] = ACTIONS(2214), [anon_sym___cdecl] = ACTIONS(2214), [anon_sym___clrcall] = ACTIONS(2214), [anon_sym___stdcall] = ACTIONS(2214), [anon_sym___fastcall] = ACTIONS(2214), [anon_sym___thiscall] = ACTIONS(2214), [anon_sym___vectorcall] = ACTIONS(2214), [anon_sym_LBRACE] = ACTIONS(2216), [anon_sym_RBRACE] = ACTIONS(2216), [anon_sym_LBRACK] = ACTIONS(2214), [anon_sym_static] = ACTIONS(2214), [anon_sym_register] = ACTIONS(2214), [anon_sym_inline] = ACTIONS(2214), [anon_sym_thread_local] = ACTIONS(2214), [anon_sym_const] = ACTIONS(2214), [anon_sym_volatile] = ACTIONS(2214), [anon_sym_restrict] = ACTIONS(2214), [anon_sym__Atomic] = ACTIONS(2214), [anon_sym_mutable] = ACTIONS(2214), [anon_sym_constexpr] = ACTIONS(2214), [anon_sym_signed] = ACTIONS(2214), [anon_sym_unsigned] = ACTIONS(2214), [anon_sym_long] = ACTIONS(2214), [anon_sym_short] = ACTIONS(2214), [sym_primitive_type] = ACTIONS(2214), [anon_sym_enum] = ACTIONS(2214), [anon_sym_class] = ACTIONS(2214), [anon_sym_struct] = ACTIONS(2214), [anon_sym_union] = ACTIONS(2214), [anon_sym_if] = ACTIONS(2214), [anon_sym_switch] = ACTIONS(2214), [anon_sym_case] = ACTIONS(2214), [anon_sym_default] = ACTIONS(2214), [anon_sym_while] = ACTIONS(2214), [anon_sym_do] = ACTIONS(2214), [anon_sym_for] = ACTIONS(2214), [anon_sym_return] = ACTIONS(2214), [anon_sym_break] = ACTIONS(2214), [anon_sym_continue] = ACTIONS(2214), [anon_sym_goto] = ACTIONS(2214), [anon_sym_DASH_DASH] = ACTIONS(2216), [anon_sym_PLUS_PLUS] = ACTIONS(2216), [anon_sym_sizeof] = ACTIONS(2214), [sym_number_literal] = ACTIONS(2216), [anon_sym_L_SQUOTE] = ACTIONS(2216), [anon_sym_u_SQUOTE] = ACTIONS(2216), [anon_sym_U_SQUOTE] = ACTIONS(2216), [anon_sym_u8_SQUOTE] = ACTIONS(2216), [anon_sym_SQUOTE] = ACTIONS(2216), [anon_sym_L_DQUOTE] = ACTIONS(2216), [anon_sym_u_DQUOTE] = ACTIONS(2216), [anon_sym_U_DQUOTE] = ACTIONS(2216), [anon_sym_u8_DQUOTE] = ACTIONS(2216), [anon_sym_DQUOTE] = ACTIONS(2216), [sym_true] = ACTIONS(2214), [sym_false] = ACTIONS(2214), [sym_null] = ACTIONS(2214), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2214), [anon_sym_virtual] = ACTIONS(2214), [anon_sym_explicit] = ACTIONS(2214), [sym_auto] = ACTIONS(2214), [anon_sym_typename] = ACTIONS(2214), [anon_sym_template] = ACTIONS(2214), [anon_sym_operator] = ACTIONS(2214), [anon_sym_delete] = ACTIONS(2214), [anon_sym_throw] = ACTIONS(2214), [anon_sym_namespace] = ACTIONS(2214), [anon_sym_using] = ACTIONS(2214), [anon_sym_static_assert] = ACTIONS(2214), [anon_sym_co_return] = ACTIONS(2214), [anon_sym_co_yield] = ACTIONS(2214), [anon_sym_try] = ACTIONS(2214), [anon_sym_co_await] = ACTIONS(2214), [anon_sym_new] = ACTIONS(2214), [sym_this] = ACTIONS(2214), [sym_nullptr] = ACTIONS(2214), [sym_raw_string_literal] = ACTIONS(2216), }, [744] = { [sym_identifier] = ACTIONS(2114), [aux_sym_preproc_include_token1] = ACTIONS(2114), [aux_sym_preproc_def_token1] = ACTIONS(2114), [aux_sym_preproc_if_token1] = ACTIONS(2114), [aux_sym_preproc_ifdef_token1] = ACTIONS(2114), [aux_sym_preproc_ifdef_token2] = ACTIONS(2114), [sym_preproc_directive] = ACTIONS(2114), [anon_sym_LPAREN2] = ACTIONS(2116), [anon_sym_BANG] = ACTIONS(2116), [anon_sym_TILDE] = ACTIONS(2116), [anon_sym_DASH] = ACTIONS(2114), [anon_sym_PLUS] = ACTIONS(2114), [anon_sym_STAR] = ACTIONS(2116), [anon_sym_AMP_AMP] = ACTIONS(2116), [anon_sym_AMP] = ACTIONS(2114), [anon_sym_SEMI] = ACTIONS(2116), [anon_sym_typedef] = ACTIONS(2114), [anon_sym_extern] = ACTIONS(2114), [anon_sym___attribute__] = ACTIONS(2114), [anon_sym_COLON_COLON] = ACTIONS(2116), [anon_sym_LBRACK_LBRACK] = ACTIONS(2116), [anon_sym___declspec] = ACTIONS(2114), [anon_sym___based] = ACTIONS(2114), [anon_sym___cdecl] = ACTIONS(2114), [anon_sym___clrcall] = ACTIONS(2114), [anon_sym___stdcall] = ACTIONS(2114), [anon_sym___fastcall] = ACTIONS(2114), [anon_sym___thiscall] = ACTIONS(2114), [anon_sym___vectorcall] = ACTIONS(2114), [anon_sym_LBRACE] = ACTIONS(2116), [anon_sym_RBRACE] = ACTIONS(2116), [anon_sym_LBRACK] = ACTIONS(2114), [anon_sym_static] = ACTIONS(2114), [anon_sym_register] = ACTIONS(2114), [anon_sym_inline] = ACTIONS(2114), [anon_sym_thread_local] = ACTIONS(2114), [anon_sym_const] = ACTIONS(2114), [anon_sym_volatile] = ACTIONS(2114), [anon_sym_restrict] = ACTIONS(2114), [anon_sym__Atomic] = ACTIONS(2114), [anon_sym_mutable] = ACTIONS(2114), [anon_sym_constexpr] = ACTIONS(2114), [anon_sym_signed] = ACTIONS(2114), [anon_sym_unsigned] = ACTIONS(2114), [anon_sym_long] = ACTIONS(2114), [anon_sym_short] = ACTIONS(2114), [sym_primitive_type] = ACTIONS(2114), [anon_sym_enum] = ACTIONS(2114), [anon_sym_class] = ACTIONS(2114), [anon_sym_struct] = ACTIONS(2114), [anon_sym_union] = ACTIONS(2114), [anon_sym_if] = ACTIONS(2114), [anon_sym_switch] = ACTIONS(2114), [anon_sym_case] = ACTIONS(2114), [anon_sym_default] = ACTIONS(2114), [anon_sym_while] = ACTIONS(2114), [anon_sym_do] = ACTIONS(2114), [anon_sym_for] = ACTIONS(2114), [anon_sym_return] = ACTIONS(2114), [anon_sym_break] = ACTIONS(2114), [anon_sym_continue] = ACTIONS(2114), [anon_sym_goto] = ACTIONS(2114), [anon_sym_DASH_DASH] = ACTIONS(2116), [anon_sym_PLUS_PLUS] = ACTIONS(2116), [anon_sym_sizeof] = ACTIONS(2114), [sym_number_literal] = ACTIONS(2116), [anon_sym_L_SQUOTE] = ACTIONS(2116), [anon_sym_u_SQUOTE] = ACTIONS(2116), [anon_sym_U_SQUOTE] = ACTIONS(2116), [anon_sym_u8_SQUOTE] = ACTIONS(2116), [anon_sym_SQUOTE] = ACTIONS(2116), [anon_sym_L_DQUOTE] = ACTIONS(2116), [anon_sym_u_DQUOTE] = ACTIONS(2116), [anon_sym_U_DQUOTE] = ACTIONS(2116), [anon_sym_u8_DQUOTE] = ACTIONS(2116), [anon_sym_DQUOTE] = ACTIONS(2116), [sym_true] = ACTIONS(2114), [sym_false] = ACTIONS(2114), [sym_null] = ACTIONS(2114), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2114), [anon_sym_virtual] = ACTIONS(2114), [anon_sym_explicit] = ACTIONS(2114), [sym_auto] = ACTIONS(2114), [anon_sym_typename] = ACTIONS(2114), [anon_sym_template] = ACTIONS(2114), [anon_sym_operator] = ACTIONS(2114), [anon_sym_delete] = ACTIONS(2114), [anon_sym_throw] = ACTIONS(2114), [anon_sym_namespace] = ACTIONS(2114), [anon_sym_using] = ACTIONS(2114), [anon_sym_static_assert] = ACTIONS(2114), [anon_sym_co_return] = ACTIONS(2114), [anon_sym_co_yield] = ACTIONS(2114), [anon_sym_try] = ACTIONS(2114), [anon_sym_co_await] = ACTIONS(2114), [anon_sym_new] = ACTIONS(2114), [sym_this] = ACTIONS(2114), [sym_nullptr] = ACTIONS(2114), [sym_raw_string_literal] = ACTIONS(2116), }, [745] = { [sym_identifier] = ACTIONS(2210), [aux_sym_preproc_include_token1] = ACTIONS(2210), [aux_sym_preproc_def_token1] = ACTIONS(2210), [aux_sym_preproc_if_token1] = ACTIONS(2210), [aux_sym_preproc_if_token2] = ACTIONS(2210), [aux_sym_preproc_ifdef_token1] = ACTIONS(2210), [aux_sym_preproc_ifdef_token2] = ACTIONS(2210), [sym_preproc_directive] = ACTIONS(2210), [anon_sym_LPAREN2] = ACTIONS(2212), [anon_sym_BANG] = ACTIONS(2212), [anon_sym_TILDE] = ACTIONS(2212), [anon_sym_DASH] = ACTIONS(2210), [anon_sym_PLUS] = ACTIONS(2210), [anon_sym_STAR] = ACTIONS(2212), [anon_sym_AMP_AMP] = ACTIONS(2212), [anon_sym_AMP] = ACTIONS(2210), [anon_sym_SEMI] = ACTIONS(2212), [anon_sym_typedef] = ACTIONS(2210), [anon_sym_extern] = ACTIONS(2210), [anon_sym___attribute__] = ACTIONS(2210), [anon_sym_COLON_COLON] = ACTIONS(2212), [anon_sym_LBRACK_LBRACK] = ACTIONS(2212), [anon_sym___declspec] = ACTIONS(2210), [anon_sym___based] = ACTIONS(2210), [anon_sym___cdecl] = ACTIONS(2210), [anon_sym___clrcall] = ACTIONS(2210), [anon_sym___stdcall] = ACTIONS(2210), [anon_sym___fastcall] = ACTIONS(2210), [anon_sym___thiscall] = ACTIONS(2210), [anon_sym___vectorcall] = ACTIONS(2210), [anon_sym_LBRACE] = ACTIONS(2212), [anon_sym_LBRACK] = ACTIONS(2210), [anon_sym_static] = ACTIONS(2210), [anon_sym_register] = ACTIONS(2210), [anon_sym_inline] = ACTIONS(2210), [anon_sym_thread_local] = ACTIONS(2210), [anon_sym_const] = ACTIONS(2210), [anon_sym_volatile] = ACTIONS(2210), [anon_sym_restrict] = ACTIONS(2210), [anon_sym__Atomic] = ACTIONS(2210), [anon_sym_mutable] = ACTIONS(2210), [anon_sym_constexpr] = ACTIONS(2210), [anon_sym_signed] = ACTIONS(2210), [anon_sym_unsigned] = ACTIONS(2210), [anon_sym_long] = ACTIONS(2210), [anon_sym_short] = ACTIONS(2210), [sym_primitive_type] = ACTIONS(2210), [anon_sym_enum] = ACTIONS(2210), [anon_sym_class] = ACTIONS(2210), [anon_sym_struct] = ACTIONS(2210), [anon_sym_union] = ACTIONS(2210), [anon_sym_if] = ACTIONS(2210), [anon_sym_switch] = ACTIONS(2210), [anon_sym_case] = ACTIONS(2210), [anon_sym_default] = ACTIONS(2210), [anon_sym_while] = ACTIONS(2210), [anon_sym_do] = ACTIONS(2210), [anon_sym_for] = ACTIONS(2210), [anon_sym_return] = ACTIONS(2210), [anon_sym_break] = ACTIONS(2210), [anon_sym_continue] = ACTIONS(2210), [anon_sym_goto] = ACTIONS(2210), [anon_sym_DASH_DASH] = ACTIONS(2212), [anon_sym_PLUS_PLUS] = ACTIONS(2212), [anon_sym_sizeof] = ACTIONS(2210), [sym_number_literal] = ACTIONS(2212), [anon_sym_L_SQUOTE] = ACTIONS(2212), [anon_sym_u_SQUOTE] = ACTIONS(2212), [anon_sym_U_SQUOTE] = ACTIONS(2212), [anon_sym_u8_SQUOTE] = ACTIONS(2212), [anon_sym_SQUOTE] = ACTIONS(2212), [anon_sym_L_DQUOTE] = ACTIONS(2212), [anon_sym_u_DQUOTE] = ACTIONS(2212), [anon_sym_U_DQUOTE] = ACTIONS(2212), [anon_sym_u8_DQUOTE] = ACTIONS(2212), [anon_sym_DQUOTE] = ACTIONS(2212), [sym_true] = ACTIONS(2210), [sym_false] = ACTIONS(2210), [sym_null] = ACTIONS(2210), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2210), [anon_sym_virtual] = ACTIONS(2210), [anon_sym_explicit] = ACTIONS(2210), [sym_auto] = ACTIONS(2210), [anon_sym_typename] = ACTIONS(2210), [anon_sym_template] = ACTIONS(2210), [anon_sym_operator] = ACTIONS(2210), [anon_sym_delete] = ACTIONS(2210), [anon_sym_throw] = ACTIONS(2210), [anon_sym_namespace] = ACTIONS(2210), [anon_sym_using] = ACTIONS(2210), [anon_sym_static_assert] = ACTIONS(2210), [anon_sym_co_return] = ACTIONS(2210), [anon_sym_co_yield] = ACTIONS(2210), [anon_sym_try] = ACTIONS(2210), [anon_sym_co_await] = ACTIONS(2210), [anon_sym_new] = ACTIONS(2210), [sym_this] = ACTIONS(2210), [sym_nullptr] = ACTIONS(2210), [sym_raw_string_literal] = ACTIONS(2212), }, [746] = { [sym_identifier] = ACTIONS(2118), [aux_sym_preproc_include_token1] = ACTIONS(2118), [aux_sym_preproc_def_token1] = ACTIONS(2118), [aux_sym_preproc_if_token1] = ACTIONS(2118), [aux_sym_preproc_ifdef_token1] = ACTIONS(2118), [aux_sym_preproc_ifdef_token2] = ACTIONS(2118), [sym_preproc_directive] = ACTIONS(2118), [anon_sym_LPAREN2] = ACTIONS(2120), [anon_sym_BANG] = ACTIONS(2120), [anon_sym_TILDE] = ACTIONS(2120), [anon_sym_DASH] = ACTIONS(2118), [anon_sym_PLUS] = ACTIONS(2118), [anon_sym_STAR] = ACTIONS(2120), [anon_sym_AMP_AMP] = ACTIONS(2120), [anon_sym_AMP] = ACTIONS(2118), [anon_sym_SEMI] = ACTIONS(2120), [anon_sym_typedef] = ACTIONS(2118), [anon_sym_extern] = ACTIONS(2118), [anon_sym___attribute__] = ACTIONS(2118), [anon_sym_COLON_COLON] = ACTIONS(2120), [anon_sym_LBRACK_LBRACK] = ACTIONS(2120), [anon_sym___declspec] = ACTIONS(2118), [anon_sym___based] = ACTIONS(2118), [anon_sym___cdecl] = ACTIONS(2118), [anon_sym___clrcall] = ACTIONS(2118), [anon_sym___stdcall] = ACTIONS(2118), [anon_sym___fastcall] = ACTIONS(2118), [anon_sym___thiscall] = ACTIONS(2118), [anon_sym___vectorcall] = ACTIONS(2118), [anon_sym_LBRACE] = ACTIONS(2120), [anon_sym_RBRACE] = ACTIONS(2120), [anon_sym_LBRACK] = ACTIONS(2118), [anon_sym_static] = ACTIONS(2118), [anon_sym_register] = ACTIONS(2118), [anon_sym_inline] = ACTIONS(2118), [anon_sym_thread_local] = ACTIONS(2118), [anon_sym_const] = ACTIONS(2118), [anon_sym_volatile] = ACTIONS(2118), [anon_sym_restrict] = ACTIONS(2118), [anon_sym__Atomic] = ACTIONS(2118), [anon_sym_mutable] = ACTIONS(2118), [anon_sym_constexpr] = ACTIONS(2118), [anon_sym_signed] = ACTIONS(2118), [anon_sym_unsigned] = ACTIONS(2118), [anon_sym_long] = ACTIONS(2118), [anon_sym_short] = ACTIONS(2118), [sym_primitive_type] = ACTIONS(2118), [anon_sym_enum] = ACTIONS(2118), [anon_sym_class] = ACTIONS(2118), [anon_sym_struct] = ACTIONS(2118), [anon_sym_union] = ACTIONS(2118), [anon_sym_if] = ACTIONS(2118), [anon_sym_switch] = ACTIONS(2118), [anon_sym_case] = ACTIONS(2118), [anon_sym_default] = ACTIONS(2118), [anon_sym_while] = ACTIONS(2118), [anon_sym_do] = ACTIONS(2118), [anon_sym_for] = ACTIONS(2118), [anon_sym_return] = ACTIONS(2118), [anon_sym_break] = ACTIONS(2118), [anon_sym_continue] = ACTIONS(2118), [anon_sym_goto] = ACTIONS(2118), [anon_sym_DASH_DASH] = ACTIONS(2120), [anon_sym_PLUS_PLUS] = ACTIONS(2120), [anon_sym_sizeof] = ACTIONS(2118), [sym_number_literal] = ACTIONS(2120), [anon_sym_L_SQUOTE] = ACTIONS(2120), [anon_sym_u_SQUOTE] = ACTIONS(2120), [anon_sym_U_SQUOTE] = ACTIONS(2120), [anon_sym_u8_SQUOTE] = ACTIONS(2120), [anon_sym_SQUOTE] = ACTIONS(2120), [anon_sym_L_DQUOTE] = ACTIONS(2120), [anon_sym_u_DQUOTE] = ACTIONS(2120), [anon_sym_U_DQUOTE] = ACTIONS(2120), [anon_sym_u8_DQUOTE] = ACTIONS(2120), [anon_sym_DQUOTE] = ACTIONS(2120), [sym_true] = ACTIONS(2118), [sym_false] = ACTIONS(2118), [sym_null] = ACTIONS(2118), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2118), [anon_sym_virtual] = ACTIONS(2118), [anon_sym_explicit] = ACTIONS(2118), [sym_auto] = ACTIONS(2118), [anon_sym_typename] = ACTIONS(2118), [anon_sym_template] = ACTIONS(2118), [anon_sym_operator] = ACTIONS(2118), [anon_sym_delete] = ACTIONS(2118), [anon_sym_throw] = ACTIONS(2118), [anon_sym_namespace] = ACTIONS(2118), [anon_sym_using] = ACTIONS(2118), [anon_sym_static_assert] = ACTIONS(2118), [anon_sym_co_return] = ACTIONS(2118), [anon_sym_co_yield] = ACTIONS(2118), [anon_sym_try] = ACTIONS(2118), [anon_sym_co_await] = ACTIONS(2118), [anon_sym_new] = ACTIONS(2118), [sym_this] = ACTIONS(2118), [sym_nullptr] = ACTIONS(2118), [sym_raw_string_literal] = ACTIONS(2120), }, [747] = { [sym_identifier] = ACTIONS(2202), [aux_sym_preproc_include_token1] = ACTIONS(2202), [aux_sym_preproc_def_token1] = ACTIONS(2202), [aux_sym_preproc_if_token1] = ACTIONS(2202), [aux_sym_preproc_if_token2] = ACTIONS(2202), [aux_sym_preproc_ifdef_token1] = ACTIONS(2202), [aux_sym_preproc_ifdef_token2] = ACTIONS(2202), [sym_preproc_directive] = ACTIONS(2202), [anon_sym_LPAREN2] = ACTIONS(2204), [anon_sym_BANG] = ACTIONS(2204), [anon_sym_TILDE] = ACTIONS(2204), [anon_sym_DASH] = ACTIONS(2202), [anon_sym_PLUS] = ACTIONS(2202), [anon_sym_STAR] = ACTIONS(2204), [anon_sym_AMP_AMP] = ACTIONS(2204), [anon_sym_AMP] = ACTIONS(2202), [anon_sym_SEMI] = ACTIONS(2204), [anon_sym_typedef] = ACTIONS(2202), [anon_sym_extern] = ACTIONS(2202), [anon_sym___attribute__] = ACTIONS(2202), [anon_sym_COLON_COLON] = ACTIONS(2204), [anon_sym_LBRACK_LBRACK] = ACTIONS(2204), [anon_sym___declspec] = ACTIONS(2202), [anon_sym___based] = ACTIONS(2202), [anon_sym___cdecl] = ACTIONS(2202), [anon_sym___clrcall] = ACTIONS(2202), [anon_sym___stdcall] = ACTIONS(2202), [anon_sym___fastcall] = ACTIONS(2202), [anon_sym___thiscall] = ACTIONS(2202), [anon_sym___vectorcall] = ACTIONS(2202), [anon_sym_LBRACE] = ACTIONS(2204), [anon_sym_LBRACK] = ACTIONS(2202), [anon_sym_static] = ACTIONS(2202), [anon_sym_register] = ACTIONS(2202), [anon_sym_inline] = ACTIONS(2202), [anon_sym_thread_local] = ACTIONS(2202), [anon_sym_const] = ACTIONS(2202), [anon_sym_volatile] = ACTIONS(2202), [anon_sym_restrict] = ACTIONS(2202), [anon_sym__Atomic] = ACTIONS(2202), [anon_sym_mutable] = ACTIONS(2202), [anon_sym_constexpr] = ACTIONS(2202), [anon_sym_signed] = ACTIONS(2202), [anon_sym_unsigned] = ACTIONS(2202), [anon_sym_long] = ACTIONS(2202), [anon_sym_short] = ACTIONS(2202), [sym_primitive_type] = ACTIONS(2202), [anon_sym_enum] = ACTIONS(2202), [anon_sym_class] = ACTIONS(2202), [anon_sym_struct] = ACTIONS(2202), [anon_sym_union] = ACTIONS(2202), [anon_sym_if] = ACTIONS(2202), [anon_sym_switch] = ACTIONS(2202), [anon_sym_case] = ACTIONS(2202), [anon_sym_default] = ACTIONS(2202), [anon_sym_while] = ACTIONS(2202), [anon_sym_do] = ACTIONS(2202), [anon_sym_for] = ACTIONS(2202), [anon_sym_return] = ACTIONS(2202), [anon_sym_break] = ACTIONS(2202), [anon_sym_continue] = ACTIONS(2202), [anon_sym_goto] = ACTIONS(2202), [anon_sym_DASH_DASH] = ACTIONS(2204), [anon_sym_PLUS_PLUS] = ACTIONS(2204), [anon_sym_sizeof] = ACTIONS(2202), [sym_number_literal] = ACTIONS(2204), [anon_sym_L_SQUOTE] = ACTIONS(2204), [anon_sym_u_SQUOTE] = ACTIONS(2204), [anon_sym_U_SQUOTE] = ACTIONS(2204), [anon_sym_u8_SQUOTE] = ACTIONS(2204), [anon_sym_SQUOTE] = ACTIONS(2204), [anon_sym_L_DQUOTE] = ACTIONS(2204), [anon_sym_u_DQUOTE] = ACTIONS(2204), [anon_sym_U_DQUOTE] = ACTIONS(2204), [anon_sym_u8_DQUOTE] = ACTIONS(2204), [anon_sym_DQUOTE] = ACTIONS(2204), [sym_true] = ACTIONS(2202), [sym_false] = ACTIONS(2202), [sym_null] = ACTIONS(2202), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2202), [anon_sym_virtual] = ACTIONS(2202), [anon_sym_explicit] = ACTIONS(2202), [sym_auto] = ACTIONS(2202), [anon_sym_typename] = ACTIONS(2202), [anon_sym_template] = ACTIONS(2202), [anon_sym_operator] = ACTIONS(2202), [anon_sym_delete] = ACTIONS(2202), [anon_sym_throw] = ACTIONS(2202), [anon_sym_namespace] = ACTIONS(2202), [anon_sym_using] = ACTIONS(2202), [anon_sym_static_assert] = ACTIONS(2202), [anon_sym_co_return] = ACTIONS(2202), [anon_sym_co_yield] = ACTIONS(2202), [anon_sym_try] = ACTIONS(2202), [anon_sym_co_await] = ACTIONS(2202), [anon_sym_new] = ACTIONS(2202), [sym_this] = ACTIONS(2202), [sym_nullptr] = ACTIONS(2202), [sym_raw_string_literal] = ACTIONS(2204), }, [748] = { [sym_identifier] = ACTIONS(2130), [aux_sym_preproc_include_token1] = ACTIONS(2130), [aux_sym_preproc_def_token1] = ACTIONS(2130), [aux_sym_preproc_if_token1] = ACTIONS(2130), [aux_sym_preproc_ifdef_token1] = ACTIONS(2130), [aux_sym_preproc_ifdef_token2] = ACTIONS(2130), [sym_preproc_directive] = ACTIONS(2130), [anon_sym_LPAREN2] = ACTIONS(2132), [anon_sym_BANG] = ACTIONS(2132), [anon_sym_TILDE] = ACTIONS(2132), [anon_sym_DASH] = ACTIONS(2130), [anon_sym_PLUS] = ACTIONS(2130), [anon_sym_STAR] = ACTIONS(2132), [anon_sym_AMP_AMP] = ACTIONS(2132), [anon_sym_AMP] = ACTIONS(2130), [anon_sym_SEMI] = ACTIONS(2132), [anon_sym_typedef] = ACTIONS(2130), [anon_sym_extern] = ACTIONS(2130), [anon_sym___attribute__] = ACTIONS(2130), [anon_sym_COLON_COLON] = ACTIONS(2132), [anon_sym_LBRACK_LBRACK] = ACTIONS(2132), [anon_sym___declspec] = ACTIONS(2130), [anon_sym___based] = ACTIONS(2130), [anon_sym___cdecl] = ACTIONS(2130), [anon_sym___clrcall] = ACTIONS(2130), [anon_sym___stdcall] = ACTIONS(2130), [anon_sym___fastcall] = ACTIONS(2130), [anon_sym___thiscall] = ACTIONS(2130), [anon_sym___vectorcall] = ACTIONS(2130), [anon_sym_LBRACE] = ACTIONS(2132), [anon_sym_RBRACE] = ACTIONS(2132), [anon_sym_LBRACK] = ACTIONS(2130), [anon_sym_static] = ACTIONS(2130), [anon_sym_register] = ACTIONS(2130), [anon_sym_inline] = ACTIONS(2130), [anon_sym_thread_local] = ACTIONS(2130), [anon_sym_const] = ACTIONS(2130), [anon_sym_volatile] = ACTIONS(2130), [anon_sym_restrict] = ACTIONS(2130), [anon_sym__Atomic] = ACTIONS(2130), [anon_sym_mutable] = ACTIONS(2130), [anon_sym_constexpr] = ACTIONS(2130), [anon_sym_signed] = ACTIONS(2130), [anon_sym_unsigned] = ACTIONS(2130), [anon_sym_long] = ACTIONS(2130), [anon_sym_short] = ACTIONS(2130), [sym_primitive_type] = ACTIONS(2130), [anon_sym_enum] = ACTIONS(2130), [anon_sym_class] = ACTIONS(2130), [anon_sym_struct] = ACTIONS(2130), [anon_sym_union] = ACTIONS(2130), [anon_sym_if] = ACTIONS(2130), [anon_sym_switch] = ACTIONS(2130), [anon_sym_case] = ACTIONS(2130), [anon_sym_default] = ACTIONS(2130), [anon_sym_while] = ACTIONS(2130), [anon_sym_do] = ACTIONS(2130), [anon_sym_for] = ACTIONS(2130), [anon_sym_return] = ACTIONS(2130), [anon_sym_break] = ACTIONS(2130), [anon_sym_continue] = ACTIONS(2130), [anon_sym_goto] = ACTIONS(2130), [anon_sym_DASH_DASH] = ACTIONS(2132), [anon_sym_PLUS_PLUS] = ACTIONS(2132), [anon_sym_sizeof] = ACTIONS(2130), [sym_number_literal] = ACTIONS(2132), [anon_sym_L_SQUOTE] = ACTIONS(2132), [anon_sym_u_SQUOTE] = ACTIONS(2132), [anon_sym_U_SQUOTE] = ACTIONS(2132), [anon_sym_u8_SQUOTE] = ACTIONS(2132), [anon_sym_SQUOTE] = ACTIONS(2132), [anon_sym_L_DQUOTE] = ACTIONS(2132), [anon_sym_u_DQUOTE] = ACTIONS(2132), [anon_sym_U_DQUOTE] = ACTIONS(2132), [anon_sym_u8_DQUOTE] = ACTIONS(2132), [anon_sym_DQUOTE] = ACTIONS(2132), [sym_true] = ACTIONS(2130), [sym_false] = ACTIONS(2130), [sym_null] = ACTIONS(2130), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2130), [anon_sym_virtual] = ACTIONS(2130), [anon_sym_explicit] = ACTIONS(2130), [sym_auto] = ACTIONS(2130), [anon_sym_typename] = ACTIONS(2130), [anon_sym_template] = ACTIONS(2130), [anon_sym_operator] = ACTIONS(2130), [anon_sym_delete] = ACTIONS(2130), [anon_sym_throw] = ACTIONS(2130), [anon_sym_namespace] = ACTIONS(2130), [anon_sym_using] = ACTIONS(2130), [anon_sym_static_assert] = ACTIONS(2130), [anon_sym_co_return] = ACTIONS(2130), [anon_sym_co_yield] = ACTIONS(2130), [anon_sym_try] = ACTIONS(2130), [anon_sym_co_await] = ACTIONS(2130), [anon_sym_new] = ACTIONS(2130), [sym_this] = ACTIONS(2130), [sym_nullptr] = ACTIONS(2130), [sym_raw_string_literal] = ACTIONS(2132), }, [749] = { [sym_identifier] = ACTIONS(2178), [aux_sym_preproc_include_token1] = ACTIONS(2178), [aux_sym_preproc_def_token1] = ACTIONS(2178), [aux_sym_preproc_if_token1] = ACTIONS(2178), [aux_sym_preproc_ifdef_token1] = ACTIONS(2178), [aux_sym_preproc_ifdef_token2] = ACTIONS(2178), [sym_preproc_directive] = ACTIONS(2178), [anon_sym_LPAREN2] = ACTIONS(2180), [anon_sym_BANG] = ACTIONS(2180), [anon_sym_TILDE] = ACTIONS(2180), [anon_sym_DASH] = ACTIONS(2178), [anon_sym_PLUS] = ACTIONS(2178), [anon_sym_STAR] = ACTIONS(2180), [anon_sym_AMP_AMP] = ACTIONS(2180), [anon_sym_AMP] = ACTIONS(2178), [anon_sym_SEMI] = ACTIONS(2180), [anon_sym_typedef] = ACTIONS(2178), [anon_sym_extern] = ACTIONS(2178), [anon_sym___attribute__] = ACTIONS(2178), [anon_sym_COLON_COLON] = ACTIONS(2180), [anon_sym_LBRACK_LBRACK] = ACTIONS(2180), [anon_sym___declspec] = ACTIONS(2178), [anon_sym___based] = ACTIONS(2178), [anon_sym___cdecl] = ACTIONS(2178), [anon_sym___clrcall] = ACTIONS(2178), [anon_sym___stdcall] = ACTIONS(2178), [anon_sym___fastcall] = ACTIONS(2178), [anon_sym___thiscall] = ACTIONS(2178), [anon_sym___vectorcall] = ACTIONS(2178), [anon_sym_LBRACE] = ACTIONS(2180), [anon_sym_RBRACE] = ACTIONS(2180), [anon_sym_LBRACK] = ACTIONS(2178), [anon_sym_static] = ACTIONS(2178), [anon_sym_register] = ACTIONS(2178), [anon_sym_inline] = ACTIONS(2178), [anon_sym_thread_local] = ACTIONS(2178), [anon_sym_const] = ACTIONS(2178), [anon_sym_volatile] = ACTIONS(2178), [anon_sym_restrict] = ACTIONS(2178), [anon_sym__Atomic] = ACTIONS(2178), [anon_sym_mutable] = ACTIONS(2178), [anon_sym_constexpr] = ACTIONS(2178), [anon_sym_signed] = ACTIONS(2178), [anon_sym_unsigned] = ACTIONS(2178), [anon_sym_long] = ACTIONS(2178), [anon_sym_short] = ACTIONS(2178), [sym_primitive_type] = ACTIONS(2178), [anon_sym_enum] = ACTIONS(2178), [anon_sym_class] = ACTIONS(2178), [anon_sym_struct] = ACTIONS(2178), [anon_sym_union] = ACTIONS(2178), [anon_sym_if] = ACTIONS(2178), [anon_sym_switch] = ACTIONS(2178), [anon_sym_case] = ACTIONS(2178), [anon_sym_default] = ACTIONS(2178), [anon_sym_while] = ACTIONS(2178), [anon_sym_do] = ACTIONS(2178), [anon_sym_for] = ACTIONS(2178), [anon_sym_return] = ACTIONS(2178), [anon_sym_break] = ACTIONS(2178), [anon_sym_continue] = ACTIONS(2178), [anon_sym_goto] = ACTIONS(2178), [anon_sym_DASH_DASH] = ACTIONS(2180), [anon_sym_PLUS_PLUS] = ACTIONS(2180), [anon_sym_sizeof] = ACTIONS(2178), [sym_number_literal] = ACTIONS(2180), [anon_sym_L_SQUOTE] = ACTIONS(2180), [anon_sym_u_SQUOTE] = ACTIONS(2180), [anon_sym_U_SQUOTE] = ACTIONS(2180), [anon_sym_u8_SQUOTE] = ACTIONS(2180), [anon_sym_SQUOTE] = ACTIONS(2180), [anon_sym_L_DQUOTE] = ACTIONS(2180), [anon_sym_u_DQUOTE] = ACTIONS(2180), [anon_sym_U_DQUOTE] = ACTIONS(2180), [anon_sym_u8_DQUOTE] = ACTIONS(2180), [anon_sym_DQUOTE] = ACTIONS(2180), [sym_true] = ACTIONS(2178), [sym_false] = ACTIONS(2178), [sym_null] = ACTIONS(2178), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2178), [anon_sym_virtual] = ACTIONS(2178), [anon_sym_explicit] = ACTIONS(2178), [sym_auto] = ACTIONS(2178), [anon_sym_typename] = ACTIONS(2178), [anon_sym_template] = ACTIONS(2178), [anon_sym_operator] = ACTIONS(2178), [anon_sym_delete] = ACTIONS(2178), [anon_sym_throw] = ACTIONS(2178), [anon_sym_namespace] = ACTIONS(2178), [anon_sym_using] = ACTIONS(2178), [anon_sym_static_assert] = ACTIONS(2178), [anon_sym_co_return] = ACTIONS(2178), [anon_sym_co_yield] = ACTIONS(2178), [anon_sym_try] = ACTIONS(2178), [anon_sym_co_await] = ACTIONS(2178), [anon_sym_new] = ACTIONS(2178), [sym_this] = ACTIONS(2178), [sym_nullptr] = ACTIONS(2178), [sym_raw_string_literal] = ACTIONS(2180), }, [750] = { [sym_identifier] = ACTIONS(2146), [aux_sym_preproc_include_token1] = ACTIONS(2146), [aux_sym_preproc_def_token1] = ACTIONS(2146), [aux_sym_preproc_if_token1] = ACTIONS(2146), [aux_sym_preproc_ifdef_token1] = ACTIONS(2146), [aux_sym_preproc_ifdef_token2] = ACTIONS(2146), [sym_preproc_directive] = ACTIONS(2146), [anon_sym_LPAREN2] = ACTIONS(2148), [anon_sym_BANG] = ACTIONS(2148), [anon_sym_TILDE] = ACTIONS(2148), [anon_sym_DASH] = ACTIONS(2146), [anon_sym_PLUS] = ACTIONS(2146), [anon_sym_STAR] = ACTIONS(2148), [anon_sym_AMP_AMP] = ACTIONS(2148), [anon_sym_AMP] = ACTIONS(2146), [anon_sym_SEMI] = ACTIONS(2148), [anon_sym_typedef] = ACTIONS(2146), [anon_sym_extern] = ACTIONS(2146), [anon_sym___attribute__] = ACTIONS(2146), [anon_sym_COLON_COLON] = ACTIONS(2148), [anon_sym_LBRACK_LBRACK] = ACTIONS(2148), [anon_sym___declspec] = ACTIONS(2146), [anon_sym___based] = ACTIONS(2146), [anon_sym___cdecl] = ACTIONS(2146), [anon_sym___clrcall] = ACTIONS(2146), [anon_sym___stdcall] = ACTIONS(2146), [anon_sym___fastcall] = ACTIONS(2146), [anon_sym___thiscall] = ACTIONS(2146), [anon_sym___vectorcall] = ACTIONS(2146), [anon_sym_LBRACE] = ACTIONS(2148), [anon_sym_RBRACE] = ACTIONS(2148), [anon_sym_LBRACK] = ACTIONS(2146), [anon_sym_static] = ACTIONS(2146), [anon_sym_register] = ACTIONS(2146), [anon_sym_inline] = ACTIONS(2146), [anon_sym_thread_local] = ACTIONS(2146), [anon_sym_const] = ACTIONS(2146), [anon_sym_volatile] = ACTIONS(2146), [anon_sym_restrict] = ACTIONS(2146), [anon_sym__Atomic] = ACTIONS(2146), [anon_sym_mutable] = ACTIONS(2146), [anon_sym_constexpr] = ACTIONS(2146), [anon_sym_signed] = ACTIONS(2146), [anon_sym_unsigned] = ACTIONS(2146), [anon_sym_long] = ACTIONS(2146), [anon_sym_short] = ACTIONS(2146), [sym_primitive_type] = ACTIONS(2146), [anon_sym_enum] = ACTIONS(2146), [anon_sym_class] = ACTIONS(2146), [anon_sym_struct] = ACTIONS(2146), [anon_sym_union] = ACTIONS(2146), [anon_sym_if] = ACTIONS(2146), [anon_sym_switch] = ACTIONS(2146), [anon_sym_case] = ACTIONS(2146), [anon_sym_default] = ACTIONS(2146), [anon_sym_while] = ACTIONS(2146), [anon_sym_do] = ACTIONS(2146), [anon_sym_for] = ACTIONS(2146), [anon_sym_return] = ACTIONS(2146), [anon_sym_break] = ACTIONS(2146), [anon_sym_continue] = ACTIONS(2146), [anon_sym_goto] = ACTIONS(2146), [anon_sym_DASH_DASH] = ACTIONS(2148), [anon_sym_PLUS_PLUS] = ACTIONS(2148), [anon_sym_sizeof] = ACTIONS(2146), [sym_number_literal] = ACTIONS(2148), [anon_sym_L_SQUOTE] = ACTIONS(2148), [anon_sym_u_SQUOTE] = ACTIONS(2148), [anon_sym_U_SQUOTE] = ACTIONS(2148), [anon_sym_u8_SQUOTE] = ACTIONS(2148), [anon_sym_SQUOTE] = ACTIONS(2148), [anon_sym_L_DQUOTE] = ACTIONS(2148), [anon_sym_u_DQUOTE] = ACTIONS(2148), [anon_sym_U_DQUOTE] = ACTIONS(2148), [anon_sym_u8_DQUOTE] = ACTIONS(2148), [anon_sym_DQUOTE] = ACTIONS(2148), [sym_true] = ACTIONS(2146), [sym_false] = ACTIONS(2146), [sym_null] = ACTIONS(2146), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2146), [anon_sym_virtual] = ACTIONS(2146), [anon_sym_explicit] = ACTIONS(2146), [sym_auto] = ACTIONS(2146), [anon_sym_typename] = ACTIONS(2146), [anon_sym_template] = ACTIONS(2146), [anon_sym_operator] = ACTIONS(2146), [anon_sym_delete] = ACTIONS(2146), [anon_sym_throw] = ACTIONS(2146), [anon_sym_namespace] = ACTIONS(2146), [anon_sym_using] = ACTIONS(2146), [anon_sym_static_assert] = ACTIONS(2146), [anon_sym_co_return] = ACTIONS(2146), [anon_sym_co_yield] = ACTIONS(2146), [anon_sym_try] = ACTIONS(2146), [anon_sym_co_await] = ACTIONS(2146), [anon_sym_new] = ACTIONS(2146), [sym_this] = ACTIONS(2146), [sym_nullptr] = ACTIONS(2146), [sym_raw_string_literal] = ACTIONS(2148), }, [751] = { [sym_identifier] = ACTIONS(2206), [aux_sym_preproc_include_token1] = ACTIONS(2206), [aux_sym_preproc_def_token1] = ACTIONS(2206), [aux_sym_preproc_if_token1] = ACTIONS(2206), [aux_sym_preproc_ifdef_token1] = ACTIONS(2206), [aux_sym_preproc_ifdef_token2] = ACTIONS(2206), [sym_preproc_directive] = ACTIONS(2206), [anon_sym_LPAREN2] = ACTIONS(2208), [anon_sym_BANG] = ACTIONS(2208), [anon_sym_TILDE] = ACTIONS(2208), [anon_sym_DASH] = ACTIONS(2206), [anon_sym_PLUS] = ACTIONS(2206), [anon_sym_STAR] = ACTIONS(2208), [anon_sym_AMP_AMP] = ACTIONS(2208), [anon_sym_AMP] = ACTIONS(2206), [anon_sym_SEMI] = ACTIONS(2208), [anon_sym_typedef] = ACTIONS(2206), [anon_sym_extern] = ACTIONS(2206), [anon_sym___attribute__] = ACTIONS(2206), [anon_sym_COLON_COLON] = ACTIONS(2208), [anon_sym_LBRACK_LBRACK] = ACTIONS(2208), [anon_sym___declspec] = ACTIONS(2206), [anon_sym___based] = ACTIONS(2206), [anon_sym___cdecl] = ACTIONS(2206), [anon_sym___clrcall] = ACTIONS(2206), [anon_sym___stdcall] = ACTIONS(2206), [anon_sym___fastcall] = ACTIONS(2206), [anon_sym___thiscall] = ACTIONS(2206), [anon_sym___vectorcall] = ACTIONS(2206), [anon_sym_LBRACE] = ACTIONS(2208), [anon_sym_RBRACE] = ACTIONS(2208), [anon_sym_LBRACK] = ACTIONS(2206), [anon_sym_static] = ACTIONS(2206), [anon_sym_register] = ACTIONS(2206), [anon_sym_inline] = ACTIONS(2206), [anon_sym_thread_local] = ACTIONS(2206), [anon_sym_const] = ACTIONS(2206), [anon_sym_volatile] = ACTIONS(2206), [anon_sym_restrict] = ACTIONS(2206), [anon_sym__Atomic] = ACTIONS(2206), [anon_sym_mutable] = ACTIONS(2206), [anon_sym_constexpr] = ACTIONS(2206), [anon_sym_signed] = ACTIONS(2206), [anon_sym_unsigned] = ACTIONS(2206), [anon_sym_long] = ACTIONS(2206), [anon_sym_short] = ACTIONS(2206), [sym_primitive_type] = ACTIONS(2206), [anon_sym_enum] = ACTIONS(2206), [anon_sym_class] = ACTIONS(2206), [anon_sym_struct] = ACTIONS(2206), [anon_sym_union] = ACTIONS(2206), [anon_sym_if] = ACTIONS(2206), [anon_sym_switch] = ACTIONS(2206), [anon_sym_case] = ACTIONS(2206), [anon_sym_default] = ACTIONS(2206), [anon_sym_while] = ACTIONS(2206), [anon_sym_do] = ACTIONS(2206), [anon_sym_for] = ACTIONS(2206), [anon_sym_return] = ACTIONS(2206), [anon_sym_break] = ACTIONS(2206), [anon_sym_continue] = ACTIONS(2206), [anon_sym_goto] = ACTIONS(2206), [anon_sym_DASH_DASH] = ACTIONS(2208), [anon_sym_PLUS_PLUS] = ACTIONS(2208), [anon_sym_sizeof] = ACTIONS(2206), [sym_number_literal] = ACTIONS(2208), [anon_sym_L_SQUOTE] = ACTIONS(2208), [anon_sym_u_SQUOTE] = ACTIONS(2208), [anon_sym_U_SQUOTE] = ACTIONS(2208), [anon_sym_u8_SQUOTE] = ACTIONS(2208), [anon_sym_SQUOTE] = ACTIONS(2208), [anon_sym_L_DQUOTE] = ACTIONS(2208), [anon_sym_u_DQUOTE] = ACTIONS(2208), [anon_sym_U_DQUOTE] = ACTIONS(2208), [anon_sym_u8_DQUOTE] = ACTIONS(2208), [anon_sym_DQUOTE] = ACTIONS(2208), [sym_true] = ACTIONS(2206), [sym_false] = ACTIONS(2206), [sym_null] = ACTIONS(2206), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2206), [anon_sym_virtual] = ACTIONS(2206), [anon_sym_explicit] = ACTIONS(2206), [sym_auto] = ACTIONS(2206), [anon_sym_typename] = ACTIONS(2206), [anon_sym_template] = ACTIONS(2206), [anon_sym_operator] = ACTIONS(2206), [anon_sym_delete] = ACTIONS(2206), [anon_sym_throw] = ACTIONS(2206), [anon_sym_namespace] = ACTIONS(2206), [anon_sym_using] = ACTIONS(2206), [anon_sym_static_assert] = ACTIONS(2206), [anon_sym_co_return] = ACTIONS(2206), [anon_sym_co_yield] = ACTIONS(2206), [anon_sym_try] = ACTIONS(2206), [anon_sym_co_await] = ACTIONS(2206), [anon_sym_new] = ACTIONS(2206), [sym_this] = ACTIONS(2206), [sym_nullptr] = ACTIONS(2206), [sym_raw_string_literal] = ACTIONS(2208), }, [752] = { [ts_builtin_sym_end] = ACTIONS(2152), [sym_identifier] = ACTIONS(2150), [aux_sym_preproc_include_token1] = ACTIONS(2150), [aux_sym_preproc_def_token1] = ACTIONS(2150), [aux_sym_preproc_if_token1] = ACTIONS(2150), [aux_sym_preproc_ifdef_token1] = ACTIONS(2150), [aux_sym_preproc_ifdef_token2] = ACTIONS(2150), [sym_preproc_directive] = ACTIONS(2150), [anon_sym_LPAREN2] = ACTIONS(2152), [anon_sym_BANG] = ACTIONS(2152), [anon_sym_TILDE] = ACTIONS(2152), [anon_sym_DASH] = ACTIONS(2150), [anon_sym_PLUS] = ACTIONS(2150), [anon_sym_STAR] = ACTIONS(2152), [anon_sym_AMP_AMP] = ACTIONS(2152), [anon_sym_AMP] = ACTIONS(2150), [anon_sym_SEMI] = ACTIONS(2152), [anon_sym_typedef] = ACTIONS(2150), [anon_sym_extern] = ACTIONS(2150), [anon_sym___attribute__] = ACTIONS(2150), [anon_sym_COLON_COLON] = ACTIONS(2152), [anon_sym_LBRACK_LBRACK] = ACTIONS(2152), [anon_sym___declspec] = ACTIONS(2150), [anon_sym___based] = ACTIONS(2150), [anon_sym___cdecl] = ACTIONS(2150), [anon_sym___clrcall] = ACTIONS(2150), [anon_sym___stdcall] = ACTIONS(2150), [anon_sym___fastcall] = ACTIONS(2150), [anon_sym___thiscall] = ACTIONS(2150), [anon_sym___vectorcall] = ACTIONS(2150), [anon_sym_LBRACE] = ACTIONS(2152), [anon_sym_LBRACK] = ACTIONS(2150), [anon_sym_static] = ACTIONS(2150), [anon_sym_register] = ACTIONS(2150), [anon_sym_inline] = ACTIONS(2150), [anon_sym_thread_local] = ACTIONS(2150), [anon_sym_const] = ACTIONS(2150), [anon_sym_volatile] = ACTIONS(2150), [anon_sym_restrict] = ACTIONS(2150), [anon_sym__Atomic] = ACTIONS(2150), [anon_sym_mutable] = ACTIONS(2150), [anon_sym_constexpr] = ACTIONS(2150), [anon_sym_signed] = ACTIONS(2150), [anon_sym_unsigned] = ACTIONS(2150), [anon_sym_long] = ACTIONS(2150), [anon_sym_short] = ACTIONS(2150), [sym_primitive_type] = ACTIONS(2150), [anon_sym_enum] = ACTIONS(2150), [anon_sym_class] = ACTIONS(2150), [anon_sym_struct] = ACTIONS(2150), [anon_sym_union] = ACTIONS(2150), [anon_sym_if] = ACTIONS(2150), [anon_sym_switch] = ACTIONS(2150), [anon_sym_case] = ACTIONS(2150), [anon_sym_default] = ACTIONS(2150), [anon_sym_while] = ACTIONS(2150), [anon_sym_do] = ACTIONS(2150), [anon_sym_for] = ACTIONS(2150), [anon_sym_return] = ACTIONS(2150), [anon_sym_break] = ACTIONS(2150), [anon_sym_continue] = ACTIONS(2150), [anon_sym_goto] = ACTIONS(2150), [anon_sym_DASH_DASH] = ACTIONS(2152), [anon_sym_PLUS_PLUS] = ACTIONS(2152), [anon_sym_sizeof] = ACTIONS(2150), [sym_number_literal] = ACTIONS(2152), [anon_sym_L_SQUOTE] = ACTIONS(2152), [anon_sym_u_SQUOTE] = ACTIONS(2152), [anon_sym_U_SQUOTE] = ACTIONS(2152), [anon_sym_u8_SQUOTE] = ACTIONS(2152), [anon_sym_SQUOTE] = ACTIONS(2152), [anon_sym_L_DQUOTE] = ACTIONS(2152), [anon_sym_u_DQUOTE] = ACTIONS(2152), [anon_sym_U_DQUOTE] = ACTIONS(2152), [anon_sym_u8_DQUOTE] = ACTIONS(2152), [anon_sym_DQUOTE] = ACTIONS(2152), [sym_true] = ACTIONS(2150), [sym_false] = ACTIONS(2150), [sym_null] = ACTIONS(2150), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2150), [anon_sym_virtual] = ACTIONS(2150), [anon_sym_explicit] = ACTIONS(2150), [sym_auto] = ACTIONS(2150), [anon_sym_typename] = ACTIONS(2150), [anon_sym_template] = ACTIONS(2150), [anon_sym_operator] = ACTIONS(2150), [anon_sym_delete] = ACTIONS(2150), [anon_sym_throw] = ACTIONS(2150), [anon_sym_namespace] = ACTIONS(2150), [anon_sym_using] = ACTIONS(2150), [anon_sym_static_assert] = ACTIONS(2150), [anon_sym_co_return] = ACTIONS(2150), [anon_sym_co_yield] = ACTIONS(2150), [anon_sym_try] = ACTIONS(2150), [anon_sym_co_await] = ACTIONS(2150), [anon_sym_new] = ACTIONS(2150), [sym_this] = ACTIONS(2150), [sym_nullptr] = ACTIONS(2150), [sym_raw_string_literal] = ACTIONS(2152), }, [753] = { [ts_builtin_sym_end] = ACTIONS(2156), [sym_identifier] = ACTIONS(2154), [aux_sym_preproc_include_token1] = ACTIONS(2154), [aux_sym_preproc_def_token1] = ACTIONS(2154), [aux_sym_preproc_if_token1] = ACTIONS(2154), [aux_sym_preproc_ifdef_token1] = ACTIONS(2154), [aux_sym_preproc_ifdef_token2] = ACTIONS(2154), [sym_preproc_directive] = ACTIONS(2154), [anon_sym_LPAREN2] = ACTIONS(2156), [anon_sym_BANG] = ACTIONS(2156), [anon_sym_TILDE] = ACTIONS(2156), [anon_sym_DASH] = ACTIONS(2154), [anon_sym_PLUS] = ACTIONS(2154), [anon_sym_STAR] = ACTIONS(2156), [anon_sym_AMP_AMP] = ACTIONS(2156), [anon_sym_AMP] = ACTIONS(2154), [anon_sym_SEMI] = ACTIONS(2156), [anon_sym_typedef] = ACTIONS(2154), [anon_sym_extern] = ACTIONS(2154), [anon_sym___attribute__] = ACTIONS(2154), [anon_sym_COLON_COLON] = ACTIONS(2156), [anon_sym_LBRACK_LBRACK] = ACTIONS(2156), [anon_sym___declspec] = ACTIONS(2154), [anon_sym___based] = ACTIONS(2154), [anon_sym___cdecl] = ACTIONS(2154), [anon_sym___clrcall] = ACTIONS(2154), [anon_sym___stdcall] = ACTIONS(2154), [anon_sym___fastcall] = ACTIONS(2154), [anon_sym___thiscall] = ACTIONS(2154), [anon_sym___vectorcall] = ACTIONS(2154), [anon_sym_LBRACE] = ACTIONS(2156), [anon_sym_LBRACK] = ACTIONS(2154), [anon_sym_static] = ACTIONS(2154), [anon_sym_register] = ACTIONS(2154), [anon_sym_inline] = ACTIONS(2154), [anon_sym_thread_local] = ACTIONS(2154), [anon_sym_const] = ACTIONS(2154), [anon_sym_volatile] = ACTIONS(2154), [anon_sym_restrict] = ACTIONS(2154), [anon_sym__Atomic] = ACTIONS(2154), [anon_sym_mutable] = ACTIONS(2154), [anon_sym_constexpr] = ACTIONS(2154), [anon_sym_signed] = ACTIONS(2154), [anon_sym_unsigned] = ACTIONS(2154), [anon_sym_long] = ACTIONS(2154), [anon_sym_short] = ACTIONS(2154), [sym_primitive_type] = ACTIONS(2154), [anon_sym_enum] = ACTIONS(2154), [anon_sym_class] = ACTIONS(2154), [anon_sym_struct] = ACTIONS(2154), [anon_sym_union] = ACTIONS(2154), [anon_sym_if] = ACTIONS(2154), [anon_sym_switch] = ACTIONS(2154), [anon_sym_case] = ACTIONS(2154), [anon_sym_default] = ACTIONS(2154), [anon_sym_while] = ACTIONS(2154), [anon_sym_do] = ACTIONS(2154), [anon_sym_for] = ACTIONS(2154), [anon_sym_return] = ACTIONS(2154), [anon_sym_break] = ACTIONS(2154), [anon_sym_continue] = ACTIONS(2154), [anon_sym_goto] = ACTIONS(2154), [anon_sym_DASH_DASH] = ACTIONS(2156), [anon_sym_PLUS_PLUS] = ACTIONS(2156), [anon_sym_sizeof] = ACTIONS(2154), [sym_number_literal] = ACTIONS(2156), [anon_sym_L_SQUOTE] = ACTIONS(2156), [anon_sym_u_SQUOTE] = ACTIONS(2156), [anon_sym_U_SQUOTE] = ACTIONS(2156), [anon_sym_u8_SQUOTE] = ACTIONS(2156), [anon_sym_SQUOTE] = ACTIONS(2156), [anon_sym_L_DQUOTE] = ACTIONS(2156), [anon_sym_u_DQUOTE] = ACTIONS(2156), [anon_sym_U_DQUOTE] = ACTIONS(2156), [anon_sym_u8_DQUOTE] = ACTIONS(2156), [anon_sym_DQUOTE] = ACTIONS(2156), [sym_true] = ACTIONS(2154), [sym_false] = ACTIONS(2154), [sym_null] = ACTIONS(2154), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2154), [anon_sym_virtual] = ACTIONS(2154), [anon_sym_explicit] = ACTIONS(2154), [sym_auto] = ACTIONS(2154), [anon_sym_typename] = ACTIONS(2154), [anon_sym_template] = ACTIONS(2154), [anon_sym_operator] = ACTIONS(2154), [anon_sym_delete] = ACTIONS(2154), [anon_sym_throw] = ACTIONS(2154), [anon_sym_namespace] = ACTIONS(2154), [anon_sym_using] = ACTIONS(2154), [anon_sym_static_assert] = ACTIONS(2154), [anon_sym_co_return] = ACTIONS(2154), [anon_sym_co_yield] = ACTIONS(2154), [anon_sym_try] = ACTIONS(2154), [anon_sym_co_await] = ACTIONS(2154), [anon_sym_new] = ACTIONS(2154), [sym_this] = ACTIONS(2154), [sym_nullptr] = ACTIONS(2154), [sym_raw_string_literal] = ACTIONS(2156), }, [754] = { [sym_identifier] = ACTIONS(2214), [aux_sym_preproc_include_token1] = ACTIONS(2214), [aux_sym_preproc_def_token1] = ACTIONS(2214), [aux_sym_preproc_if_token1] = ACTIONS(2214), [aux_sym_preproc_if_token2] = ACTIONS(2214), [aux_sym_preproc_ifdef_token1] = ACTIONS(2214), [aux_sym_preproc_ifdef_token2] = ACTIONS(2214), [sym_preproc_directive] = ACTIONS(2214), [anon_sym_LPAREN2] = ACTIONS(2216), [anon_sym_BANG] = ACTIONS(2216), [anon_sym_TILDE] = ACTIONS(2216), [anon_sym_DASH] = ACTIONS(2214), [anon_sym_PLUS] = ACTIONS(2214), [anon_sym_STAR] = ACTIONS(2216), [anon_sym_AMP_AMP] = ACTIONS(2216), [anon_sym_AMP] = ACTIONS(2214), [anon_sym_SEMI] = ACTIONS(2216), [anon_sym_typedef] = ACTIONS(2214), [anon_sym_extern] = ACTIONS(2214), [anon_sym___attribute__] = ACTIONS(2214), [anon_sym_COLON_COLON] = ACTIONS(2216), [anon_sym_LBRACK_LBRACK] = ACTIONS(2216), [anon_sym___declspec] = ACTIONS(2214), [anon_sym___based] = ACTIONS(2214), [anon_sym___cdecl] = ACTIONS(2214), [anon_sym___clrcall] = ACTIONS(2214), [anon_sym___stdcall] = ACTIONS(2214), [anon_sym___fastcall] = ACTIONS(2214), [anon_sym___thiscall] = ACTIONS(2214), [anon_sym___vectorcall] = ACTIONS(2214), [anon_sym_LBRACE] = ACTIONS(2216), [anon_sym_LBRACK] = ACTIONS(2214), [anon_sym_static] = ACTIONS(2214), [anon_sym_register] = ACTIONS(2214), [anon_sym_inline] = ACTIONS(2214), [anon_sym_thread_local] = ACTIONS(2214), [anon_sym_const] = ACTIONS(2214), [anon_sym_volatile] = ACTIONS(2214), [anon_sym_restrict] = ACTIONS(2214), [anon_sym__Atomic] = ACTIONS(2214), [anon_sym_mutable] = ACTIONS(2214), [anon_sym_constexpr] = ACTIONS(2214), [anon_sym_signed] = ACTIONS(2214), [anon_sym_unsigned] = ACTIONS(2214), [anon_sym_long] = ACTIONS(2214), [anon_sym_short] = ACTIONS(2214), [sym_primitive_type] = ACTIONS(2214), [anon_sym_enum] = ACTIONS(2214), [anon_sym_class] = ACTIONS(2214), [anon_sym_struct] = ACTIONS(2214), [anon_sym_union] = ACTIONS(2214), [anon_sym_if] = ACTIONS(2214), [anon_sym_switch] = ACTIONS(2214), [anon_sym_case] = ACTIONS(2214), [anon_sym_default] = ACTIONS(2214), [anon_sym_while] = ACTIONS(2214), [anon_sym_do] = ACTIONS(2214), [anon_sym_for] = ACTIONS(2214), [anon_sym_return] = ACTIONS(2214), [anon_sym_break] = ACTIONS(2214), [anon_sym_continue] = ACTIONS(2214), [anon_sym_goto] = ACTIONS(2214), [anon_sym_DASH_DASH] = ACTIONS(2216), [anon_sym_PLUS_PLUS] = ACTIONS(2216), [anon_sym_sizeof] = ACTIONS(2214), [sym_number_literal] = ACTIONS(2216), [anon_sym_L_SQUOTE] = ACTIONS(2216), [anon_sym_u_SQUOTE] = ACTIONS(2216), [anon_sym_U_SQUOTE] = ACTIONS(2216), [anon_sym_u8_SQUOTE] = ACTIONS(2216), [anon_sym_SQUOTE] = ACTIONS(2216), [anon_sym_L_DQUOTE] = ACTIONS(2216), [anon_sym_u_DQUOTE] = ACTIONS(2216), [anon_sym_U_DQUOTE] = ACTIONS(2216), [anon_sym_u8_DQUOTE] = ACTIONS(2216), [anon_sym_DQUOTE] = ACTIONS(2216), [sym_true] = ACTIONS(2214), [sym_false] = ACTIONS(2214), [sym_null] = ACTIONS(2214), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2214), [anon_sym_virtual] = ACTIONS(2214), [anon_sym_explicit] = ACTIONS(2214), [sym_auto] = ACTIONS(2214), [anon_sym_typename] = ACTIONS(2214), [anon_sym_template] = ACTIONS(2214), [anon_sym_operator] = ACTIONS(2214), [anon_sym_delete] = ACTIONS(2214), [anon_sym_throw] = ACTIONS(2214), [anon_sym_namespace] = ACTIONS(2214), [anon_sym_using] = ACTIONS(2214), [anon_sym_static_assert] = ACTIONS(2214), [anon_sym_co_return] = ACTIONS(2214), [anon_sym_co_yield] = ACTIONS(2214), [anon_sym_try] = ACTIONS(2214), [anon_sym_co_await] = ACTIONS(2214), [anon_sym_new] = ACTIONS(2214), [sym_this] = ACTIONS(2214), [sym_nullptr] = ACTIONS(2214), [sym_raw_string_literal] = ACTIONS(2216), }, [755] = { [sym_identifier] = ACTIONS(2202), [aux_sym_preproc_include_token1] = ACTIONS(2202), [aux_sym_preproc_def_token1] = ACTIONS(2202), [aux_sym_preproc_if_token1] = ACTIONS(2202), [aux_sym_preproc_ifdef_token1] = ACTIONS(2202), [aux_sym_preproc_ifdef_token2] = ACTIONS(2202), [sym_preproc_directive] = ACTIONS(2202), [anon_sym_LPAREN2] = ACTIONS(2204), [anon_sym_BANG] = ACTIONS(2204), [anon_sym_TILDE] = ACTIONS(2204), [anon_sym_DASH] = ACTIONS(2202), [anon_sym_PLUS] = ACTIONS(2202), [anon_sym_STAR] = ACTIONS(2204), [anon_sym_AMP_AMP] = ACTIONS(2204), [anon_sym_AMP] = ACTIONS(2202), [anon_sym_SEMI] = ACTIONS(2204), [anon_sym_typedef] = ACTIONS(2202), [anon_sym_extern] = ACTIONS(2202), [anon_sym___attribute__] = ACTIONS(2202), [anon_sym_COLON_COLON] = ACTIONS(2204), [anon_sym_LBRACK_LBRACK] = ACTIONS(2204), [anon_sym___declspec] = ACTIONS(2202), [anon_sym___based] = ACTIONS(2202), [anon_sym___cdecl] = ACTIONS(2202), [anon_sym___clrcall] = ACTIONS(2202), [anon_sym___stdcall] = ACTIONS(2202), [anon_sym___fastcall] = ACTIONS(2202), [anon_sym___thiscall] = ACTIONS(2202), [anon_sym___vectorcall] = ACTIONS(2202), [anon_sym_LBRACE] = ACTIONS(2204), [anon_sym_RBRACE] = ACTIONS(2204), [anon_sym_LBRACK] = ACTIONS(2202), [anon_sym_static] = ACTIONS(2202), [anon_sym_register] = ACTIONS(2202), [anon_sym_inline] = ACTIONS(2202), [anon_sym_thread_local] = ACTIONS(2202), [anon_sym_const] = ACTIONS(2202), [anon_sym_volatile] = ACTIONS(2202), [anon_sym_restrict] = ACTIONS(2202), [anon_sym__Atomic] = ACTIONS(2202), [anon_sym_mutable] = ACTIONS(2202), [anon_sym_constexpr] = ACTIONS(2202), [anon_sym_signed] = ACTIONS(2202), [anon_sym_unsigned] = ACTIONS(2202), [anon_sym_long] = ACTIONS(2202), [anon_sym_short] = ACTIONS(2202), [sym_primitive_type] = ACTIONS(2202), [anon_sym_enum] = ACTIONS(2202), [anon_sym_class] = ACTIONS(2202), [anon_sym_struct] = ACTIONS(2202), [anon_sym_union] = ACTIONS(2202), [anon_sym_if] = ACTIONS(2202), [anon_sym_switch] = ACTIONS(2202), [anon_sym_case] = ACTIONS(2202), [anon_sym_default] = ACTIONS(2202), [anon_sym_while] = ACTIONS(2202), [anon_sym_do] = ACTIONS(2202), [anon_sym_for] = ACTIONS(2202), [anon_sym_return] = ACTIONS(2202), [anon_sym_break] = ACTIONS(2202), [anon_sym_continue] = ACTIONS(2202), [anon_sym_goto] = ACTIONS(2202), [anon_sym_DASH_DASH] = ACTIONS(2204), [anon_sym_PLUS_PLUS] = ACTIONS(2204), [anon_sym_sizeof] = ACTIONS(2202), [sym_number_literal] = ACTIONS(2204), [anon_sym_L_SQUOTE] = ACTIONS(2204), [anon_sym_u_SQUOTE] = ACTIONS(2204), [anon_sym_U_SQUOTE] = ACTIONS(2204), [anon_sym_u8_SQUOTE] = ACTIONS(2204), [anon_sym_SQUOTE] = ACTIONS(2204), [anon_sym_L_DQUOTE] = ACTIONS(2204), [anon_sym_u_DQUOTE] = ACTIONS(2204), [anon_sym_U_DQUOTE] = ACTIONS(2204), [anon_sym_u8_DQUOTE] = ACTIONS(2204), [anon_sym_DQUOTE] = ACTIONS(2204), [sym_true] = ACTIONS(2202), [sym_false] = ACTIONS(2202), [sym_null] = ACTIONS(2202), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2202), [anon_sym_virtual] = ACTIONS(2202), [anon_sym_explicit] = ACTIONS(2202), [sym_auto] = ACTIONS(2202), [anon_sym_typename] = ACTIONS(2202), [anon_sym_template] = ACTIONS(2202), [anon_sym_operator] = ACTIONS(2202), [anon_sym_delete] = ACTIONS(2202), [anon_sym_throw] = ACTIONS(2202), [anon_sym_namespace] = ACTIONS(2202), [anon_sym_using] = ACTIONS(2202), [anon_sym_static_assert] = ACTIONS(2202), [anon_sym_co_return] = ACTIONS(2202), [anon_sym_co_yield] = ACTIONS(2202), [anon_sym_try] = ACTIONS(2202), [anon_sym_co_await] = ACTIONS(2202), [anon_sym_new] = ACTIONS(2202), [sym_this] = ACTIONS(2202), [sym_nullptr] = ACTIONS(2202), [sym_raw_string_literal] = ACTIONS(2204), }, [756] = { [ts_builtin_sym_end] = ACTIONS(2112), [sym_identifier] = ACTIONS(2110), [aux_sym_preproc_include_token1] = ACTIONS(2110), [aux_sym_preproc_def_token1] = ACTIONS(2110), [aux_sym_preproc_if_token1] = ACTIONS(2110), [aux_sym_preproc_ifdef_token1] = ACTIONS(2110), [aux_sym_preproc_ifdef_token2] = ACTIONS(2110), [sym_preproc_directive] = ACTIONS(2110), [anon_sym_LPAREN2] = ACTIONS(2112), [anon_sym_BANG] = ACTIONS(2112), [anon_sym_TILDE] = ACTIONS(2112), [anon_sym_DASH] = ACTIONS(2110), [anon_sym_PLUS] = ACTIONS(2110), [anon_sym_STAR] = ACTIONS(2112), [anon_sym_AMP_AMP] = ACTIONS(2112), [anon_sym_AMP] = ACTIONS(2110), [anon_sym_SEMI] = ACTIONS(2112), [anon_sym_typedef] = ACTIONS(2110), [anon_sym_extern] = ACTIONS(2110), [anon_sym___attribute__] = ACTIONS(2110), [anon_sym_COLON_COLON] = ACTIONS(2112), [anon_sym_LBRACK_LBRACK] = ACTIONS(2112), [anon_sym___declspec] = ACTIONS(2110), [anon_sym___based] = ACTIONS(2110), [anon_sym___cdecl] = ACTIONS(2110), [anon_sym___clrcall] = ACTIONS(2110), [anon_sym___stdcall] = ACTIONS(2110), [anon_sym___fastcall] = ACTIONS(2110), [anon_sym___thiscall] = ACTIONS(2110), [anon_sym___vectorcall] = ACTIONS(2110), [anon_sym_LBRACE] = ACTIONS(2112), [anon_sym_LBRACK] = ACTIONS(2110), [anon_sym_static] = ACTIONS(2110), [anon_sym_register] = ACTIONS(2110), [anon_sym_inline] = ACTIONS(2110), [anon_sym_thread_local] = ACTIONS(2110), [anon_sym_const] = ACTIONS(2110), [anon_sym_volatile] = ACTIONS(2110), [anon_sym_restrict] = ACTIONS(2110), [anon_sym__Atomic] = ACTIONS(2110), [anon_sym_mutable] = ACTIONS(2110), [anon_sym_constexpr] = ACTIONS(2110), [anon_sym_signed] = ACTIONS(2110), [anon_sym_unsigned] = ACTIONS(2110), [anon_sym_long] = ACTIONS(2110), [anon_sym_short] = ACTIONS(2110), [sym_primitive_type] = ACTIONS(2110), [anon_sym_enum] = ACTIONS(2110), [anon_sym_class] = ACTIONS(2110), [anon_sym_struct] = ACTIONS(2110), [anon_sym_union] = ACTIONS(2110), [anon_sym_if] = ACTIONS(2110), [anon_sym_switch] = ACTIONS(2110), [anon_sym_case] = ACTIONS(2110), [anon_sym_default] = ACTIONS(2110), [anon_sym_while] = ACTIONS(2110), [anon_sym_do] = ACTIONS(2110), [anon_sym_for] = ACTIONS(2110), [anon_sym_return] = ACTIONS(2110), [anon_sym_break] = ACTIONS(2110), [anon_sym_continue] = ACTIONS(2110), [anon_sym_goto] = ACTIONS(2110), [anon_sym_DASH_DASH] = ACTIONS(2112), [anon_sym_PLUS_PLUS] = ACTIONS(2112), [anon_sym_sizeof] = ACTIONS(2110), [sym_number_literal] = ACTIONS(2112), [anon_sym_L_SQUOTE] = ACTIONS(2112), [anon_sym_u_SQUOTE] = ACTIONS(2112), [anon_sym_U_SQUOTE] = ACTIONS(2112), [anon_sym_u8_SQUOTE] = ACTIONS(2112), [anon_sym_SQUOTE] = ACTIONS(2112), [anon_sym_L_DQUOTE] = ACTIONS(2112), [anon_sym_u_DQUOTE] = ACTIONS(2112), [anon_sym_U_DQUOTE] = ACTIONS(2112), [anon_sym_u8_DQUOTE] = ACTIONS(2112), [anon_sym_DQUOTE] = ACTIONS(2112), [sym_true] = ACTIONS(2110), [sym_false] = ACTIONS(2110), [sym_null] = ACTIONS(2110), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2110), [anon_sym_virtual] = ACTIONS(2110), [anon_sym_explicit] = ACTIONS(2110), [sym_auto] = ACTIONS(2110), [anon_sym_typename] = ACTIONS(2110), [anon_sym_template] = ACTIONS(2110), [anon_sym_operator] = ACTIONS(2110), [anon_sym_delete] = ACTIONS(2110), [anon_sym_throw] = ACTIONS(2110), [anon_sym_namespace] = ACTIONS(2110), [anon_sym_using] = ACTIONS(2110), [anon_sym_static_assert] = ACTIONS(2110), [anon_sym_co_return] = ACTIONS(2110), [anon_sym_co_yield] = ACTIONS(2110), [anon_sym_try] = ACTIONS(2110), [anon_sym_co_await] = ACTIONS(2110), [anon_sym_new] = ACTIONS(2110), [sym_this] = ACTIONS(2110), [sym_nullptr] = ACTIONS(2110), [sym_raw_string_literal] = ACTIONS(2112), }, [757] = { [sym_identifier] = ACTIONS(2022), [aux_sym_preproc_include_token1] = ACTIONS(2022), [aux_sym_preproc_def_token1] = ACTIONS(2022), [aux_sym_preproc_if_token1] = ACTIONS(2022), [aux_sym_preproc_if_token2] = ACTIONS(2022), [aux_sym_preproc_ifdef_token1] = ACTIONS(2022), [aux_sym_preproc_ifdef_token2] = ACTIONS(2022), [sym_preproc_directive] = ACTIONS(2022), [anon_sym_LPAREN2] = ACTIONS(2024), [anon_sym_BANG] = ACTIONS(2024), [anon_sym_TILDE] = ACTIONS(2024), [anon_sym_DASH] = ACTIONS(2022), [anon_sym_PLUS] = ACTIONS(2022), [anon_sym_STAR] = ACTIONS(2024), [anon_sym_AMP_AMP] = ACTIONS(2024), [anon_sym_AMP] = ACTIONS(2022), [anon_sym_SEMI] = ACTIONS(2024), [anon_sym_typedef] = ACTIONS(2022), [anon_sym_extern] = ACTIONS(2022), [anon_sym___attribute__] = ACTIONS(2022), [anon_sym_COLON_COLON] = ACTIONS(2024), [anon_sym_LBRACK_LBRACK] = ACTIONS(2024), [anon_sym___declspec] = ACTIONS(2022), [anon_sym___based] = ACTIONS(2022), [anon_sym___cdecl] = ACTIONS(2022), [anon_sym___clrcall] = ACTIONS(2022), [anon_sym___stdcall] = ACTIONS(2022), [anon_sym___fastcall] = ACTIONS(2022), [anon_sym___thiscall] = ACTIONS(2022), [anon_sym___vectorcall] = ACTIONS(2022), [anon_sym_LBRACE] = ACTIONS(2024), [anon_sym_LBRACK] = ACTIONS(2022), [anon_sym_static] = ACTIONS(2022), [anon_sym_register] = ACTIONS(2022), [anon_sym_inline] = ACTIONS(2022), [anon_sym_thread_local] = ACTIONS(2022), [anon_sym_const] = ACTIONS(2022), [anon_sym_volatile] = ACTIONS(2022), [anon_sym_restrict] = ACTIONS(2022), [anon_sym__Atomic] = ACTIONS(2022), [anon_sym_mutable] = ACTIONS(2022), [anon_sym_constexpr] = ACTIONS(2022), [anon_sym_signed] = ACTIONS(2022), [anon_sym_unsigned] = ACTIONS(2022), [anon_sym_long] = ACTIONS(2022), [anon_sym_short] = ACTIONS(2022), [sym_primitive_type] = ACTIONS(2022), [anon_sym_enum] = ACTIONS(2022), [anon_sym_class] = ACTIONS(2022), [anon_sym_struct] = ACTIONS(2022), [anon_sym_union] = ACTIONS(2022), [anon_sym_if] = ACTIONS(2022), [anon_sym_switch] = ACTIONS(2022), [anon_sym_case] = ACTIONS(2022), [anon_sym_default] = ACTIONS(2022), [anon_sym_while] = ACTIONS(2022), [anon_sym_do] = ACTIONS(2022), [anon_sym_for] = ACTIONS(2022), [anon_sym_return] = ACTIONS(2022), [anon_sym_break] = ACTIONS(2022), [anon_sym_continue] = ACTIONS(2022), [anon_sym_goto] = ACTIONS(2022), [anon_sym_DASH_DASH] = ACTIONS(2024), [anon_sym_PLUS_PLUS] = ACTIONS(2024), [anon_sym_sizeof] = ACTIONS(2022), [sym_number_literal] = ACTIONS(2024), [anon_sym_L_SQUOTE] = ACTIONS(2024), [anon_sym_u_SQUOTE] = ACTIONS(2024), [anon_sym_U_SQUOTE] = ACTIONS(2024), [anon_sym_u8_SQUOTE] = ACTIONS(2024), [anon_sym_SQUOTE] = ACTIONS(2024), [anon_sym_L_DQUOTE] = ACTIONS(2024), [anon_sym_u_DQUOTE] = ACTIONS(2024), [anon_sym_U_DQUOTE] = ACTIONS(2024), [anon_sym_u8_DQUOTE] = ACTIONS(2024), [anon_sym_DQUOTE] = ACTIONS(2024), [sym_true] = ACTIONS(2022), [sym_false] = ACTIONS(2022), [sym_null] = ACTIONS(2022), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2022), [anon_sym_virtual] = ACTIONS(2022), [anon_sym_explicit] = ACTIONS(2022), [sym_auto] = ACTIONS(2022), [anon_sym_typename] = ACTIONS(2022), [anon_sym_template] = ACTIONS(2022), [anon_sym_operator] = ACTIONS(2022), [anon_sym_delete] = ACTIONS(2022), [anon_sym_throw] = ACTIONS(2022), [anon_sym_namespace] = ACTIONS(2022), [anon_sym_using] = ACTIONS(2022), [anon_sym_static_assert] = ACTIONS(2022), [anon_sym_co_return] = ACTIONS(2022), [anon_sym_co_yield] = ACTIONS(2022), [anon_sym_try] = ACTIONS(2022), [anon_sym_co_await] = ACTIONS(2022), [anon_sym_new] = ACTIONS(2022), [sym_this] = ACTIONS(2022), [sym_nullptr] = ACTIONS(2022), [sym_raw_string_literal] = ACTIONS(2024), }, [758] = { [ts_builtin_sym_end] = ACTIONS(2020), [sym_identifier] = ACTIONS(2018), [aux_sym_preproc_include_token1] = ACTIONS(2018), [aux_sym_preproc_def_token1] = ACTIONS(2018), [aux_sym_preproc_if_token1] = ACTIONS(2018), [aux_sym_preproc_ifdef_token1] = ACTIONS(2018), [aux_sym_preproc_ifdef_token2] = ACTIONS(2018), [sym_preproc_directive] = ACTIONS(2018), [anon_sym_LPAREN2] = ACTIONS(2020), [anon_sym_BANG] = ACTIONS(2020), [anon_sym_TILDE] = ACTIONS(2020), [anon_sym_DASH] = ACTIONS(2018), [anon_sym_PLUS] = ACTIONS(2018), [anon_sym_STAR] = ACTIONS(2020), [anon_sym_AMP_AMP] = ACTIONS(2020), [anon_sym_AMP] = ACTIONS(2018), [anon_sym_SEMI] = ACTIONS(2020), [anon_sym_typedef] = ACTIONS(2018), [anon_sym_extern] = ACTIONS(2018), [anon_sym___attribute__] = ACTIONS(2018), [anon_sym_COLON_COLON] = ACTIONS(2020), [anon_sym_LBRACK_LBRACK] = ACTIONS(2020), [anon_sym___declspec] = ACTIONS(2018), [anon_sym___based] = ACTIONS(2018), [anon_sym___cdecl] = ACTIONS(2018), [anon_sym___clrcall] = ACTIONS(2018), [anon_sym___stdcall] = ACTIONS(2018), [anon_sym___fastcall] = ACTIONS(2018), [anon_sym___thiscall] = ACTIONS(2018), [anon_sym___vectorcall] = ACTIONS(2018), [anon_sym_LBRACE] = ACTIONS(2020), [anon_sym_LBRACK] = ACTIONS(2018), [anon_sym_static] = ACTIONS(2018), [anon_sym_register] = ACTIONS(2018), [anon_sym_inline] = ACTIONS(2018), [anon_sym_thread_local] = ACTIONS(2018), [anon_sym_const] = ACTIONS(2018), [anon_sym_volatile] = ACTIONS(2018), [anon_sym_restrict] = ACTIONS(2018), [anon_sym__Atomic] = ACTIONS(2018), [anon_sym_mutable] = ACTIONS(2018), [anon_sym_constexpr] = ACTIONS(2018), [anon_sym_signed] = ACTIONS(2018), [anon_sym_unsigned] = ACTIONS(2018), [anon_sym_long] = ACTIONS(2018), [anon_sym_short] = ACTIONS(2018), [sym_primitive_type] = ACTIONS(2018), [anon_sym_enum] = ACTIONS(2018), [anon_sym_class] = ACTIONS(2018), [anon_sym_struct] = ACTIONS(2018), [anon_sym_union] = ACTIONS(2018), [anon_sym_if] = ACTIONS(2018), [anon_sym_switch] = ACTIONS(2018), [anon_sym_case] = ACTIONS(2018), [anon_sym_default] = ACTIONS(2018), [anon_sym_while] = ACTIONS(2018), [anon_sym_do] = ACTIONS(2018), [anon_sym_for] = ACTIONS(2018), [anon_sym_return] = ACTIONS(2018), [anon_sym_break] = ACTIONS(2018), [anon_sym_continue] = ACTIONS(2018), [anon_sym_goto] = ACTIONS(2018), [anon_sym_DASH_DASH] = ACTIONS(2020), [anon_sym_PLUS_PLUS] = ACTIONS(2020), [anon_sym_sizeof] = ACTIONS(2018), [sym_number_literal] = ACTIONS(2020), [anon_sym_L_SQUOTE] = ACTIONS(2020), [anon_sym_u_SQUOTE] = ACTIONS(2020), [anon_sym_U_SQUOTE] = ACTIONS(2020), [anon_sym_u8_SQUOTE] = ACTIONS(2020), [anon_sym_SQUOTE] = ACTIONS(2020), [anon_sym_L_DQUOTE] = ACTIONS(2020), [anon_sym_u_DQUOTE] = ACTIONS(2020), [anon_sym_U_DQUOTE] = ACTIONS(2020), [anon_sym_u8_DQUOTE] = ACTIONS(2020), [anon_sym_DQUOTE] = ACTIONS(2020), [sym_true] = ACTIONS(2018), [sym_false] = ACTIONS(2018), [sym_null] = ACTIONS(2018), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2018), [anon_sym_virtual] = ACTIONS(2018), [anon_sym_explicit] = ACTIONS(2018), [sym_auto] = ACTIONS(2018), [anon_sym_typename] = ACTIONS(2018), [anon_sym_template] = ACTIONS(2018), [anon_sym_operator] = ACTIONS(2018), [anon_sym_delete] = ACTIONS(2018), [anon_sym_throw] = ACTIONS(2018), [anon_sym_namespace] = ACTIONS(2018), [anon_sym_using] = ACTIONS(2018), [anon_sym_static_assert] = ACTIONS(2018), [anon_sym_co_return] = ACTIONS(2018), [anon_sym_co_yield] = ACTIONS(2018), [anon_sym_try] = ACTIONS(2018), [anon_sym_co_await] = ACTIONS(2018), [anon_sym_new] = ACTIONS(2018), [sym_this] = ACTIONS(2018), [sym_nullptr] = ACTIONS(2018), [sym_raw_string_literal] = ACTIONS(2020), }, [759] = { [sym_identifier] = ACTIONS(2042), [aux_sym_preproc_include_token1] = ACTIONS(2042), [aux_sym_preproc_def_token1] = ACTIONS(2042), [aux_sym_preproc_if_token1] = ACTIONS(2042), [aux_sym_preproc_if_token2] = ACTIONS(2042), [aux_sym_preproc_ifdef_token1] = ACTIONS(2042), [aux_sym_preproc_ifdef_token2] = ACTIONS(2042), [sym_preproc_directive] = ACTIONS(2042), [anon_sym_LPAREN2] = ACTIONS(2044), [anon_sym_BANG] = ACTIONS(2044), [anon_sym_TILDE] = ACTIONS(2044), [anon_sym_DASH] = ACTIONS(2042), [anon_sym_PLUS] = ACTIONS(2042), [anon_sym_STAR] = ACTIONS(2044), [anon_sym_AMP_AMP] = ACTIONS(2044), [anon_sym_AMP] = ACTIONS(2042), [anon_sym_SEMI] = ACTIONS(2044), [anon_sym_typedef] = ACTIONS(2042), [anon_sym_extern] = ACTIONS(2042), [anon_sym___attribute__] = ACTIONS(2042), [anon_sym_COLON_COLON] = ACTIONS(2044), [anon_sym_LBRACK_LBRACK] = ACTIONS(2044), [anon_sym___declspec] = ACTIONS(2042), [anon_sym___based] = ACTIONS(2042), [anon_sym___cdecl] = ACTIONS(2042), [anon_sym___clrcall] = ACTIONS(2042), [anon_sym___stdcall] = ACTIONS(2042), [anon_sym___fastcall] = ACTIONS(2042), [anon_sym___thiscall] = ACTIONS(2042), [anon_sym___vectorcall] = ACTIONS(2042), [anon_sym_LBRACE] = ACTIONS(2044), [anon_sym_LBRACK] = ACTIONS(2042), [anon_sym_static] = ACTIONS(2042), [anon_sym_register] = ACTIONS(2042), [anon_sym_inline] = ACTIONS(2042), [anon_sym_thread_local] = ACTIONS(2042), [anon_sym_const] = ACTIONS(2042), [anon_sym_volatile] = ACTIONS(2042), [anon_sym_restrict] = ACTIONS(2042), [anon_sym__Atomic] = ACTIONS(2042), [anon_sym_mutable] = ACTIONS(2042), [anon_sym_constexpr] = ACTIONS(2042), [anon_sym_signed] = ACTIONS(2042), [anon_sym_unsigned] = ACTIONS(2042), [anon_sym_long] = ACTIONS(2042), [anon_sym_short] = ACTIONS(2042), [sym_primitive_type] = ACTIONS(2042), [anon_sym_enum] = ACTIONS(2042), [anon_sym_class] = ACTIONS(2042), [anon_sym_struct] = ACTIONS(2042), [anon_sym_union] = ACTIONS(2042), [anon_sym_if] = ACTIONS(2042), [anon_sym_switch] = ACTIONS(2042), [anon_sym_case] = ACTIONS(2042), [anon_sym_default] = ACTIONS(2042), [anon_sym_while] = ACTIONS(2042), [anon_sym_do] = ACTIONS(2042), [anon_sym_for] = ACTIONS(2042), [anon_sym_return] = ACTIONS(2042), [anon_sym_break] = ACTIONS(2042), [anon_sym_continue] = ACTIONS(2042), [anon_sym_goto] = ACTIONS(2042), [anon_sym_DASH_DASH] = ACTIONS(2044), [anon_sym_PLUS_PLUS] = ACTIONS(2044), [anon_sym_sizeof] = ACTIONS(2042), [sym_number_literal] = ACTIONS(2044), [anon_sym_L_SQUOTE] = ACTIONS(2044), [anon_sym_u_SQUOTE] = ACTIONS(2044), [anon_sym_U_SQUOTE] = ACTIONS(2044), [anon_sym_u8_SQUOTE] = ACTIONS(2044), [anon_sym_SQUOTE] = ACTIONS(2044), [anon_sym_L_DQUOTE] = ACTIONS(2044), [anon_sym_u_DQUOTE] = ACTIONS(2044), [anon_sym_U_DQUOTE] = ACTIONS(2044), [anon_sym_u8_DQUOTE] = ACTIONS(2044), [anon_sym_DQUOTE] = ACTIONS(2044), [sym_true] = ACTIONS(2042), [sym_false] = ACTIONS(2042), [sym_null] = ACTIONS(2042), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2042), [anon_sym_virtual] = ACTIONS(2042), [anon_sym_explicit] = ACTIONS(2042), [sym_auto] = ACTIONS(2042), [anon_sym_typename] = ACTIONS(2042), [anon_sym_template] = ACTIONS(2042), [anon_sym_operator] = ACTIONS(2042), [anon_sym_delete] = ACTIONS(2042), [anon_sym_throw] = ACTIONS(2042), [anon_sym_namespace] = ACTIONS(2042), [anon_sym_using] = ACTIONS(2042), [anon_sym_static_assert] = ACTIONS(2042), [anon_sym_co_return] = ACTIONS(2042), [anon_sym_co_yield] = ACTIONS(2042), [anon_sym_try] = ACTIONS(2042), [anon_sym_co_await] = ACTIONS(2042), [anon_sym_new] = ACTIONS(2042), [sym_this] = ACTIONS(2042), [sym_nullptr] = ACTIONS(2042), [sym_raw_string_literal] = ACTIONS(2044), }, [760] = { [ts_builtin_sym_end] = ACTIONS(2164), [sym_identifier] = ACTIONS(2162), [aux_sym_preproc_include_token1] = ACTIONS(2162), [aux_sym_preproc_def_token1] = ACTIONS(2162), [aux_sym_preproc_if_token1] = ACTIONS(2162), [aux_sym_preproc_ifdef_token1] = ACTIONS(2162), [aux_sym_preproc_ifdef_token2] = ACTIONS(2162), [sym_preproc_directive] = ACTIONS(2162), [anon_sym_LPAREN2] = ACTIONS(2164), [anon_sym_BANG] = ACTIONS(2164), [anon_sym_TILDE] = ACTIONS(2164), [anon_sym_DASH] = ACTIONS(2162), [anon_sym_PLUS] = ACTIONS(2162), [anon_sym_STAR] = ACTIONS(2164), [anon_sym_AMP_AMP] = ACTIONS(2164), [anon_sym_AMP] = ACTIONS(2162), [anon_sym_SEMI] = ACTIONS(2164), [anon_sym_typedef] = ACTIONS(2162), [anon_sym_extern] = ACTIONS(2162), [anon_sym___attribute__] = ACTIONS(2162), [anon_sym_COLON_COLON] = ACTIONS(2164), [anon_sym_LBRACK_LBRACK] = ACTIONS(2164), [anon_sym___declspec] = ACTIONS(2162), [anon_sym___based] = ACTIONS(2162), [anon_sym___cdecl] = ACTIONS(2162), [anon_sym___clrcall] = ACTIONS(2162), [anon_sym___stdcall] = ACTIONS(2162), [anon_sym___fastcall] = ACTIONS(2162), [anon_sym___thiscall] = ACTIONS(2162), [anon_sym___vectorcall] = ACTIONS(2162), [anon_sym_LBRACE] = ACTIONS(2164), [anon_sym_LBRACK] = ACTIONS(2162), [anon_sym_static] = ACTIONS(2162), [anon_sym_register] = ACTIONS(2162), [anon_sym_inline] = ACTIONS(2162), [anon_sym_thread_local] = ACTIONS(2162), [anon_sym_const] = ACTIONS(2162), [anon_sym_volatile] = ACTIONS(2162), [anon_sym_restrict] = ACTIONS(2162), [anon_sym__Atomic] = ACTIONS(2162), [anon_sym_mutable] = ACTIONS(2162), [anon_sym_constexpr] = ACTIONS(2162), [anon_sym_signed] = ACTIONS(2162), [anon_sym_unsigned] = ACTIONS(2162), [anon_sym_long] = ACTIONS(2162), [anon_sym_short] = ACTIONS(2162), [sym_primitive_type] = ACTIONS(2162), [anon_sym_enum] = ACTIONS(2162), [anon_sym_class] = ACTIONS(2162), [anon_sym_struct] = ACTIONS(2162), [anon_sym_union] = ACTIONS(2162), [anon_sym_if] = ACTIONS(2162), [anon_sym_switch] = ACTIONS(2162), [anon_sym_case] = ACTIONS(2162), [anon_sym_default] = ACTIONS(2162), [anon_sym_while] = ACTIONS(2162), [anon_sym_do] = ACTIONS(2162), [anon_sym_for] = ACTIONS(2162), [anon_sym_return] = ACTIONS(2162), [anon_sym_break] = ACTIONS(2162), [anon_sym_continue] = ACTIONS(2162), [anon_sym_goto] = ACTIONS(2162), [anon_sym_DASH_DASH] = ACTIONS(2164), [anon_sym_PLUS_PLUS] = ACTIONS(2164), [anon_sym_sizeof] = ACTIONS(2162), [sym_number_literal] = ACTIONS(2164), [anon_sym_L_SQUOTE] = ACTIONS(2164), [anon_sym_u_SQUOTE] = ACTIONS(2164), [anon_sym_U_SQUOTE] = ACTIONS(2164), [anon_sym_u8_SQUOTE] = ACTIONS(2164), [anon_sym_SQUOTE] = ACTIONS(2164), [anon_sym_L_DQUOTE] = ACTIONS(2164), [anon_sym_u_DQUOTE] = ACTIONS(2164), [anon_sym_U_DQUOTE] = ACTIONS(2164), [anon_sym_u8_DQUOTE] = ACTIONS(2164), [anon_sym_DQUOTE] = ACTIONS(2164), [sym_true] = ACTIONS(2162), [sym_false] = ACTIONS(2162), [sym_null] = ACTIONS(2162), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2162), [anon_sym_virtual] = ACTIONS(2162), [anon_sym_explicit] = ACTIONS(2162), [sym_auto] = ACTIONS(2162), [anon_sym_typename] = ACTIONS(2162), [anon_sym_template] = ACTIONS(2162), [anon_sym_operator] = ACTIONS(2162), [anon_sym_delete] = ACTIONS(2162), [anon_sym_throw] = ACTIONS(2162), [anon_sym_namespace] = ACTIONS(2162), [anon_sym_using] = ACTIONS(2162), [anon_sym_static_assert] = ACTIONS(2162), [anon_sym_co_return] = ACTIONS(2162), [anon_sym_co_yield] = ACTIONS(2162), [anon_sym_try] = ACTIONS(2162), [anon_sym_co_await] = ACTIONS(2162), [anon_sym_new] = ACTIONS(2162), [sym_this] = ACTIONS(2162), [sym_nullptr] = ACTIONS(2162), [sym_raw_string_literal] = ACTIONS(2164), }, [761] = { [ts_builtin_sym_end] = ACTIONS(2160), [sym_identifier] = ACTIONS(2158), [aux_sym_preproc_include_token1] = ACTIONS(2158), [aux_sym_preproc_def_token1] = ACTIONS(2158), [aux_sym_preproc_if_token1] = ACTIONS(2158), [aux_sym_preproc_ifdef_token1] = ACTIONS(2158), [aux_sym_preproc_ifdef_token2] = ACTIONS(2158), [sym_preproc_directive] = ACTIONS(2158), [anon_sym_LPAREN2] = ACTIONS(2160), [anon_sym_BANG] = ACTIONS(2160), [anon_sym_TILDE] = ACTIONS(2160), [anon_sym_DASH] = ACTIONS(2158), [anon_sym_PLUS] = ACTIONS(2158), [anon_sym_STAR] = ACTIONS(2160), [anon_sym_AMP_AMP] = ACTIONS(2160), [anon_sym_AMP] = ACTIONS(2158), [anon_sym_SEMI] = ACTIONS(2160), [anon_sym_typedef] = ACTIONS(2158), [anon_sym_extern] = ACTIONS(2158), [anon_sym___attribute__] = ACTIONS(2158), [anon_sym_COLON_COLON] = ACTIONS(2160), [anon_sym_LBRACK_LBRACK] = ACTIONS(2160), [anon_sym___declspec] = ACTIONS(2158), [anon_sym___based] = ACTIONS(2158), [anon_sym___cdecl] = ACTIONS(2158), [anon_sym___clrcall] = ACTIONS(2158), [anon_sym___stdcall] = ACTIONS(2158), [anon_sym___fastcall] = ACTIONS(2158), [anon_sym___thiscall] = ACTIONS(2158), [anon_sym___vectorcall] = ACTIONS(2158), [anon_sym_LBRACE] = ACTIONS(2160), [anon_sym_LBRACK] = ACTIONS(2158), [anon_sym_static] = ACTIONS(2158), [anon_sym_register] = ACTIONS(2158), [anon_sym_inline] = ACTIONS(2158), [anon_sym_thread_local] = ACTIONS(2158), [anon_sym_const] = ACTIONS(2158), [anon_sym_volatile] = ACTIONS(2158), [anon_sym_restrict] = ACTIONS(2158), [anon_sym__Atomic] = ACTIONS(2158), [anon_sym_mutable] = ACTIONS(2158), [anon_sym_constexpr] = ACTIONS(2158), [anon_sym_signed] = ACTIONS(2158), [anon_sym_unsigned] = ACTIONS(2158), [anon_sym_long] = ACTIONS(2158), [anon_sym_short] = ACTIONS(2158), [sym_primitive_type] = ACTIONS(2158), [anon_sym_enum] = ACTIONS(2158), [anon_sym_class] = ACTIONS(2158), [anon_sym_struct] = ACTIONS(2158), [anon_sym_union] = ACTIONS(2158), [anon_sym_if] = ACTIONS(2158), [anon_sym_switch] = ACTIONS(2158), [anon_sym_case] = ACTIONS(2158), [anon_sym_default] = ACTIONS(2158), [anon_sym_while] = ACTIONS(2158), [anon_sym_do] = ACTIONS(2158), [anon_sym_for] = ACTIONS(2158), [anon_sym_return] = ACTIONS(2158), [anon_sym_break] = ACTIONS(2158), [anon_sym_continue] = ACTIONS(2158), [anon_sym_goto] = ACTIONS(2158), [anon_sym_DASH_DASH] = ACTIONS(2160), [anon_sym_PLUS_PLUS] = ACTIONS(2160), [anon_sym_sizeof] = ACTIONS(2158), [sym_number_literal] = ACTIONS(2160), [anon_sym_L_SQUOTE] = ACTIONS(2160), [anon_sym_u_SQUOTE] = ACTIONS(2160), [anon_sym_U_SQUOTE] = ACTIONS(2160), [anon_sym_u8_SQUOTE] = ACTIONS(2160), [anon_sym_SQUOTE] = ACTIONS(2160), [anon_sym_L_DQUOTE] = ACTIONS(2160), [anon_sym_u_DQUOTE] = ACTIONS(2160), [anon_sym_U_DQUOTE] = ACTIONS(2160), [anon_sym_u8_DQUOTE] = ACTIONS(2160), [anon_sym_DQUOTE] = ACTIONS(2160), [sym_true] = ACTIONS(2158), [sym_false] = ACTIONS(2158), [sym_null] = ACTIONS(2158), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2158), [anon_sym_virtual] = ACTIONS(2158), [anon_sym_explicit] = ACTIONS(2158), [sym_auto] = ACTIONS(2158), [anon_sym_typename] = ACTIONS(2158), [anon_sym_template] = ACTIONS(2158), [anon_sym_operator] = ACTIONS(2158), [anon_sym_delete] = ACTIONS(2158), [anon_sym_throw] = ACTIONS(2158), [anon_sym_namespace] = ACTIONS(2158), [anon_sym_using] = ACTIONS(2158), [anon_sym_static_assert] = ACTIONS(2158), [anon_sym_co_return] = ACTIONS(2158), [anon_sym_co_yield] = ACTIONS(2158), [anon_sym_try] = ACTIONS(2158), [anon_sym_co_await] = ACTIONS(2158), [anon_sym_new] = ACTIONS(2158), [sym_this] = ACTIONS(2158), [sym_nullptr] = ACTIONS(2158), [sym_raw_string_literal] = ACTIONS(2160), }, [762] = { [ts_builtin_sym_end] = ACTIONS(2168), [sym_identifier] = ACTIONS(2166), [aux_sym_preproc_include_token1] = ACTIONS(2166), [aux_sym_preproc_def_token1] = ACTIONS(2166), [aux_sym_preproc_if_token1] = ACTIONS(2166), [aux_sym_preproc_ifdef_token1] = ACTIONS(2166), [aux_sym_preproc_ifdef_token2] = ACTIONS(2166), [sym_preproc_directive] = ACTIONS(2166), [anon_sym_LPAREN2] = ACTIONS(2168), [anon_sym_BANG] = ACTIONS(2168), [anon_sym_TILDE] = ACTIONS(2168), [anon_sym_DASH] = ACTIONS(2166), [anon_sym_PLUS] = ACTIONS(2166), [anon_sym_STAR] = ACTIONS(2168), [anon_sym_AMP_AMP] = ACTIONS(2168), [anon_sym_AMP] = ACTIONS(2166), [anon_sym_SEMI] = ACTIONS(2168), [anon_sym_typedef] = ACTIONS(2166), [anon_sym_extern] = ACTIONS(2166), [anon_sym___attribute__] = ACTIONS(2166), [anon_sym_COLON_COLON] = ACTIONS(2168), [anon_sym_LBRACK_LBRACK] = ACTIONS(2168), [anon_sym___declspec] = ACTIONS(2166), [anon_sym___based] = ACTIONS(2166), [anon_sym___cdecl] = ACTIONS(2166), [anon_sym___clrcall] = ACTIONS(2166), [anon_sym___stdcall] = ACTIONS(2166), [anon_sym___fastcall] = ACTIONS(2166), [anon_sym___thiscall] = ACTIONS(2166), [anon_sym___vectorcall] = ACTIONS(2166), [anon_sym_LBRACE] = ACTIONS(2168), [anon_sym_LBRACK] = ACTIONS(2166), [anon_sym_static] = ACTIONS(2166), [anon_sym_register] = ACTIONS(2166), [anon_sym_inline] = ACTIONS(2166), [anon_sym_thread_local] = ACTIONS(2166), [anon_sym_const] = ACTIONS(2166), [anon_sym_volatile] = ACTIONS(2166), [anon_sym_restrict] = ACTIONS(2166), [anon_sym__Atomic] = ACTIONS(2166), [anon_sym_mutable] = ACTIONS(2166), [anon_sym_constexpr] = ACTIONS(2166), [anon_sym_signed] = ACTIONS(2166), [anon_sym_unsigned] = ACTIONS(2166), [anon_sym_long] = ACTIONS(2166), [anon_sym_short] = ACTIONS(2166), [sym_primitive_type] = ACTIONS(2166), [anon_sym_enum] = ACTIONS(2166), [anon_sym_class] = ACTIONS(2166), [anon_sym_struct] = ACTIONS(2166), [anon_sym_union] = ACTIONS(2166), [anon_sym_if] = ACTIONS(2166), [anon_sym_switch] = ACTIONS(2166), [anon_sym_case] = ACTIONS(2166), [anon_sym_default] = ACTIONS(2166), [anon_sym_while] = ACTIONS(2166), [anon_sym_do] = ACTIONS(2166), [anon_sym_for] = ACTIONS(2166), [anon_sym_return] = ACTIONS(2166), [anon_sym_break] = ACTIONS(2166), [anon_sym_continue] = ACTIONS(2166), [anon_sym_goto] = ACTIONS(2166), [anon_sym_DASH_DASH] = ACTIONS(2168), [anon_sym_PLUS_PLUS] = ACTIONS(2168), [anon_sym_sizeof] = ACTIONS(2166), [sym_number_literal] = ACTIONS(2168), [anon_sym_L_SQUOTE] = ACTIONS(2168), [anon_sym_u_SQUOTE] = ACTIONS(2168), [anon_sym_U_SQUOTE] = ACTIONS(2168), [anon_sym_u8_SQUOTE] = ACTIONS(2168), [anon_sym_SQUOTE] = ACTIONS(2168), [anon_sym_L_DQUOTE] = ACTIONS(2168), [anon_sym_u_DQUOTE] = ACTIONS(2168), [anon_sym_U_DQUOTE] = ACTIONS(2168), [anon_sym_u8_DQUOTE] = ACTIONS(2168), [anon_sym_DQUOTE] = ACTIONS(2168), [sym_true] = ACTIONS(2166), [sym_false] = ACTIONS(2166), [sym_null] = ACTIONS(2166), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2166), [anon_sym_virtual] = ACTIONS(2166), [anon_sym_explicit] = ACTIONS(2166), [sym_auto] = ACTIONS(2166), [anon_sym_typename] = ACTIONS(2166), [anon_sym_template] = ACTIONS(2166), [anon_sym_operator] = ACTIONS(2166), [anon_sym_delete] = ACTIONS(2166), [anon_sym_throw] = ACTIONS(2166), [anon_sym_namespace] = ACTIONS(2166), [anon_sym_using] = ACTIONS(2166), [anon_sym_static_assert] = ACTIONS(2166), [anon_sym_co_return] = ACTIONS(2166), [anon_sym_co_yield] = ACTIONS(2166), [anon_sym_try] = ACTIONS(2166), [anon_sym_co_await] = ACTIONS(2166), [anon_sym_new] = ACTIONS(2166), [sym_this] = ACTIONS(2166), [sym_nullptr] = ACTIONS(2166), [sym_raw_string_literal] = ACTIONS(2168), }, [763] = { [sym_identifier] = ACTIONS(2134), [aux_sym_preproc_include_token1] = ACTIONS(2134), [aux_sym_preproc_def_token1] = ACTIONS(2134), [aux_sym_preproc_if_token1] = ACTIONS(2134), [aux_sym_preproc_ifdef_token1] = ACTIONS(2134), [aux_sym_preproc_ifdef_token2] = ACTIONS(2134), [sym_preproc_directive] = ACTIONS(2134), [anon_sym_LPAREN2] = ACTIONS(2136), [anon_sym_BANG] = ACTIONS(2136), [anon_sym_TILDE] = ACTIONS(2136), [anon_sym_DASH] = ACTIONS(2134), [anon_sym_PLUS] = ACTIONS(2134), [anon_sym_STAR] = ACTIONS(2136), [anon_sym_AMP_AMP] = ACTIONS(2136), [anon_sym_AMP] = ACTIONS(2134), [anon_sym_SEMI] = ACTIONS(2136), [anon_sym_typedef] = ACTIONS(2134), [anon_sym_extern] = ACTIONS(2134), [anon_sym___attribute__] = ACTIONS(2134), [anon_sym_COLON_COLON] = ACTIONS(2136), [anon_sym_LBRACK_LBRACK] = ACTIONS(2136), [anon_sym___declspec] = ACTIONS(2134), [anon_sym___based] = ACTIONS(2134), [anon_sym___cdecl] = ACTIONS(2134), [anon_sym___clrcall] = ACTIONS(2134), [anon_sym___stdcall] = ACTIONS(2134), [anon_sym___fastcall] = ACTIONS(2134), [anon_sym___thiscall] = ACTIONS(2134), [anon_sym___vectorcall] = ACTIONS(2134), [anon_sym_LBRACE] = ACTIONS(2136), [anon_sym_RBRACE] = ACTIONS(2136), [anon_sym_LBRACK] = ACTIONS(2134), [anon_sym_static] = ACTIONS(2134), [anon_sym_register] = ACTIONS(2134), [anon_sym_inline] = ACTIONS(2134), [anon_sym_thread_local] = ACTIONS(2134), [anon_sym_const] = ACTIONS(2134), [anon_sym_volatile] = ACTIONS(2134), [anon_sym_restrict] = ACTIONS(2134), [anon_sym__Atomic] = ACTIONS(2134), [anon_sym_mutable] = ACTIONS(2134), [anon_sym_constexpr] = ACTIONS(2134), [anon_sym_signed] = ACTIONS(2134), [anon_sym_unsigned] = ACTIONS(2134), [anon_sym_long] = ACTIONS(2134), [anon_sym_short] = ACTIONS(2134), [sym_primitive_type] = ACTIONS(2134), [anon_sym_enum] = ACTIONS(2134), [anon_sym_class] = ACTIONS(2134), [anon_sym_struct] = ACTIONS(2134), [anon_sym_union] = ACTIONS(2134), [anon_sym_if] = ACTIONS(2134), [anon_sym_switch] = ACTIONS(2134), [anon_sym_case] = ACTIONS(2134), [anon_sym_default] = ACTIONS(2134), [anon_sym_while] = ACTIONS(2134), [anon_sym_do] = ACTIONS(2134), [anon_sym_for] = ACTIONS(2134), [anon_sym_return] = ACTIONS(2134), [anon_sym_break] = ACTIONS(2134), [anon_sym_continue] = ACTIONS(2134), [anon_sym_goto] = ACTIONS(2134), [anon_sym_DASH_DASH] = ACTIONS(2136), [anon_sym_PLUS_PLUS] = ACTIONS(2136), [anon_sym_sizeof] = ACTIONS(2134), [sym_number_literal] = ACTIONS(2136), [anon_sym_L_SQUOTE] = ACTIONS(2136), [anon_sym_u_SQUOTE] = ACTIONS(2136), [anon_sym_U_SQUOTE] = ACTIONS(2136), [anon_sym_u8_SQUOTE] = ACTIONS(2136), [anon_sym_SQUOTE] = ACTIONS(2136), [anon_sym_L_DQUOTE] = ACTIONS(2136), [anon_sym_u_DQUOTE] = ACTIONS(2136), [anon_sym_U_DQUOTE] = ACTIONS(2136), [anon_sym_u8_DQUOTE] = ACTIONS(2136), [anon_sym_DQUOTE] = ACTIONS(2136), [sym_true] = ACTIONS(2134), [sym_false] = ACTIONS(2134), [sym_null] = ACTIONS(2134), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2134), [anon_sym_virtual] = ACTIONS(2134), [anon_sym_explicit] = ACTIONS(2134), [sym_auto] = ACTIONS(2134), [anon_sym_typename] = ACTIONS(2134), [anon_sym_template] = ACTIONS(2134), [anon_sym_operator] = ACTIONS(2134), [anon_sym_delete] = ACTIONS(2134), [anon_sym_throw] = ACTIONS(2134), [anon_sym_namespace] = ACTIONS(2134), [anon_sym_using] = ACTIONS(2134), [anon_sym_static_assert] = ACTIONS(2134), [anon_sym_co_return] = ACTIONS(2134), [anon_sym_co_yield] = ACTIONS(2134), [anon_sym_try] = ACTIONS(2134), [anon_sym_co_await] = ACTIONS(2134), [anon_sym_new] = ACTIONS(2134), [sym_this] = ACTIONS(2134), [sym_nullptr] = ACTIONS(2134), [sym_raw_string_literal] = ACTIONS(2136), }, [764] = { [sym_identifier] = ACTIONS(2134), [aux_sym_preproc_include_token1] = ACTIONS(2134), [aux_sym_preproc_def_token1] = ACTIONS(2134), [aux_sym_preproc_if_token1] = ACTIONS(2134), [aux_sym_preproc_if_token2] = ACTIONS(2134), [aux_sym_preproc_ifdef_token1] = ACTIONS(2134), [aux_sym_preproc_ifdef_token2] = ACTIONS(2134), [sym_preproc_directive] = ACTIONS(2134), [anon_sym_LPAREN2] = ACTIONS(2136), [anon_sym_BANG] = ACTIONS(2136), [anon_sym_TILDE] = ACTIONS(2136), [anon_sym_DASH] = ACTIONS(2134), [anon_sym_PLUS] = ACTIONS(2134), [anon_sym_STAR] = ACTIONS(2136), [anon_sym_AMP_AMP] = ACTIONS(2136), [anon_sym_AMP] = ACTIONS(2134), [anon_sym_SEMI] = ACTIONS(2136), [anon_sym_typedef] = ACTIONS(2134), [anon_sym_extern] = ACTIONS(2134), [anon_sym___attribute__] = ACTIONS(2134), [anon_sym_COLON_COLON] = ACTIONS(2136), [anon_sym_LBRACK_LBRACK] = ACTIONS(2136), [anon_sym___declspec] = ACTIONS(2134), [anon_sym___based] = ACTIONS(2134), [anon_sym___cdecl] = ACTIONS(2134), [anon_sym___clrcall] = ACTIONS(2134), [anon_sym___stdcall] = ACTIONS(2134), [anon_sym___fastcall] = ACTIONS(2134), [anon_sym___thiscall] = ACTIONS(2134), [anon_sym___vectorcall] = ACTIONS(2134), [anon_sym_LBRACE] = ACTIONS(2136), [anon_sym_LBRACK] = ACTIONS(2134), [anon_sym_static] = ACTIONS(2134), [anon_sym_register] = ACTIONS(2134), [anon_sym_inline] = ACTIONS(2134), [anon_sym_thread_local] = ACTIONS(2134), [anon_sym_const] = ACTIONS(2134), [anon_sym_volatile] = ACTIONS(2134), [anon_sym_restrict] = ACTIONS(2134), [anon_sym__Atomic] = ACTIONS(2134), [anon_sym_mutable] = ACTIONS(2134), [anon_sym_constexpr] = ACTIONS(2134), [anon_sym_signed] = ACTIONS(2134), [anon_sym_unsigned] = ACTIONS(2134), [anon_sym_long] = ACTIONS(2134), [anon_sym_short] = ACTIONS(2134), [sym_primitive_type] = ACTIONS(2134), [anon_sym_enum] = ACTIONS(2134), [anon_sym_class] = ACTIONS(2134), [anon_sym_struct] = ACTIONS(2134), [anon_sym_union] = ACTIONS(2134), [anon_sym_if] = ACTIONS(2134), [anon_sym_switch] = ACTIONS(2134), [anon_sym_case] = ACTIONS(2134), [anon_sym_default] = ACTIONS(2134), [anon_sym_while] = ACTIONS(2134), [anon_sym_do] = ACTIONS(2134), [anon_sym_for] = ACTIONS(2134), [anon_sym_return] = ACTIONS(2134), [anon_sym_break] = ACTIONS(2134), [anon_sym_continue] = ACTIONS(2134), [anon_sym_goto] = ACTIONS(2134), [anon_sym_DASH_DASH] = ACTIONS(2136), [anon_sym_PLUS_PLUS] = ACTIONS(2136), [anon_sym_sizeof] = ACTIONS(2134), [sym_number_literal] = ACTIONS(2136), [anon_sym_L_SQUOTE] = ACTIONS(2136), [anon_sym_u_SQUOTE] = ACTIONS(2136), [anon_sym_U_SQUOTE] = ACTIONS(2136), [anon_sym_u8_SQUOTE] = ACTIONS(2136), [anon_sym_SQUOTE] = ACTIONS(2136), [anon_sym_L_DQUOTE] = ACTIONS(2136), [anon_sym_u_DQUOTE] = ACTIONS(2136), [anon_sym_U_DQUOTE] = ACTIONS(2136), [anon_sym_u8_DQUOTE] = ACTIONS(2136), [anon_sym_DQUOTE] = ACTIONS(2136), [sym_true] = ACTIONS(2134), [sym_false] = ACTIONS(2134), [sym_null] = ACTIONS(2134), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2134), [anon_sym_virtual] = ACTIONS(2134), [anon_sym_explicit] = ACTIONS(2134), [sym_auto] = ACTIONS(2134), [anon_sym_typename] = ACTIONS(2134), [anon_sym_template] = ACTIONS(2134), [anon_sym_operator] = ACTIONS(2134), [anon_sym_delete] = ACTIONS(2134), [anon_sym_throw] = ACTIONS(2134), [anon_sym_namespace] = ACTIONS(2134), [anon_sym_using] = ACTIONS(2134), [anon_sym_static_assert] = ACTIONS(2134), [anon_sym_co_return] = ACTIONS(2134), [anon_sym_co_yield] = ACTIONS(2134), [anon_sym_try] = ACTIONS(2134), [anon_sym_co_await] = ACTIONS(2134), [anon_sym_new] = ACTIONS(2134), [sym_this] = ACTIONS(2134), [sym_nullptr] = ACTIONS(2134), [sym_raw_string_literal] = ACTIONS(2136), }, [765] = { [sym_identifier] = ACTIONS(2138), [aux_sym_preproc_include_token1] = ACTIONS(2138), [aux_sym_preproc_def_token1] = ACTIONS(2138), [aux_sym_preproc_if_token1] = ACTIONS(2138), [aux_sym_preproc_if_token2] = ACTIONS(2138), [aux_sym_preproc_ifdef_token1] = ACTIONS(2138), [aux_sym_preproc_ifdef_token2] = ACTIONS(2138), [sym_preproc_directive] = ACTIONS(2138), [anon_sym_LPAREN2] = ACTIONS(2140), [anon_sym_BANG] = ACTIONS(2140), [anon_sym_TILDE] = ACTIONS(2140), [anon_sym_DASH] = ACTIONS(2138), [anon_sym_PLUS] = ACTIONS(2138), [anon_sym_STAR] = ACTIONS(2140), [anon_sym_AMP_AMP] = ACTIONS(2140), [anon_sym_AMP] = ACTIONS(2138), [anon_sym_SEMI] = ACTIONS(2140), [anon_sym_typedef] = ACTIONS(2138), [anon_sym_extern] = ACTIONS(2138), [anon_sym___attribute__] = ACTIONS(2138), [anon_sym_COLON_COLON] = ACTIONS(2140), [anon_sym_LBRACK_LBRACK] = ACTIONS(2140), [anon_sym___declspec] = ACTIONS(2138), [anon_sym___based] = ACTIONS(2138), [anon_sym___cdecl] = ACTIONS(2138), [anon_sym___clrcall] = ACTIONS(2138), [anon_sym___stdcall] = ACTIONS(2138), [anon_sym___fastcall] = ACTIONS(2138), [anon_sym___thiscall] = ACTIONS(2138), [anon_sym___vectorcall] = ACTIONS(2138), [anon_sym_LBRACE] = ACTIONS(2140), [anon_sym_LBRACK] = ACTIONS(2138), [anon_sym_static] = ACTIONS(2138), [anon_sym_register] = ACTIONS(2138), [anon_sym_inline] = ACTIONS(2138), [anon_sym_thread_local] = ACTIONS(2138), [anon_sym_const] = ACTIONS(2138), [anon_sym_volatile] = ACTIONS(2138), [anon_sym_restrict] = ACTIONS(2138), [anon_sym__Atomic] = ACTIONS(2138), [anon_sym_mutable] = ACTIONS(2138), [anon_sym_constexpr] = ACTIONS(2138), [anon_sym_signed] = ACTIONS(2138), [anon_sym_unsigned] = ACTIONS(2138), [anon_sym_long] = ACTIONS(2138), [anon_sym_short] = ACTIONS(2138), [sym_primitive_type] = ACTIONS(2138), [anon_sym_enum] = ACTIONS(2138), [anon_sym_class] = ACTIONS(2138), [anon_sym_struct] = ACTIONS(2138), [anon_sym_union] = ACTIONS(2138), [anon_sym_if] = ACTIONS(2138), [anon_sym_switch] = ACTIONS(2138), [anon_sym_case] = ACTIONS(2138), [anon_sym_default] = ACTIONS(2138), [anon_sym_while] = ACTIONS(2138), [anon_sym_do] = ACTIONS(2138), [anon_sym_for] = ACTIONS(2138), [anon_sym_return] = ACTIONS(2138), [anon_sym_break] = ACTIONS(2138), [anon_sym_continue] = ACTIONS(2138), [anon_sym_goto] = ACTIONS(2138), [anon_sym_DASH_DASH] = ACTIONS(2140), [anon_sym_PLUS_PLUS] = ACTIONS(2140), [anon_sym_sizeof] = ACTIONS(2138), [sym_number_literal] = ACTIONS(2140), [anon_sym_L_SQUOTE] = ACTIONS(2140), [anon_sym_u_SQUOTE] = ACTIONS(2140), [anon_sym_U_SQUOTE] = ACTIONS(2140), [anon_sym_u8_SQUOTE] = ACTIONS(2140), [anon_sym_SQUOTE] = ACTIONS(2140), [anon_sym_L_DQUOTE] = ACTIONS(2140), [anon_sym_u_DQUOTE] = ACTIONS(2140), [anon_sym_U_DQUOTE] = ACTIONS(2140), [anon_sym_u8_DQUOTE] = ACTIONS(2140), [anon_sym_DQUOTE] = ACTIONS(2140), [sym_true] = ACTIONS(2138), [sym_false] = ACTIONS(2138), [sym_null] = ACTIONS(2138), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2138), [anon_sym_virtual] = ACTIONS(2138), [anon_sym_explicit] = ACTIONS(2138), [sym_auto] = ACTIONS(2138), [anon_sym_typename] = ACTIONS(2138), [anon_sym_template] = ACTIONS(2138), [anon_sym_operator] = ACTIONS(2138), [anon_sym_delete] = ACTIONS(2138), [anon_sym_throw] = ACTIONS(2138), [anon_sym_namespace] = ACTIONS(2138), [anon_sym_using] = ACTIONS(2138), [anon_sym_static_assert] = ACTIONS(2138), [anon_sym_co_return] = ACTIONS(2138), [anon_sym_co_yield] = ACTIONS(2138), [anon_sym_try] = ACTIONS(2138), [anon_sym_co_await] = ACTIONS(2138), [anon_sym_new] = ACTIONS(2138), [sym_this] = ACTIONS(2138), [sym_nullptr] = ACTIONS(2138), [sym_raw_string_literal] = ACTIONS(2140), }, [766] = { [sym_identifier] = ACTIONS(2138), [aux_sym_preproc_include_token1] = ACTIONS(2138), [aux_sym_preproc_def_token1] = ACTIONS(2138), [aux_sym_preproc_if_token1] = ACTIONS(2138), [aux_sym_preproc_ifdef_token1] = ACTIONS(2138), [aux_sym_preproc_ifdef_token2] = ACTIONS(2138), [sym_preproc_directive] = ACTIONS(2138), [anon_sym_LPAREN2] = ACTIONS(2140), [anon_sym_BANG] = ACTIONS(2140), [anon_sym_TILDE] = ACTIONS(2140), [anon_sym_DASH] = ACTIONS(2138), [anon_sym_PLUS] = ACTIONS(2138), [anon_sym_STAR] = ACTIONS(2140), [anon_sym_AMP_AMP] = ACTIONS(2140), [anon_sym_AMP] = ACTIONS(2138), [anon_sym_SEMI] = ACTIONS(2140), [anon_sym_typedef] = ACTIONS(2138), [anon_sym_extern] = ACTIONS(2138), [anon_sym___attribute__] = ACTIONS(2138), [anon_sym_COLON_COLON] = ACTIONS(2140), [anon_sym_LBRACK_LBRACK] = ACTIONS(2140), [anon_sym___declspec] = ACTIONS(2138), [anon_sym___based] = ACTIONS(2138), [anon_sym___cdecl] = ACTIONS(2138), [anon_sym___clrcall] = ACTIONS(2138), [anon_sym___stdcall] = ACTIONS(2138), [anon_sym___fastcall] = ACTIONS(2138), [anon_sym___thiscall] = ACTIONS(2138), [anon_sym___vectorcall] = ACTIONS(2138), [anon_sym_LBRACE] = ACTIONS(2140), [anon_sym_RBRACE] = ACTIONS(2140), [anon_sym_LBRACK] = ACTIONS(2138), [anon_sym_static] = ACTIONS(2138), [anon_sym_register] = ACTIONS(2138), [anon_sym_inline] = ACTIONS(2138), [anon_sym_thread_local] = ACTIONS(2138), [anon_sym_const] = ACTIONS(2138), [anon_sym_volatile] = ACTIONS(2138), [anon_sym_restrict] = ACTIONS(2138), [anon_sym__Atomic] = ACTIONS(2138), [anon_sym_mutable] = ACTIONS(2138), [anon_sym_constexpr] = ACTIONS(2138), [anon_sym_signed] = ACTIONS(2138), [anon_sym_unsigned] = ACTIONS(2138), [anon_sym_long] = ACTIONS(2138), [anon_sym_short] = ACTIONS(2138), [sym_primitive_type] = ACTIONS(2138), [anon_sym_enum] = ACTIONS(2138), [anon_sym_class] = ACTIONS(2138), [anon_sym_struct] = ACTIONS(2138), [anon_sym_union] = ACTIONS(2138), [anon_sym_if] = ACTIONS(2138), [anon_sym_switch] = ACTIONS(2138), [anon_sym_case] = ACTIONS(2138), [anon_sym_default] = ACTIONS(2138), [anon_sym_while] = ACTIONS(2138), [anon_sym_do] = ACTIONS(2138), [anon_sym_for] = ACTIONS(2138), [anon_sym_return] = ACTIONS(2138), [anon_sym_break] = ACTIONS(2138), [anon_sym_continue] = ACTIONS(2138), [anon_sym_goto] = ACTIONS(2138), [anon_sym_DASH_DASH] = ACTIONS(2140), [anon_sym_PLUS_PLUS] = ACTIONS(2140), [anon_sym_sizeof] = ACTIONS(2138), [sym_number_literal] = ACTIONS(2140), [anon_sym_L_SQUOTE] = ACTIONS(2140), [anon_sym_u_SQUOTE] = ACTIONS(2140), [anon_sym_U_SQUOTE] = ACTIONS(2140), [anon_sym_u8_SQUOTE] = ACTIONS(2140), [anon_sym_SQUOTE] = ACTIONS(2140), [anon_sym_L_DQUOTE] = ACTIONS(2140), [anon_sym_u_DQUOTE] = ACTIONS(2140), [anon_sym_U_DQUOTE] = ACTIONS(2140), [anon_sym_u8_DQUOTE] = ACTIONS(2140), [anon_sym_DQUOTE] = ACTIONS(2140), [sym_true] = ACTIONS(2138), [sym_false] = ACTIONS(2138), [sym_null] = ACTIONS(2138), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2138), [anon_sym_virtual] = ACTIONS(2138), [anon_sym_explicit] = ACTIONS(2138), [sym_auto] = ACTIONS(2138), [anon_sym_typename] = ACTIONS(2138), [anon_sym_template] = ACTIONS(2138), [anon_sym_operator] = ACTIONS(2138), [anon_sym_delete] = ACTIONS(2138), [anon_sym_throw] = ACTIONS(2138), [anon_sym_namespace] = ACTIONS(2138), [anon_sym_using] = ACTIONS(2138), [anon_sym_static_assert] = ACTIONS(2138), [anon_sym_co_return] = ACTIONS(2138), [anon_sym_co_yield] = ACTIONS(2138), [anon_sym_try] = ACTIONS(2138), [anon_sym_co_await] = ACTIONS(2138), [anon_sym_new] = ACTIONS(2138), [sym_this] = ACTIONS(2138), [sym_nullptr] = ACTIONS(2138), [sym_raw_string_literal] = ACTIONS(2140), }, [767] = { [ts_builtin_sym_end] = ACTIONS(2196), [sym_identifier] = ACTIONS(2194), [aux_sym_preproc_include_token1] = ACTIONS(2194), [aux_sym_preproc_def_token1] = ACTIONS(2194), [aux_sym_preproc_if_token1] = ACTIONS(2194), [aux_sym_preproc_ifdef_token1] = ACTIONS(2194), [aux_sym_preproc_ifdef_token2] = ACTIONS(2194), [sym_preproc_directive] = ACTIONS(2194), [anon_sym_LPAREN2] = ACTIONS(2196), [anon_sym_BANG] = ACTIONS(2196), [anon_sym_TILDE] = ACTIONS(2196), [anon_sym_DASH] = ACTIONS(2194), [anon_sym_PLUS] = ACTIONS(2194), [anon_sym_STAR] = ACTIONS(2196), [anon_sym_AMP_AMP] = ACTIONS(2196), [anon_sym_AMP] = ACTIONS(2194), [anon_sym_SEMI] = ACTIONS(2196), [anon_sym_typedef] = ACTIONS(2194), [anon_sym_extern] = ACTIONS(2194), [anon_sym___attribute__] = ACTIONS(2194), [anon_sym_COLON_COLON] = ACTIONS(2196), [anon_sym_LBRACK_LBRACK] = ACTIONS(2196), [anon_sym___declspec] = ACTIONS(2194), [anon_sym___based] = ACTIONS(2194), [anon_sym___cdecl] = ACTIONS(2194), [anon_sym___clrcall] = ACTIONS(2194), [anon_sym___stdcall] = ACTIONS(2194), [anon_sym___fastcall] = ACTIONS(2194), [anon_sym___thiscall] = ACTIONS(2194), [anon_sym___vectorcall] = ACTIONS(2194), [anon_sym_LBRACE] = ACTIONS(2196), [anon_sym_LBRACK] = ACTIONS(2194), [anon_sym_static] = ACTIONS(2194), [anon_sym_register] = ACTIONS(2194), [anon_sym_inline] = ACTIONS(2194), [anon_sym_thread_local] = ACTIONS(2194), [anon_sym_const] = ACTIONS(2194), [anon_sym_volatile] = ACTIONS(2194), [anon_sym_restrict] = ACTIONS(2194), [anon_sym__Atomic] = ACTIONS(2194), [anon_sym_mutable] = ACTIONS(2194), [anon_sym_constexpr] = ACTIONS(2194), [anon_sym_signed] = ACTIONS(2194), [anon_sym_unsigned] = ACTIONS(2194), [anon_sym_long] = ACTIONS(2194), [anon_sym_short] = ACTIONS(2194), [sym_primitive_type] = ACTIONS(2194), [anon_sym_enum] = ACTIONS(2194), [anon_sym_class] = ACTIONS(2194), [anon_sym_struct] = ACTIONS(2194), [anon_sym_union] = ACTIONS(2194), [anon_sym_if] = ACTIONS(2194), [anon_sym_switch] = ACTIONS(2194), [anon_sym_case] = ACTIONS(2194), [anon_sym_default] = ACTIONS(2194), [anon_sym_while] = ACTIONS(2194), [anon_sym_do] = ACTIONS(2194), [anon_sym_for] = ACTIONS(2194), [anon_sym_return] = ACTIONS(2194), [anon_sym_break] = ACTIONS(2194), [anon_sym_continue] = ACTIONS(2194), [anon_sym_goto] = ACTIONS(2194), [anon_sym_DASH_DASH] = ACTIONS(2196), [anon_sym_PLUS_PLUS] = ACTIONS(2196), [anon_sym_sizeof] = ACTIONS(2194), [sym_number_literal] = ACTIONS(2196), [anon_sym_L_SQUOTE] = ACTIONS(2196), [anon_sym_u_SQUOTE] = ACTIONS(2196), [anon_sym_U_SQUOTE] = ACTIONS(2196), [anon_sym_u8_SQUOTE] = ACTIONS(2196), [anon_sym_SQUOTE] = ACTIONS(2196), [anon_sym_L_DQUOTE] = ACTIONS(2196), [anon_sym_u_DQUOTE] = ACTIONS(2196), [anon_sym_U_DQUOTE] = ACTIONS(2196), [anon_sym_u8_DQUOTE] = ACTIONS(2196), [anon_sym_DQUOTE] = ACTIONS(2196), [sym_true] = ACTIONS(2194), [sym_false] = ACTIONS(2194), [sym_null] = ACTIONS(2194), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2194), [anon_sym_virtual] = ACTIONS(2194), [anon_sym_explicit] = ACTIONS(2194), [sym_auto] = ACTIONS(2194), [anon_sym_typename] = ACTIONS(2194), [anon_sym_template] = ACTIONS(2194), [anon_sym_operator] = ACTIONS(2194), [anon_sym_delete] = ACTIONS(2194), [anon_sym_throw] = ACTIONS(2194), [anon_sym_namespace] = ACTIONS(2194), [anon_sym_using] = ACTIONS(2194), [anon_sym_static_assert] = ACTIONS(2194), [anon_sym_co_return] = ACTIONS(2194), [anon_sym_co_yield] = ACTIONS(2194), [anon_sym_try] = ACTIONS(2194), [anon_sym_co_await] = ACTIONS(2194), [anon_sym_new] = ACTIONS(2194), [sym_this] = ACTIONS(2194), [sym_nullptr] = ACTIONS(2194), [sym_raw_string_literal] = ACTIONS(2196), }, [768] = { [sym_identifier] = ACTIONS(2130), [aux_sym_preproc_include_token1] = ACTIONS(2130), [aux_sym_preproc_def_token1] = ACTIONS(2130), [aux_sym_preproc_if_token1] = ACTIONS(2130), [aux_sym_preproc_if_token2] = ACTIONS(2130), [aux_sym_preproc_ifdef_token1] = ACTIONS(2130), [aux_sym_preproc_ifdef_token2] = ACTIONS(2130), [sym_preproc_directive] = ACTIONS(2130), [anon_sym_LPAREN2] = ACTIONS(2132), [anon_sym_BANG] = ACTIONS(2132), [anon_sym_TILDE] = ACTIONS(2132), [anon_sym_DASH] = ACTIONS(2130), [anon_sym_PLUS] = ACTIONS(2130), [anon_sym_STAR] = ACTIONS(2132), [anon_sym_AMP_AMP] = ACTIONS(2132), [anon_sym_AMP] = ACTIONS(2130), [anon_sym_SEMI] = ACTIONS(2132), [anon_sym_typedef] = ACTIONS(2130), [anon_sym_extern] = ACTIONS(2130), [anon_sym___attribute__] = ACTIONS(2130), [anon_sym_COLON_COLON] = ACTIONS(2132), [anon_sym_LBRACK_LBRACK] = ACTIONS(2132), [anon_sym___declspec] = ACTIONS(2130), [anon_sym___based] = ACTIONS(2130), [anon_sym___cdecl] = ACTIONS(2130), [anon_sym___clrcall] = ACTIONS(2130), [anon_sym___stdcall] = ACTIONS(2130), [anon_sym___fastcall] = ACTIONS(2130), [anon_sym___thiscall] = ACTIONS(2130), [anon_sym___vectorcall] = ACTIONS(2130), [anon_sym_LBRACE] = ACTIONS(2132), [anon_sym_LBRACK] = ACTIONS(2130), [anon_sym_static] = ACTIONS(2130), [anon_sym_register] = ACTIONS(2130), [anon_sym_inline] = ACTIONS(2130), [anon_sym_thread_local] = ACTIONS(2130), [anon_sym_const] = ACTIONS(2130), [anon_sym_volatile] = ACTIONS(2130), [anon_sym_restrict] = ACTIONS(2130), [anon_sym__Atomic] = ACTIONS(2130), [anon_sym_mutable] = ACTIONS(2130), [anon_sym_constexpr] = ACTIONS(2130), [anon_sym_signed] = ACTIONS(2130), [anon_sym_unsigned] = ACTIONS(2130), [anon_sym_long] = ACTIONS(2130), [anon_sym_short] = ACTIONS(2130), [sym_primitive_type] = ACTIONS(2130), [anon_sym_enum] = ACTIONS(2130), [anon_sym_class] = ACTIONS(2130), [anon_sym_struct] = ACTIONS(2130), [anon_sym_union] = ACTIONS(2130), [anon_sym_if] = ACTIONS(2130), [anon_sym_switch] = ACTIONS(2130), [anon_sym_case] = ACTIONS(2130), [anon_sym_default] = ACTIONS(2130), [anon_sym_while] = ACTIONS(2130), [anon_sym_do] = ACTIONS(2130), [anon_sym_for] = ACTIONS(2130), [anon_sym_return] = ACTIONS(2130), [anon_sym_break] = ACTIONS(2130), [anon_sym_continue] = ACTIONS(2130), [anon_sym_goto] = ACTIONS(2130), [anon_sym_DASH_DASH] = ACTIONS(2132), [anon_sym_PLUS_PLUS] = ACTIONS(2132), [anon_sym_sizeof] = ACTIONS(2130), [sym_number_literal] = ACTIONS(2132), [anon_sym_L_SQUOTE] = ACTIONS(2132), [anon_sym_u_SQUOTE] = ACTIONS(2132), [anon_sym_U_SQUOTE] = ACTIONS(2132), [anon_sym_u8_SQUOTE] = ACTIONS(2132), [anon_sym_SQUOTE] = ACTIONS(2132), [anon_sym_L_DQUOTE] = ACTIONS(2132), [anon_sym_u_DQUOTE] = ACTIONS(2132), [anon_sym_U_DQUOTE] = ACTIONS(2132), [anon_sym_u8_DQUOTE] = ACTIONS(2132), [anon_sym_DQUOTE] = ACTIONS(2132), [sym_true] = ACTIONS(2130), [sym_false] = ACTIONS(2130), [sym_null] = ACTIONS(2130), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2130), [anon_sym_virtual] = ACTIONS(2130), [anon_sym_explicit] = ACTIONS(2130), [sym_auto] = ACTIONS(2130), [anon_sym_typename] = ACTIONS(2130), [anon_sym_template] = ACTIONS(2130), [anon_sym_operator] = ACTIONS(2130), [anon_sym_delete] = ACTIONS(2130), [anon_sym_throw] = ACTIONS(2130), [anon_sym_namespace] = ACTIONS(2130), [anon_sym_using] = ACTIONS(2130), [anon_sym_static_assert] = ACTIONS(2130), [anon_sym_co_return] = ACTIONS(2130), [anon_sym_co_yield] = ACTIONS(2130), [anon_sym_try] = ACTIONS(2130), [anon_sym_co_await] = ACTIONS(2130), [anon_sym_new] = ACTIONS(2130), [sym_this] = ACTIONS(2130), [sym_nullptr] = ACTIONS(2130), [sym_raw_string_literal] = ACTIONS(2132), }, [769] = { [sym_identifier] = ACTIONS(2206), [aux_sym_preproc_include_token1] = ACTIONS(2206), [aux_sym_preproc_def_token1] = ACTIONS(2206), [aux_sym_preproc_if_token1] = ACTIONS(2206), [aux_sym_preproc_if_token2] = ACTIONS(2206), [aux_sym_preproc_ifdef_token1] = ACTIONS(2206), [aux_sym_preproc_ifdef_token2] = ACTIONS(2206), [sym_preproc_directive] = ACTIONS(2206), [anon_sym_LPAREN2] = ACTIONS(2208), [anon_sym_BANG] = ACTIONS(2208), [anon_sym_TILDE] = ACTIONS(2208), [anon_sym_DASH] = ACTIONS(2206), [anon_sym_PLUS] = ACTIONS(2206), [anon_sym_STAR] = ACTIONS(2208), [anon_sym_AMP_AMP] = ACTIONS(2208), [anon_sym_AMP] = ACTIONS(2206), [anon_sym_SEMI] = ACTIONS(2208), [anon_sym_typedef] = ACTIONS(2206), [anon_sym_extern] = ACTIONS(2206), [anon_sym___attribute__] = ACTIONS(2206), [anon_sym_COLON_COLON] = ACTIONS(2208), [anon_sym_LBRACK_LBRACK] = ACTIONS(2208), [anon_sym___declspec] = ACTIONS(2206), [anon_sym___based] = ACTIONS(2206), [anon_sym___cdecl] = ACTIONS(2206), [anon_sym___clrcall] = ACTIONS(2206), [anon_sym___stdcall] = ACTIONS(2206), [anon_sym___fastcall] = ACTIONS(2206), [anon_sym___thiscall] = ACTIONS(2206), [anon_sym___vectorcall] = ACTIONS(2206), [anon_sym_LBRACE] = ACTIONS(2208), [anon_sym_LBRACK] = ACTIONS(2206), [anon_sym_static] = ACTIONS(2206), [anon_sym_register] = ACTIONS(2206), [anon_sym_inline] = ACTIONS(2206), [anon_sym_thread_local] = ACTIONS(2206), [anon_sym_const] = ACTIONS(2206), [anon_sym_volatile] = ACTIONS(2206), [anon_sym_restrict] = ACTIONS(2206), [anon_sym__Atomic] = ACTIONS(2206), [anon_sym_mutable] = ACTIONS(2206), [anon_sym_constexpr] = ACTIONS(2206), [anon_sym_signed] = ACTIONS(2206), [anon_sym_unsigned] = ACTIONS(2206), [anon_sym_long] = ACTIONS(2206), [anon_sym_short] = ACTIONS(2206), [sym_primitive_type] = ACTIONS(2206), [anon_sym_enum] = ACTIONS(2206), [anon_sym_class] = ACTIONS(2206), [anon_sym_struct] = ACTIONS(2206), [anon_sym_union] = ACTIONS(2206), [anon_sym_if] = ACTIONS(2206), [anon_sym_switch] = ACTIONS(2206), [anon_sym_case] = ACTIONS(2206), [anon_sym_default] = ACTIONS(2206), [anon_sym_while] = ACTIONS(2206), [anon_sym_do] = ACTIONS(2206), [anon_sym_for] = ACTIONS(2206), [anon_sym_return] = ACTIONS(2206), [anon_sym_break] = ACTIONS(2206), [anon_sym_continue] = ACTIONS(2206), [anon_sym_goto] = ACTIONS(2206), [anon_sym_DASH_DASH] = ACTIONS(2208), [anon_sym_PLUS_PLUS] = ACTIONS(2208), [anon_sym_sizeof] = ACTIONS(2206), [sym_number_literal] = ACTIONS(2208), [anon_sym_L_SQUOTE] = ACTIONS(2208), [anon_sym_u_SQUOTE] = ACTIONS(2208), [anon_sym_U_SQUOTE] = ACTIONS(2208), [anon_sym_u8_SQUOTE] = ACTIONS(2208), [anon_sym_SQUOTE] = ACTIONS(2208), [anon_sym_L_DQUOTE] = ACTIONS(2208), [anon_sym_u_DQUOTE] = ACTIONS(2208), [anon_sym_U_DQUOTE] = ACTIONS(2208), [anon_sym_u8_DQUOTE] = ACTIONS(2208), [anon_sym_DQUOTE] = ACTIONS(2208), [sym_true] = ACTIONS(2206), [sym_false] = ACTIONS(2206), [sym_null] = ACTIONS(2206), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2206), [anon_sym_virtual] = ACTIONS(2206), [anon_sym_explicit] = ACTIONS(2206), [sym_auto] = ACTIONS(2206), [anon_sym_typename] = ACTIONS(2206), [anon_sym_template] = ACTIONS(2206), [anon_sym_operator] = ACTIONS(2206), [anon_sym_delete] = ACTIONS(2206), [anon_sym_throw] = ACTIONS(2206), [anon_sym_namespace] = ACTIONS(2206), [anon_sym_using] = ACTIONS(2206), [anon_sym_static_assert] = ACTIONS(2206), [anon_sym_co_return] = ACTIONS(2206), [anon_sym_co_yield] = ACTIONS(2206), [anon_sym_try] = ACTIONS(2206), [anon_sym_co_await] = ACTIONS(2206), [anon_sym_new] = ACTIONS(2206), [sym_this] = ACTIONS(2206), [sym_nullptr] = ACTIONS(2206), [sym_raw_string_literal] = ACTIONS(2208), }, [770] = { [sym_identifier] = ACTIONS(2198), [aux_sym_preproc_include_token1] = ACTIONS(2198), [aux_sym_preproc_def_token1] = ACTIONS(2198), [aux_sym_preproc_if_token1] = ACTIONS(2198), [aux_sym_preproc_if_token2] = ACTIONS(2198), [aux_sym_preproc_ifdef_token1] = ACTIONS(2198), [aux_sym_preproc_ifdef_token2] = ACTIONS(2198), [sym_preproc_directive] = ACTIONS(2198), [anon_sym_LPAREN2] = ACTIONS(2200), [anon_sym_BANG] = ACTIONS(2200), [anon_sym_TILDE] = ACTIONS(2200), [anon_sym_DASH] = ACTIONS(2198), [anon_sym_PLUS] = ACTIONS(2198), [anon_sym_STAR] = ACTIONS(2200), [anon_sym_AMP_AMP] = ACTIONS(2200), [anon_sym_AMP] = ACTIONS(2198), [anon_sym_SEMI] = ACTIONS(2200), [anon_sym_typedef] = ACTIONS(2198), [anon_sym_extern] = ACTIONS(2198), [anon_sym___attribute__] = ACTIONS(2198), [anon_sym_COLON_COLON] = ACTIONS(2200), [anon_sym_LBRACK_LBRACK] = ACTIONS(2200), [anon_sym___declspec] = ACTIONS(2198), [anon_sym___based] = ACTIONS(2198), [anon_sym___cdecl] = ACTIONS(2198), [anon_sym___clrcall] = ACTIONS(2198), [anon_sym___stdcall] = ACTIONS(2198), [anon_sym___fastcall] = ACTIONS(2198), [anon_sym___thiscall] = ACTIONS(2198), [anon_sym___vectorcall] = ACTIONS(2198), [anon_sym_LBRACE] = ACTIONS(2200), [anon_sym_LBRACK] = ACTIONS(2198), [anon_sym_static] = ACTIONS(2198), [anon_sym_register] = ACTIONS(2198), [anon_sym_inline] = ACTIONS(2198), [anon_sym_thread_local] = ACTIONS(2198), [anon_sym_const] = ACTIONS(2198), [anon_sym_volatile] = ACTIONS(2198), [anon_sym_restrict] = ACTIONS(2198), [anon_sym__Atomic] = ACTIONS(2198), [anon_sym_mutable] = ACTIONS(2198), [anon_sym_constexpr] = ACTIONS(2198), [anon_sym_signed] = ACTIONS(2198), [anon_sym_unsigned] = ACTIONS(2198), [anon_sym_long] = ACTIONS(2198), [anon_sym_short] = ACTIONS(2198), [sym_primitive_type] = ACTIONS(2198), [anon_sym_enum] = ACTIONS(2198), [anon_sym_class] = ACTIONS(2198), [anon_sym_struct] = ACTIONS(2198), [anon_sym_union] = ACTIONS(2198), [anon_sym_if] = ACTIONS(2198), [anon_sym_switch] = ACTIONS(2198), [anon_sym_case] = ACTIONS(2198), [anon_sym_default] = ACTIONS(2198), [anon_sym_while] = ACTIONS(2198), [anon_sym_do] = ACTIONS(2198), [anon_sym_for] = ACTIONS(2198), [anon_sym_return] = ACTIONS(2198), [anon_sym_break] = ACTIONS(2198), [anon_sym_continue] = ACTIONS(2198), [anon_sym_goto] = ACTIONS(2198), [anon_sym_DASH_DASH] = ACTIONS(2200), [anon_sym_PLUS_PLUS] = ACTIONS(2200), [anon_sym_sizeof] = ACTIONS(2198), [sym_number_literal] = ACTIONS(2200), [anon_sym_L_SQUOTE] = ACTIONS(2200), [anon_sym_u_SQUOTE] = ACTIONS(2200), [anon_sym_U_SQUOTE] = ACTIONS(2200), [anon_sym_u8_SQUOTE] = ACTIONS(2200), [anon_sym_SQUOTE] = ACTIONS(2200), [anon_sym_L_DQUOTE] = ACTIONS(2200), [anon_sym_u_DQUOTE] = ACTIONS(2200), [anon_sym_U_DQUOTE] = ACTIONS(2200), [anon_sym_u8_DQUOTE] = ACTIONS(2200), [anon_sym_DQUOTE] = ACTIONS(2200), [sym_true] = ACTIONS(2198), [sym_false] = ACTIONS(2198), [sym_null] = ACTIONS(2198), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2198), [anon_sym_virtual] = ACTIONS(2198), [anon_sym_explicit] = ACTIONS(2198), [sym_auto] = ACTIONS(2198), [anon_sym_typename] = ACTIONS(2198), [anon_sym_template] = ACTIONS(2198), [anon_sym_operator] = ACTIONS(2198), [anon_sym_delete] = ACTIONS(2198), [anon_sym_throw] = ACTIONS(2198), [anon_sym_namespace] = ACTIONS(2198), [anon_sym_using] = ACTIONS(2198), [anon_sym_static_assert] = ACTIONS(2198), [anon_sym_co_return] = ACTIONS(2198), [anon_sym_co_yield] = ACTIONS(2198), [anon_sym_try] = ACTIONS(2198), [anon_sym_co_await] = ACTIONS(2198), [anon_sym_new] = ACTIONS(2198), [sym_this] = ACTIONS(2198), [sym_nullptr] = ACTIONS(2198), [sym_raw_string_literal] = ACTIONS(2200), }, [771] = { [sym_identifier] = ACTIONS(2198), [aux_sym_preproc_include_token1] = ACTIONS(2198), [aux_sym_preproc_def_token1] = ACTIONS(2198), [aux_sym_preproc_if_token1] = ACTIONS(2198), [aux_sym_preproc_ifdef_token1] = ACTIONS(2198), [aux_sym_preproc_ifdef_token2] = ACTIONS(2198), [sym_preproc_directive] = ACTIONS(2198), [anon_sym_LPAREN2] = ACTIONS(2200), [anon_sym_BANG] = ACTIONS(2200), [anon_sym_TILDE] = ACTIONS(2200), [anon_sym_DASH] = ACTIONS(2198), [anon_sym_PLUS] = ACTIONS(2198), [anon_sym_STAR] = ACTIONS(2200), [anon_sym_AMP_AMP] = ACTIONS(2200), [anon_sym_AMP] = ACTIONS(2198), [anon_sym_SEMI] = ACTIONS(2200), [anon_sym_typedef] = ACTIONS(2198), [anon_sym_extern] = ACTIONS(2198), [anon_sym___attribute__] = ACTIONS(2198), [anon_sym_COLON_COLON] = ACTIONS(2200), [anon_sym_LBRACK_LBRACK] = ACTIONS(2200), [anon_sym___declspec] = ACTIONS(2198), [anon_sym___based] = ACTIONS(2198), [anon_sym___cdecl] = ACTIONS(2198), [anon_sym___clrcall] = ACTIONS(2198), [anon_sym___stdcall] = ACTIONS(2198), [anon_sym___fastcall] = ACTIONS(2198), [anon_sym___thiscall] = ACTIONS(2198), [anon_sym___vectorcall] = ACTIONS(2198), [anon_sym_LBRACE] = ACTIONS(2200), [anon_sym_RBRACE] = ACTIONS(2200), [anon_sym_LBRACK] = ACTIONS(2198), [anon_sym_static] = ACTIONS(2198), [anon_sym_register] = ACTIONS(2198), [anon_sym_inline] = ACTIONS(2198), [anon_sym_thread_local] = ACTIONS(2198), [anon_sym_const] = ACTIONS(2198), [anon_sym_volatile] = ACTIONS(2198), [anon_sym_restrict] = ACTIONS(2198), [anon_sym__Atomic] = ACTIONS(2198), [anon_sym_mutable] = ACTIONS(2198), [anon_sym_constexpr] = ACTIONS(2198), [anon_sym_signed] = ACTIONS(2198), [anon_sym_unsigned] = ACTIONS(2198), [anon_sym_long] = ACTIONS(2198), [anon_sym_short] = ACTIONS(2198), [sym_primitive_type] = ACTIONS(2198), [anon_sym_enum] = ACTIONS(2198), [anon_sym_class] = ACTIONS(2198), [anon_sym_struct] = ACTIONS(2198), [anon_sym_union] = ACTIONS(2198), [anon_sym_if] = ACTIONS(2198), [anon_sym_switch] = ACTIONS(2198), [anon_sym_case] = ACTIONS(2198), [anon_sym_default] = ACTIONS(2198), [anon_sym_while] = ACTIONS(2198), [anon_sym_do] = ACTIONS(2198), [anon_sym_for] = ACTIONS(2198), [anon_sym_return] = ACTIONS(2198), [anon_sym_break] = ACTIONS(2198), [anon_sym_continue] = ACTIONS(2198), [anon_sym_goto] = ACTIONS(2198), [anon_sym_DASH_DASH] = ACTIONS(2200), [anon_sym_PLUS_PLUS] = ACTIONS(2200), [anon_sym_sizeof] = ACTIONS(2198), [sym_number_literal] = ACTIONS(2200), [anon_sym_L_SQUOTE] = ACTIONS(2200), [anon_sym_u_SQUOTE] = ACTIONS(2200), [anon_sym_U_SQUOTE] = ACTIONS(2200), [anon_sym_u8_SQUOTE] = ACTIONS(2200), [anon_sym_SQUOTE] = ACTIONS(2200), [anon_sym_L_DQUOTE] = ACTIONS(2200), [anon_sym_u_DQUOTE] = ACTIONS(2200), [anon_sym_U_DQUOTE] = ACTIONS(2200), [anon_sym_u8_DQUOTE] = ACTIONS(2200), [anon_sym_DQUOTE] = ACTIONS(2200), [sym_true] = ACTIONS(2198), [sym_false] = ACTIONS(2198), [sym_null] = ACTIONS(2198), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2198), [anon_sym_virtual] = ACTIONS(2198), [anon_sym_explicit] = ACTIONS(2198), [sym_auto] = ACTIONS(2198), [anon_sym_typename] = ACTIONS(2198), [anon_sym_template] = ACTIONS(2198), [anon_sym_operator] = ACTIONS(2198), [anon_sym_delete] = ACTIONS(2198), [anon_sym_throw] = ACTIONS(2198), [anon_sym_namespace] = ACTIONS(2198), [anon_sym_using] = ACTIONS(2198), [anon_sym_static_assert] = ACTIONS(2198), [anon_sym_co_return] = ACTIONS(2198), [anon_sym_co_yield] = ACTIONS(2198), [anon_sym_try] = ACTIONS(2198), [anon_sym_co_await] = ACTIONS(2198), [anon_sym_new] = ACTIONS(2198), [sym_this] = ACTIONS(2198), [sym_nullptr] = ACTIONS(2198), [sym_raw_string_literal] = ACTIONS(2200), }, [772] = { [sym_identifier] = ACTIONS(2194), [aux_sym_preproc_include_token1] = ACTIONS(2194), [aux_sym_preproc_def_token1] = ACTIONS(2194), [aux_sym_preproc_if_token1] = ACTIONS(2194), [aux_sym_preproc_if_token2] = ACTIONS(2194), [aux_sym_preproc_ifdef_token1] = ACTIONS(2194), [aux_sym_preproc_ifdef_token2] = ACTIONS(2194), [sym_preproc_directive] = ACTIONS(2194), [anon_sym_LPAREN2] = ACTIONS(2196), [anon_sym_BANG] = ACTIONS(2196), [anon_sym_TILDE] = ACTIONS(2196), [anon_sym_DASH] = ACTIONS(2194), [anon_sym_PLUS] = ACTIONS(2194), [anon_sym_STAR] = ACTIONS(2196), [anon_sym_AMP_AMP] = ACTIONS(2196), [anon_sym_AMP] = ACTIONS(2194), [anon_sym_SEMI] = ACTIONS(2196), [anon_sym_typedef] = ACTIONS(2194), [anon_sym_extern] = ACTIONS(2194), [anon_sym___attribute__] = ACTIONS(2194), [anon_sym_COLON_COLON] = ACTIONS(2196), [anon_sym_LBRACK_LBRACK] = ACTIONS(2196), [anon_sym___declspec] = ACTIONS(2194), [anon_sym___based] = ACTIONS(2194), [anon_sym___cdecl] = ACTIONS(2194), [anon_sym___clrcall] = ACTIONS(2194), [anon_sym___stdcall] = ACTIONS(2194), [anon_sym___fastcall] = ACTIONS(2194), [anon_sym___thiscall] = ACTIONS(2194), [anon_sym___vectorcall] = ACTIONS(2194), [anon_sym_LBRACE] = ACTIONS(2196), [anon_sym_LBRACK] = ACTIONS(2194), [anon_sym_static] = ACTIONS(2194), [anon_sym_register] = ACTIONS(2194), [anon_sym_inline] = ACTIONS(2194), [anon_sym_thread_local] = ACTIONS(2194), [anon_sym_const] = ACTIONS(2194), [anon_sym_volatile] = ACTIONS(2194), [anon_sym_restrict] = ACTIONS(2194), [anon_sym__Atomic] = ACTIONS(2194), [anon_sym_mutable] = ACTIONS(2194), [anon_sym_constexpr] = ACTIONS(2194), [anon_sym_signed] = ACTIONS(2194), [anon_sym_unsigned] = ACTIONS(2194), [anon_sym_long] = ACTIONS(2194), [anon_sym_short] = ACTIONS(2194), [sym_primitive_type] = ACTIONS(2194), [anon_sym_enum] = ACTIONS(2194), [anon_sym_class] = ACTIONS(2194), [anon_sym_struct] = ACTIONS(2194), [anon_sym_union] = ACTIONS(2194), [anon_sym_if] = ACTIONS(2194), [anon_sym_switch] = ACTIONS(2194), [anon_sym_case] = ACTIONS(2194), [anon_sym_default] = ACTIONS(2194), [anon_sym_while] = ACTIONS(2194), [anon_sym_do] = ACTIONS(2194), [anon_sym_for] = ACTIONS(2194), [anon_sym_return] = ACTIONS(2194), [anon_sym_break] = ACTIONS(2194), [anon_sym_continue] = ACTIONS(2194), [anon_sym_goto] = ACTIONS(2194), [anon_sym_DASH_DASH] = ACTIONS(2196), [anon_sym_PLUS_PLUS] = ACTIONS(2196), [anon_sym_sizeof] = ACTIONS(2194), [sym_number_literal] = ACTIONS(2196), [anon_sym_L_SQUOTE] = ACTIONS(2196), [anon_sym_u_SQUOTE] = ACTIONS(2196), [anon_sym_U_SQUOTE] = ACTIONS(2196), [anon_sym_u8_SQUOTE] = ACTIONS(2196), [anon_sym_SQUOTE] = ACTIONS(2196), [anon_sym_L_DQUOTE] = ACTIONS(2196), [anon_sym_u_DQUOTE] = ACTIONS(2196), [anon_sym_U_DQUOTE] = ACTIONS(2196), [anon_sym_u8_DQUOTE] = ACTIONS(2196), [anon_sym_DQUOTE] = ACTIONS(2196), [sym_true] = ACTIONS(2194), [sym_false] = ACTIONS(2194), [sym_null] = ACTIONS(2194), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2194), [anon_sym_virtual] = ACTIONS(2194), [anon_sym_explicit] = ACTIONS(2194), [sym_auto] = ACTIONS(2194), [anon_sym_typename] = ACTIONS(2194), [anon_sym_template] = ACTIONS(2194), [anon_sym_operator] = ACTIONS(2194), [anon_sym_delete] = ACTIONS(2194), [anon_sym_throw] = ACTIONS(2194), [anon_sym_namespace] = ACTIONS(2194), [anon_sym_using] = ACTIONS(2194), [anon_sym_static_assert] = ACTIONS(2194), [anon_sym_co_return] = ACTIONS(2194), [anon_sym_co_yield] = ACTIONS(2194), [anon_sym_try] = ACTIONS(2194), [anon_sym_co_await] = ACTIONS(2194), [anon_sym_new] = ACTIONS(2194), [sym_this] = ACTIONS(2194), [sym_nullptr] = ACTIONS(2194), [sym_raw_string_literal] = ACTIONS(2196), }, [773] = { [sym_identifier] = ACTIONS(2194), [aux_sym_preproc_include_token1] = ACTIONS(2194), [aux_sym_preproc_def_token1] = ACTIONS(2194), [aux_sym_preproc_if_token1] = ACTIONS(2194), [aux_sym_preproc_ifdef_token1] = ACTIONS(2194), [aux_sym_preproc_ifdef_token2] = ACTIONS(2194), [sym_preproc_directive] = ACTIONS(2194), [anon_sym_LPAREN2] = ACTIONS(2196), [anon_sym_BANG] = ACTIONS(2196), [anon_sym_TILDE] = ACTIONS(2196), [anon_sym_DASH] = ACTIONS(2194), [anon_sym_PLUS] = ACTIONS(2194), [anon_sym_STAR] = ACTIONS(2196), [anon_sym_AMP_AMP] = ACTIONS(2196), [anon_sym_AMP] = ACTIONS(2194), [anon_sym_SEMI] = ACTIONS(2196), [anon_sym_typedef] = ACTIONS(2194), [anon_sym_extern] = ACTIONS(2194), [anon_sym___attribute__] = ACTIONS(2194), [anon_sym_COLON_COLON] = ACTIONS(2196), [anon_sym_LBRACK_LBRACK] = ACTIONS(2196), [anon_sym___declspec] = ACTIONS(2194), [anon_sym___based] = ACTIONS(2194), [anon_sym___cdecl] = ACTIONS(2194), [anon_sym___clrcall] = ACTIONS(2194), [anon_sym___stdcall] = ACTIONS(2194), [anon_sym___fastcall] = ACTIONS(2194), [anon_sym___thiscall] = ACTIONS(2194), [anon_sym___vectorcall] = ACTIONS(2194), [anon_sym_LBRACE] = ACTIONS(2196), [anon_sym_RBRACE] = ACTIONS(2196), [anon_sym_LBRACK] = ACTIONS(2194), [anon_sym_static] = ACTIONS(2194), [anon_sym_register] = ACTIONS(2194), [anon_sym_inline] = ACTIONS(2194), [anon_sym_thread_local] = ACTIONS(2194), [anon_sym_const] = ACTIONS(2194), [anon_sym_volatile] = ACTIONS(2194), [anon_sym_restrict] = ACTIONS(2194), [anon_sym__Atomic] = ACTIONS(2194), [anon_sym_mutable] = ACTIONS(2194), [anon_sym_constexpr] = ACTIONS(2194), [anon_sym_signed] = ACTIONS(2194), [anon_sym_unsigned] = ACTIONS(2194), [anon_sym_long] = ACTIONS(2194), [anon_sym_short] = ACTIONS(2194), [sym_primitive_type] = ACTIONS(2194), [anon_sym_enum] = ACTIONS(2194), [anon_sym_class] = ACTIONS(2194), [anon_sym_struct] = ACTIONS(2194), [anon_sym_union] = ACTIONS(2194), [anon_sym_if] = ACTIONS(2194), [anon_sym_switch] = ACTIONS(2194), [anon_sym_case] = ACTIONS(2194), [anon_sym_default] = ACTIONS(2194), [anon_sym_while] = ACTIONS(2194), [anon_sym_do] = ACTIONS(2194), [anon_sym_for] = ACTIONS(2194), [anon_sym_return] = ACTIONS(2194), [anon_sym_break] = ACTIONS(2194), [anon_sym_continue] = ACTIONS(2194), [anon_sym_goto] = ACTIONS(2194), [anon_sym_DASH_DASH] = ACTIONS(2196), [anon_sym_PLUS_PLUS] = ACTIONS(2196), [anon_sym_sizeof] = ACTIONS(2194), [sym_number_literal] = ACTIONS(2196), [anon_sym_L_SQUOTE] = ACTIONS(2196), [anon_sym_u_SQUOTE] = ACTIONS(2196), [anon_sym_U_SQUOTE] = ACTIONS(2196), [anon_sym_u8_SQUOTE] = ACTIONS(2196), [anon_sym_SQUOTE] = ACTIONS(2196), [anon_sym_L_DQUOTE] = ACTIONS(2196), [anon_sym_u_DQUOTE] = ACTIONS(2196), [anon_sym_U_DQUOTE] = ACTIONS(2196), [anon_sym_u8_DQUOTE] = ACTIONS(2196), [anon_sym_DQUOTE] = ACTIONS(2196), [sym_true] = ACTIONS(2194), [sym_false] = ACTIONS(2194), [sym_null] = ACTIONS(2194), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2194), [anon_sym_virtual] = ACTIONS(2194), [anon_sym_explicit] = ACTIONS(2194), [sym_auto] = ACTIONS(2194), [anon_sym_typename] = ACTIONS(2194), [anon_sym_template] = ACTIONS(2194), [anon_sym_operator] = ACTIONS(2194), [anon_sym_delete] = ACTIONS(2194), [anon_sym_throw] = ACTIONS(2194), [anon_sym_namespace] = ACTIONS(2194), [anon_sym_using] = ACTIONS(2194), [anon_sym_static_assert] = ACTIONS(2194), [anon_sym_co_return] = ACTIONS(2194), [anon_sym_co_yield] = ACTIONS(2194), [anon_sym_try] = ACTIONS(2194), [anon_sym_co_await] = ACTIONS(2194), [anon_sym_new] = ACTIONS(2194), [sym_this] = ACTIONS(2194), [sym_nullptr] = ACTIONS(2194), [sym_raw_string_literal] = ACTIONS(2196), }, [774] = { [ts_builtin_sym_end] = ACTIONS(2056), [sym_identifier] = ACTIONS(2054), [aux_sym_preproc_include_token1] = ACTIONS(2054), [aux_sym_preproc_def_token1] = ACTIONS(2054), [aux_sym_preproc_if_token1] = ACTIONS(2054), [aux_sym_preproc_ifdef_token1] = ACTIONS(2054), [aux_sym_preproc_ifdef_token2] = ACTIONS(2054), [sym_preproc_directive] = ACTIONS(2054), [anon_sym_LPAREN2] = ACTIONS(2056), [anon_sym_BANG] = ACTIONS(2056), [anon_sym_TILDE] = ACTIONS(2056), [anon_sym_DASH] = ACTIONS(2054), [anon_sym_PLUS] = ACTIONS(2054), [anon_sym_STAR] = ACTIONS(2056), [anon_sym_AMP_AMP] = ACTIONS(2056), [anon_sym_AMP] = ACTIONS(2054), [anon_sym_SEMI] = ACTIONS(2056), [anon_sym_typedef] = ACTIONS(2054), [anon_sym_extern] = ACTIONS(2054), [anon_sym___attribute__] = ACTIONS(2054), [anon_sym_COLON_COLON] = ACTIONS(2056), [anon_sym_LBRACK_LBRACK] = ACTIONS(2056), [anon_sym___declspec] = ACTIONS(2054), [anon_sym___based] = ACTIONS(2054), [anon_sym___cdecl] = ACTIONS(2054), [anon_sym___clrcall] = ACTIONS(2054), [anon_sym___stdcall] = ACTIONS(2054), [anon_sym___fastcall] = ACTIONS(2054), [anon_sym___thiscall] = ACTIONS(2054), [anon_sym___vectorcall] = ACTIONS(2054), [anon_sym_LBRACE] = ACTIONS(2056), [anon_sym_LBRACK] = ACTIONS(2054), [anon_sym_static] = ACTIONS(2054), [anon_sym_register] = ACTIONS(2054), [anon_sym_inline] = ACTIONS(2054), [anon_sym_thread_local] = ACTIONS(2054), [anon_sym_const] = ACTIONS(2054), [anon_sym_volatile] = ACTIONS(2054), [anon_sym_restrict] = ACTIONS(2054), [anon_sym__Atomic] = ACTIONS(2054), [anon_sym_mutable] = ACTIONS(2054), [anon_sym_constexpr] = ACTIONS(2054), [anon_sym_signed] = ACTIONS(2054), [anon_sym_unsigned] = ACTIONS(2054), [anon_sym_long] = ACTIONS(2054), [anon_sym_short] = ACTIONS(2054), [sym_primitive_type] = ACTIONS(2054), [anon_sym_enum] = ACTIONS(2054), [anon_sym_class] = ACTIONS(2054), [anon_sym_struct] = ACTIONS(2054), [anon_sym_union] = ACTIONS(2054), [anon_sym_if] = ACTIONS(2054), [anon_sym_switch] = ACTIONS(2054), [anon_sym_case] = ACTIONS(2054), [anon_sym_default] = ACTIONS(2054), [anon_sym_while] = ACTIONS(2054), [anon_sym_do] = ACTIONS(2054), [anon_sym_for] = ACTIONS(2054), [anon_sym_return] = ACTIONS(2054), [anon_sym_break] = ACTIONS(2054), [anon_sym_continue] = ACTIONS(2054), [anon_sym_goto] = ACTIONS(2054), [anon_sym_DASH_DASH] = ACTIONS(2056), [anon_sym_PLUS_PLUS] = ACTIONS(2056), [anon_sym_sizeof] = ACTIONS(2054), [sym_number_literal] = ACTIONS(2056), [anon_sym_L_SQUOTE] = ACTIONS(2056), [anon_sym_u_SQUOTE] = ACTIONS(2056), [anon_sym_U_SQUOTE] = ACTIONS(2056), [anon_sym_u8_SQUOTE] = ACTIONS(2056), [anon_sym_SQUOTE] = ACTIONS(2056), [anon_sym_L_DQUOTE] = ACTIONS(2056), [anon_sym_u_DQUOTE] = ACTIONS(2056), [anon_sym_U_DQUOTE] = ACTIONS(2056), [anon_sym_u8_DQUOTE] = ACTIONS(2056), [anon_sym_DQUOTE] = ACTIONS(2056), [sym_true] = ACTIONS(2054), [sym_false] = ACTIONS(2054), [sym_null] = ACTIONS(2054), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2054), [anon_sym_virtual] = ACTIONS(2054), [anon_sym_explicit] = ACTIONS(2054), [sym_auto] = ACTIONS(2054), [anon_sym_typename] = ACTIONS(2054), [anon_sym_template] = ACTIONS(2054), [anon_sym_operator] = ACTIONS(2054), [anon_sym_delete] = ACTIONS(2054), [anon_sym_throw] = ACTIONS(2054), [anon_sym_namespace] = ACTIONS(2054), [anon_sym_using] = ACTIONS(2054), [anon_sym_static_assert] = ACTIONS(2054), [anon_sym_co_return] = ACTIONS(2054), [anon_sym_co_yield] = ACTIONS(2054), [anon_sym_try] = ACTIONS(2054), [anon_sym_co_await] = ACTIONS(2054), [anon_sym_new] = ACTIONS(2054), [sym_this] = ACTIONS(2054), [sym_nullptr] = ACTIONS(2054), [sym_raw_string_literal] = ACTIONS(2056), }, [775] = { [ts_builtin_sym_end] = ACTIONS(2200), [sym_identifier] = ACTIONS(2198), [aux_sym_preproc_include_token1] = ACTIONS(2198), [aux_sym_preproc_def_token1] = ACTIONS(2198), [aux_sym_preproc_if_token1] = ACTIONS(2198), [aux_sym_preproc_ifdef_token1] = ACTIONS(2198), [aux_sym_preproc_ifdef_token2] = ACTIONS(2198), [sym_preproc_directive] = ACTIONS(2198), [anon_sym_LPAREN2] = ACTIONS(2200), [anon_sym_BANG] = ACTIONS(2200), [anon_sym_TILDE] = ACTIONS(2200), [anon_sym_DASH] = ACTIONS(2198), [anon_sym_PLUS] = ACTIONS(2198), [anon_sym_STAR] = ACTIONS(2200), [anon_sym_AMP_AMP] = ACTIONS(2200), [anon_sym_AMP] = ACTIONS(2198), [anon_sym_SEMI] = ACTIONS(2200), [anon_sym_typedef] = ACTIONS(2198), [anon_sym_extern] = ACTIONS(2198), [anon_sym___attribute__] = ACTIONS(2198), [anon_sym_COLON_COLON] = ACTIONS(2200), [anon_sym_LBRACK_LBRACK] = ACTIONS(2200), [anon_sym___declspec] = ACTIONS(2198), [anon_sym___based] = ACTIONS(2198), [anon_sym___cdecl] = ACTIONS(2198), [anon_sym___clrcall] = ACTIONS(2198), [anon_sym___stdcall] = ACTIONS(2198), [anon_sym___fastcall] = ACTIONS(2198), [anon_sym___thiscall] = ACTIONS(2198), [anon_sym___vectorcall] = ACTIONS(2198), [anon_sym_LBRACE] = ACTIONS(2200), [anon_sym_LBRACK] = ACTIONS(2198), [anon_sym_static] = ACTIONS(2198), [anon_sym_register] = ACTIONS(2198), [anon_sym_inline] = ACTIONS(2198), [anon_sym_thread_local] = ACTIONS(2198), [anon_sym_const] = ACTIONS(2198), [anon_sym_volatile] = ACTIONS(2198), [anon_sym_restrict] = ACTIONS(2198), [anon_sym__Atomic] = ACTIONS(2198), [anon_sym_mutable] = ACTIONS(2198), [anon_sym_constexpr] = ACTIONS(2198), [anon_sym_signed] = ACTIONS(2198), [anon_sym_unsigned] = ACTIONS(2198), [anon_sym_long] = ACTIONS(2198), [anon_sym_short] = ACTIONS(2198), [sym_primitive_type] = ACTIONS(2198), [anon_sym_enum] = ACTIONS(2198), [anon_sym_class] = ACTIONS(2198), [anon_sym_struct] = ACTIONS(2198), [anon_sym_union] = ACTIONS(2198), [anon_sym_if] = ACTIONS(2198), [anon_sym_switch] = ACTIONS(2198), [anon_sym_case] = ACTIONS(2198), [anon_sym_default] = ACTIONS(2198), [anon_sym_while] = ACTIONS(2198), [anon_sym_do] = ACTIONS(2198), [anon_sym_for] = ACTIONS(2198), [anon_sym_return] = ACTIONS(2198), [anon_sym_break] = ACTIONS(2198), [anon_sym_continue] = ACTIONS(2198), [anon_sym_goto] = ACTIONS(2198), [anon_sym_DASH_DASH] = ACTIONS(2200), [anon_sym_PLUS_PLUS] = ACTIONS(2200), [anon_sym_sizeof] = ACTIONS(2198), [sym_number_literal] = ACTIONS(2200), [anon_sym_L_SQUOTE] = ACTIONS(2200), [anon_sym_u_SQUOTE] = ACTIONS(2200), [anon_sym_U_SQUOTE] = ACTIONS(2200), [anon_sym_u8_SQUOTE] = ACTIONS(2200), [anon_sym_SQUOTE] = ACTIONS(2200), [anon_sym_L_DQUOTE] = ACTIONS(2200), [anon_sym_u_DQUOTE] = ACTIONS(2200), [anon_sym_U_DQUOTE] = ACTIONS(2200), [anon_sym_u8_DQUOTE] = ACTIONS(2200), [anon_sym_DQUOTE] = ACTIONS(2200), [sym_true] = ACTIONS(2198), [sym_false] = ACTIONS(2198), [sym_null] = ACTIONS(2198), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2198), [anon_sym_virtual] = ACTIONS(2198), [anon_sym_explicit] = ACTIONS(2198), [sym_auto] = ACTIONS(2198), [anon_sym_typename] = ACTIONS(2198), [anon_sym_template] = ACTIONS(2198), [anon_sym_operator] = ACTIONS(2198), [anon_sym_delete] = ACTIONS(2198), [anon_sym_throw] = ACTIONS(2198), [anon_sym_namespace] = ACTIONS(2198), [anon_sym_using] = ACTIONS(2198), [anon_sym_static_assert] = ACTIONS(2198), [anon_sym_co_return] = ACTIONS(2198), [anon_sym_co_yield] = ACTIONS(2198), [anon_sym_try] = ACTIONS(2198), [anon_sym_co_await] = ACTIONS(2198), [anon_sym_new] = ACTIONS(2198), [sym_this] = ACTIONS(2198), [sym_nullptr] = ACTIONS(2198), [sym_raw_string_literal] = ACTIONS(2200), }, [776] = { [sym_identifier] = ACTIONS(2182), [aux_sym_preproc_include_token1] = ACTIONS(2182), [aux_sym_preproc_def_token1] = ACTIONS(2182), [aux_sym_preproc_if_token1] = ACTIONS(2182), [aux_sym_preproc_if_token2] = ACTIONS(2182), [aux_sym_preproc_ifdef_token1] = ACTIONS(2182), [aux_sym_preproc_ifdef_token2] = ACTIONS(2182), [sym_preproc_directive] = ACTIONS(2182), [anon_sym_LPAREN2] = ACTIONS(2184), [anon_sym_BANG] = ACTIONS(2184), [anon_sym_TILDE] = ACTIONS(2184), [anon_sym_DASH] = ACTIONS(2182), [anon_sym_PLUS] = ACTIONS(2182), [anon_sym_STAR] = ACTIONS(2184), [anon_sym_AMP_AMP] = ACTIONS(2184), [anon_sym_AMP] = ACTIONS(2182), [anon_sym_SEMI] = ACTIONS(2184), [anon_sym_typedef] = ACTIONS(2182), [anon_sym_extern] = ACTIONS(2182), [anon_sym___attribute__] = ACTIONS(2182), [anon_sym_COLON_COLON] = ACTIONS(2184), [anon_sym_LBRACK_LBRACK] = ACTIONS(2184), [anon_sym___declspec] = ACTIONS(2182), [anon_sym___based] = ACTIONS(2182), [anon_sym___cdecl] = ACTIONS(2182), [anon_sym___clrcall] = ACTIONS(2182), [anon_sym___stdcall] = ACTIONS(2182), [anon_sym___fastcall] = ACTIONS(2182), [anon_sym___thiscall] = ACTIONS(2182), [anon_sym___vectorcall] = ACTIONS(2182), [anon_sym_LBRACE] = ACTIONS(2184), [anon_sym_LBRACK] = ACTIONS(2182), [anon_sym_static] = ACTIONS(2182), [anon_sym_register] = ACTIONS(2182), [anon_sym_inline] = ACTIONS(2182), [anon_sym_thread_local] = ACTIONS(2182), [anon_sym_const] = ACTIONS(2182), [anon_sym_volatile] = ACTIONS(2182), [anon_sym_restrict] = ACTIONS(2182), [anon_sym__Atomic] = ACTIONS(2182), [anon_sym_mutable] = ACTIONS(2182), [anon_sym_constexpr] = ACTIONS(2182), [anon_sym_signed] = ACTIONS(2182), [anon_sym_unsigned] = ACTIONS(2182), [anon_sym_long] = ACTIONS(2182), [anon_sym_short] = ACTIONS(2182), [sym_primitive_type] = ACTIONS(2182), [anon_sym_enum] = ACTIONS(2182), [anon_sym_class] = ACTIONS(2182), [anon_sym_struct] = ACTIONS(2182), [anon_sym_union] = ACTIONS(2182), [anon_sym_if] = ACTIONS(2182), [anon_sym_switch] = ACTIONS(2182), [anon_sym_case] = ACTIONS(2182), [anon_sym_default] = ACTIONS(2182), [anon_sym_while] = ACTIONS(2182), [anon_sym_do] = ACTIONS(2182), [anon_sym_for] = ACTIONS(2182), [anon_sym_return] = ACTIONS(2182), [anon_sym_break] = ACTIONS(2182), [anon_sym_continue] = ACTIONS(2182), [anon_sym_goto] = ACTIONS(2182), [anon_sym_DASH_DASH] = ACTIONS(2184), [anon_sym_PLUS_PLUS] = ACTIONS(2184), [anon_sym_sizeof] = ACTIONS(2182), [sym_number_literal] = ACTIONS(2184), [anon_sym_L_SQUOTE] = ACTIONS(2184), [anon_sym_u_SQUOTE] = ACTIONS(2184), [anon_sym_U_SQUOTE] = ACTIONS(2184), [anon_sym_u8_SQUOTE] = ACTIONS(2184), [anon_sym_SQUOTE] = ACTIONS(2184), [anon_sym_L_DQUOTE] = ACTIONS(2184), [anon_sym_u_DQUOTE] = ACTIONS(2184), [anon_sym_U_DQUOTE] = ACTIONS(2184), [anon_sym_u8_DQUOTE] = ACTIONS(2184), [anon_sym_DQUOTE] = ACTIONS(2184), [sym_true] = ACTIONS(2182), [sym_false] = ACTIONS(2182), [sym_null] = ACTIONS(2182), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2182), [anon_sym_virtual] = ACTIONS(2182), [anon_sym_explicit] = ACTIONS(2182), [sym_auto] = ACTIONS(2182), [anon_sym_typename] = ACTIONS(2182), [anon_sym_template] = ACTIONS(2182), [anon_sym_operator] = ACTIONS(2182), [anon_sym_delete] = ACTIONS(2182), [anon_sym_throw] = ACTIONS(2182), [anon_sym_namespace] = ACTIONS(2182), [anon_sym_using] = ACTIONS(2182), [anon_sym_static_assert] = ACTIONS(2182), [anon_sym_co_return] = ACTIONS(2182), [anon_sym_co_yield] = ACTIONS(2182), [anon_sym_try] = ACTIONS(2182), [anon_sym_co_await] = ACTIONS(2182), [anon_sym_new] = ACTIONS(2182), [sym_this] = ACTIONS(2182), [sym_nullptr] = ACTIONS(2182), [sym_raw_string_literal] = ACTIONS(2184), }, [777] = { [ts_builtin_sym_end] = ACTIONS(2024), [sym_identifier] = ACTIONS(2022), [aux_sym_preproc_include_token1] = ACTIONS(2022), [aux_sym_preproc_def_token1] = ACTIONS(2022), [aux_sym_preproc_if_token1] = ACTIONS(2022), [aux_sym_preproc_ifdef_token1] = ACTIONS(2022), [aux_sym_preproc_ifdef_token2] = ACTIONS(2022), [sym_preproc_directive] = ACTIONS(2022), [anon_sym_LPAREN2] = ACTIONS(2024), [anon_sym_BANG] = ACTIONS(2024), [anon_sym_TILDE] = ACTIONS(2024), [anon_sym_DASH] = ACTIONS(2022), [anon_sym_PLUS] = ACTIONS(2022), [anon_sym_STAR] = ACTIONS(2024), [anon_sym_AMP_AMP] = ACTIONS(2024), [anon_sym_AMP] = ACTIONS(2022), [anon_sym_SEMI] = ACTIONS(2024), [anon_sym_typedef] = ACTIONS(2022), [anon_sym_extern] = ACTIONS(2022), [anon_sym___attribute__] = ACTIONS(2022), [anon_sym_COLON_COLON] = ACTIONS(2024), [anon_sym_LBRACK_LBRACK] = ACTIONS(2024), [anon_sym___declspec] = ACTIONS(2022), [anon_sym___based] = ACTIONS(2022), [anon_sym___cdecl] = ACTIONS(2022), [anon_sym___clrcall] = ACTIONS(2022), [anon_sym___stdcall] = ACTIONS(2022), [anon_sym___fastcall] = ACTIONS(2022), [anon_sym___thiscall] = ACTIONS(2022), [anon_sym___vectorcall] = ACTIONS(2022), [anon_sym_LBRACE] = ACTIONS(2024), [anon_sym_LBRACK] = ACTIONS(2022), [anon_sym_static] = ACTIONS(2022), [anon_sym_register] = ACTIONS(2022), [anon_sym_inline] = ACTIONS(2022), [anon_sym_thread_local] = ACTIONS(2022), [anon_sym_const] = ACTIONS(2022), [anon_sym_volatile] = ACTIONS(2022), [anon_sym_restrict] = ACTIONS(2022), [anon_sym__Atomic] = ACTIONS(2022), [anon_sym_mutable] = ACTIONS(2022), [anon_sym_constexpr] = ACTIONS(2022), [anon_sym_signed] = ACTIONS(2022), [anon_sym_unsigned] = ACTIONS(2022), [anon_sym_long] = ACTIONS(2022), [anon_sym_short] = ACTIONS(2022), [sym_primitive_type] = ACTIONS(2022), [anon_sym_enum] = ACTIONS(2022), [anon_sym_class] = ACTIONS(2022), [anon_sym_struct] = ACTIONS(2022), [anon_sym_union] = ACTIONS(2022), [anon_sym_if] = ACTIONS(2022), [anon_sym_switch] = ACTIONS(2022), [anon_sym_case] = ACTIONS(2022), [anon_sym_default] = ACTIONS(2022), [anon_sym_while] = ACTIONS(2022), [anon_sym_do] = ACTIONS(2022), [anon_sym_for] = ACTIONS(2022), [anon_sym_return] = ACTIONS(2022), [anon_sym_break] = ACTIONS(2022), [anon_sym_continue] = ACTIONS(2022), [anon_sym_goto] = ACTIONS(2022), [anon_sym_DASH_DASH] = ACTIONS(2024), [anon_sym_PLUS_PLUS] = ACTIONS(2024), [anon_sym_sizeof] = ACTIONS(2022), [sym_number_literal] = ACTIONS(2024), [anon_sym_L_SQUOTE] = ACTIONS(2024), [anon_sym_u_SQUOTE] = ACTIONS(2024), [anon_sym_U_SQUOTE] = ACTIONS(2024), [anon_sym_u8_SQUOTE] = ACTIONS(2024), [anon_sym_SQUOTE] = ACTIONS(2024), [anon_sym_L_DQUOTE] = ACTIONS(2024), [anon_sym_u_DQUOTE] = ACTIONS(2024), [anon_sym_U_DQUOTE] = ACTIONS(2024), [anon_sym_u8_DQUOTE] = ACTIONS(2024), [anon_sym_DQUOTE] = ACTIONS(2024), [sym_true] = ACTIONS(2022), [sym_false] = ACTIONS(2022), [sym_null] = ACTIONS(2022), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2022), [anon_sym_virtual] = ACTIONS(2022), [anon_sym_explicit] = ACTIONS(2022), [sym_auto] = ACTIONS(2022), [anon_sym_typename] = ACTIONS(2022), [anon_sym_template] = ACTIONS(2022), [anon_sym_operator] = ACTIONS(2022), [anon_sym_delete] = ACTIONS(2022), [anon_sym_throw] = ACTIONS(2022), [anon_sym_namespace] = ACTIONS(2022), [anon_sym_using] = ACTIONS(2022), [anon_sym_static_assert] = ACTIONS(2022), [anon_sym_co_return] = ACTIONS(2022), [anon_sym_co_yield] = ACTIONS(2022), [anon_sym_try] = ACTIONS(2022), [anon_sym_co_await] = ACTIONS(2022), [anon_sym_new] = ACTIONS(2022), [sym_this] = ACTIONS(2022), [sym_nullptr] = ACTIONS(2022), [sym_raw_string_literal] = ACTIONS(2024), }, [778] = { [sym_identifier] = ACTIONS(2182), [aux_sym_preproc_include_token1] = ACTIONS(2182), [aux_sym_preproc_def_token1] = ACTIONS(2182), [aux_sym_preproc_if_token1] = ACTIONS(2182), [aux_sym_preproc_ifdef_token1] = ACTIONS(2182), [aux_sym_preproc_ifdef_token2] = ACTIONS(2182), [sym_preproc_directive] = ACTIONS(2182), [anon_sym_LPAREN2] = ACTIONS(2184), [anon_sym_BANG] = ACTIONS(2184), [anon_sym_TILDE] = ACTIONS(2184), [anon_sym_DASH] = ACTIONS(2182), [anon_sym_PLUS] = ACTIONS(2182), [anon_sym_STAR] = ACTIONS(2184), [anon_sym_AMP_AMP] = ACTIONS(2184), [anon_sym_AMP] = ACTIONS(2182), [anon_sym_SEMI] = ACTIONS(2184), [anon_sym_typedef] = ACTIONS(2182), [anon_sym_extern] = ACTIONS(2182), [anon_sym___attribute__] = ACTIONS(2182), [anon_sym_COLON_COLON] = ACTIONS(2184), [anon_sym_LBRACK_LBRACK] = ACTIONS(2184), [anon_sym___declspec] = ACTIONS(2182), [anon_sym___based] = ACTIONS(2182), [anon_sym___cdecl] = ACTIONS(2182), [anon_sym___clrcall] = ACTIONS(2182), [anon_sym___stdcall] = ACTIONS(2182), [anon_sym___fastcall] = ACTIONS(2182), [anon_sym___thiscall] = ACTIONS(2182), [anon_sym___vectorcall] = ACTIONS(2182), [anon_sym_LBRACE] = ACTIONS(2184), [anon_sym_RBRACE] = ACTIONS(2184), [anon_sym_LBRACK] = ACTIONS(2182), [anon_sym_static] = ACTIONS(2182), [anon_sym_register] = ACTIONS(2182), [anon_sym_inline] = ACTIONS(2182), [anon_sym_thread_local] = ACTIONS(2182), [anon_sym_const] = ACTIONS(2182), [anon_sym_volatile] = ACTIONS(2182), [anon_sym_restrict] = ACTIONS(2182), [anon_sym__Atomic] = ACTIONS(2182), [anon_sym_mutable] = ACTIONS(2182), [anon_sym_constexpr] = ACTIONS(2182), [anon_sym_signed] = ACTIONS(2182), [anon_sym_unsigned] = ACTIONS(2182), [anon_sym_long] = ACTIONS(2182), [anon_sym_short] = ACTIONS(2182), [sym_primitive_type] = ACTIONS(2182), [anon_sym_enum] = ACTIONS(2182), [anon_sym_class] = ACTIONS(2182), [anon_sym_struct] = ACTIONS(2182), [anon_sym_union] = ACTIONS(2182), [anon_sym_if] = ACTIONS(2182), [anon_sym_switch] = ACTIONS(2182), [anon_sym_case] = ACTIONS(2182), [anon_sym_default] = ACTIONS(2182), [anon_sym_while] = ACTIONS(2182), [anon_sym_do] = ACTIONS(2182), [anon_sym_for] = ACTIONS(2182), [anon_sym_return] = ACTIONS(2182), [anon_sym_break] = ACTIONS(2182), [anon_sym_continue] = ACTIONS(2182), [anon_sym_goto] = ACTIONS(2182), [anon_sym_DASH_DASH] = ACTIONS(2184), [anon_sym_PLUS_PLUS] = ACTIONS(2184), [anon_sym_sizeof] = ACTIONS(2182), [sym_number_literal] = ACTIONS(2184), [anon_sym_L_SQUOTE] = ACTIONS(2184), [anon_sym_u_SQUOTE] = ACTIONS(2184), [anon_sym_U_SQUOTE] = ACTIONS(2184), [anon_sym_u8_SQUOTE] = ACTIONS(2184), [anon_sym_SQUOTE] = ACTIONS(2184), [anon_sym_L_DQUOTE] = ACTIONS(2184), [anon_sym_u_DQUOTE] = ACTIONS(2184), [anon_sym_U_DQUOTE] = ACTIONS(2184), [anon_sym_u8_DQUOTE] = ACTIONS(2184), [anon_sym_DQUOTE] = ACTIONS(2184), [sym_true] = ACTIONS(2182), [sym_false] = ACTIONS(2182), [sym_null] = ACTIONS(2182), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2182), [anon_sym_virtual] = ACTIONS(2182), [anon_sym_explicit] = ACTIONS(2182), [sym_auto] = ACTIONS(2182), [anon_sym_typename] = ACTIONS(2182), [anon_sym_template] = ACTIONS(2182), [anon_sym_operator] = ACTIONS(2182), [anon_sym_delete] = ACTIONS(2182), [anon_sym_throw] = ACTIONS(2182), [anon_sym_namespace] = ACTIONS(2182), [anon_sym_using] = ACTIONS(2182), [anon_sym_static_assert] = ACTIONS(2182), [anon_sym_co_return] = ACTIONS(2182), [anon_sym_co_yield] = ACTIONS(2182), [anon_sym_try] = ACTIONS(2182), [anon_sym_co_await] = ACTIONS(2182), [anon_sym_new] = ACTIONS(2182), [sym_this] = ACTIONS(2182), [sym_nullptr] = ACTIONS(2182), [sym_raw_string_literal] = ACTIONS(2184), }, [779] = { [ts_builtin_sym_end] = ACTIONS(2060), [sym_identifier] = ACTIONS(2058), [aux_sym_preproc_include_token1] = ACTIONS(2058), [aux_sym_preproc_def_token1] = ACTIONS(2058), [aux_sym_preproc_if_token1] = ACTIONS(2058), [aux_sym_preproc_ifdef_token1] = ACTIONS(2058), [aux_sym_preproc_ifdef_token2] = ACTIONS(2058), [sym_preproc_directive] = ACTIONS(2058), [anon_sym_LPAREN2] = ACTIONS(2060), [anon_sym_BANG] = ACTIONS(2060), [anon_sym_TILDE] = ACTIONS(2060), [anon_sym_DASH] = ACTIONS(2058), [anon_sym_PLUS] = ACTIONS(2058), [anon_sym_STAR] = ACTIONS(2060), [anon_sym_AMP_AMP] = ACTIONS(2060), [anon_sym_AMP] = ACTIONS(2058), [anon_sym_SEMI] = ACTIONS(2060), [anon_sym_typedef] = ACTIONS(2058), [anon_sym_extern] = ACTIONS(2058), [anon_sym___attribute__] = ACTIONS(2058), [anon_sym_COLON_COLON] = ACTIONS(2060), [anon_sym_LBRACK_LBRACK] = ACTIONS(2060), [anon_sym___declspec] = ACTIONS(2058), [anon_sym___based] = ACTIONS(2058), [anon_sym___cdecl] = ACTIONS(2058), [anon_sym___clrcall] = ACTIONS(2058), [anon_sym___stdcall] = ACTIONS(2058), [anon_sym___fastcall] = ACTIONS(2058), [anon_sym___thiscall] = ACTIONS(2058), [anon_sym___vectorcall] = ACTIONS(2058), [anon_sym_LBRACE] = ACTIONS(2060), [anon_sym_LBRACK] = ACTIONS(2058), [anon_sym_static] = ACTIONS(2058), [anon_sym_register] = ACTIONS(2058), [anon_sym_inline] = ACTIONS(2058), [anon_sym_thread_local] = ACTIONS(2058), [anon_sym_const] = ACTIONS(2058), [anon_sym_volatile] = ACTIONS(2058), [anon_sym_restrict] = ACTIONS(2058), [anon_sym__Atomic] = ACTIONS(2058), [anon_sym_mutable] = ACTIONS(2058), [anon_sym_constexpr] = ACTIONS(2058), [anon_sym_signed] = ACTIONS(2058), [anon_sym_unsigned] = ACTIONS(2058), [anon_sym_long] = ACTIONS(2058), [anon_sym_short] = ACTIONS(2058), [sym_primitive_type] = ACTIONS(2058), [anon_sym_enum] = ACTIONS(2058), [anon_sym_class] = ACTIONS(2058), [anon_sym_struct] = ACTIONS(2058), [anon_sym_union] = ACTIONS(2058), [anon_sym_if] = ACTIONS(2058), [anon_sym_switch] = ACTIONS(2058), [anon_sym_case] = ACTIONS(2058), [anon_sym_default] = ACTIONS(2058), [anon_sym_while] = ACTIONS(2058), [anon_sym_do] = ACTIONS(2058), [anon_sym_for] = ACTIONS(2058), [anon_sym_return] = ACTIONS(2058), [anon_sym_break] = ACTIONS(2058), [anon_sym_continue] = ACTIONS(2058), [anon_sym_goto] = ACTIONS(2058), [anon_sym_DASH_DASH] = ACTIONS(2060), [anon_sym_PLUS_PLUS] = ACTIONS(2060), [anon_sym_sizeof] = ACTIONS(2058), [sym_number_literal] = ACTIONS(2060), [anon_sym_L_SQUOTE] = ACTIONS(2060), [anon_sym_u_SQUOTE] = ACTIONS(2060), [anon_sym_U_SQUOTE] = ACTIONS(2060), [anon_sym_u8_SQUOTE] = ACTIONS(2060), [anon_sym_SQUOTE] = ACTIONS(2060), [anon_sym_L_DQUOTE] = ACTIONS(2060), [anon_sym_u_DQUOTE] = ACTIONS(2060), [anon_sym_U_DQUOTE] = ACTIONS(2060), [anon_sym_u8_DQUOTE] = ACTIONS(2060), [anon_sym_DQUOTE] = ACTIONS(2060), [sym_true] = ACTIONS(2058), [sym_false] = ACTIONS(2058), [sym_null] = ACTIONS(2058), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2058), [anon_sym_virtual] = ACTIONS(2058), [anon_sym_explicit] = ACTIONS(2058), [sym_auto] = ACTIONS(2058), [anon_sym_typename] = ACTIONS(2058), [anon_sym_template] = ACTIONS(2058), [anon_sym_operator] = ACTIONS(2058), [anon_sym_delete] = ACTIONS(2058), [anon_sym_throw] = ACTIONS(2058), [anon_sym_namespace] = ACTIONS(2058), [anon_sym_using] = ACTIONS(2058), [anon_sym_static_assert] = ACTIONS(2058), [anon_sym_co_return] = ACTIONS(2058), [anon_sym_co_yield] = ACTIONS(2058), [anon_sym_try] = ACTIONS(2058), [anon_sym_co_await] = ACTIONS(2058), [anon_sym_new] = ACTIONS(2058), [sym_this] = ACTIONS(2058), [sym_nullptr] = ACTIONS(2058), [sym_raw_string_literal] = ACTIONS(2060), }, [780] = { [ts_builtin_sym_end] = ACTIONS(2096), [sym_identifier] = ACTIONS(2094), [aux_sym_preproc_include_token1] = ACTIONS(2094), [aux_sym_preproc_def_token1] = ACTIONS(2094), [aux_sym_preproc_if_token1] = ACTIONS(2094), [aux_sym_preproc_ifdef_token1] = ACTIONS(2094), [aux_sym_preproc_ifdef_token2] = ACTIONS(2094), [sym_preproc_directive] = ACTIONS(2094), [anon_sym_LPAREN2] = ACTIONS(2096), [anon_sym_BANG] = ACTIONS(2096), [anon_sym_TILDE] = ACTIONS(2096), [anon_sym_DASH] = ACTIONS(2094), [anon_sym_PLUS] = ACTIONS(2094), [anon_sym_STAR] = ACTIONS(2096), [anon_sym_AMP_AMP] = ACTIONS(2096), [anon_sym_AMP] = ACTIONS(2094), [anon_sym_SEMI] = ACTIONS(2096), [anon_sym_typedef] = ACTIONS(2094), [anon_sym_extern] = ACTIONS(2094), [anon_sym___attribute__] = ACTIONS(2094), [anon_sym_COLON_COLON] = ACTIONS(2096), [anon_sym_LBRACK_LBRACK] = ACTIONS(2096), [anon_sym___declspec] = ACTIONS(2094), [anon_sym___based] = ACTIONS(2094), [anon_sym___cdecl] = ACTIONS(2094), [anon_sym___clrcall] = ACTIONS(2094), [anon_sym___stdcall] = ACTIONS(2094), [anon_sym___fastcall] = ACTIONS(2094), [anon_sym___thiscall] = ACTIONS(2094), [anon_sym___vectorcall] = ACTIONS(2094), [anon_sym_LBRACE] = ACTIONS(2096), [anon_sym_LBRACK] = ACTIONS(2094), [anon_sym_static] = ACTIONS(2094), [anon_sym_register] = ACTIONS(2094), [anon_sym_inline] = ACTIONS(2094), [anon_sym_thread_local] = ACTIONS(2094), [anon_sym_const] = ACTIONS(2094), [anon_sym_volatile] = ACTIONS(2094), [anon_sym_restrict] = ACTIONS(2094), [anon_sym__Atomic] = ACTIONS(2094), [anon_sym_mutable] = ACTIONS(2094), [anon_sym_constexpr] = ACTIONS(2094), [anon_sym_signed] = ACTIONS(2094), [anon_sym_unsigned] = ACTIONS(2094), [anon_sym_long] = ACTIONS(2094), [anon_sym_short] = ACTIONS(2094), [sym_primitive_type] = ACTIONS(2094), [anon_sym_enum] = ACTIONS(2094), [anon_sym_class] = ACTIONS(2094), [anon_sym_struct] = ACTIONS(2094), [anon_sym_union] = ACTIONS(2094), [anon_sym_if] = ACTIONS(2094), [anon_sym_switch] = ACTIONS(2094), [anon_sym_case] = ACTIONS(2094), [anon_sym_default] = ACTIONS(2094), [anon_sym_while] = ACTIONS(2094), [anon_sym_do] = ACTIONS(2094), [anon_sym_for] = ACTIONS(2094), [anon_sym_return] = ACTIONS(2094), [anon_sym_break] = ACTIONS(2094), [anon_sym_continue] = ACTIONS(2094), [anon_sym_goto] = ACTIONS(2094), [anon_sym_DASH_DASH] = ACTIONS(2096), [anon_sym_PLUS_PLUS] = ACTIONS(2096), [anon_sym_sizeof] = ACTIONS(2094), [sym_number_literal] = ACTIONS(2096), [anon_sym_L_SQUOTE] = ACTIONS(2096), [anon_sym_u_SQUOTE] = ACTIONS(2096), [anon_sym_U_SQUOTE] = ACTIONS(2096), [anon_sym_u8_SQUOTE] = ACTIONS(2096), [anon_sym_SQUOTE] = ACTIONS(2096), [anon_sym_L_DQUOTE] = ACTIONS(2096), [anon_sym_u_DQUOTE] = ACTIONS(2096), [anon_sym_U_DQUOTE] = ACTIONS(2096), [anon_sym_u8_DQUOTE] = ACTIONS(2096), [anon_sym_DQUOTE] = ACTIONS(2096), [sym_true] = ACTIONS(2094), [sym_false] = ACTIONS(2094), [sym_null] = ACTIONS(2094), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2094), [anon_sym_virtual] = ACTIONS(2094), [anon_sym_explicit] = ACTIONS(2094), [sym_auto] = ACTIONS(2094), [anon_sym_typename] = ACTIONS(2094), [anon_sym_template] = ACTIONS(2094), [anon_sym_operator] = ACTIONS(2094), [anon_sym_delete] = ACTIONS(2094), [anon_sym_throw] = ACTIONS(2094), [anon_sym_namespace] = ACTIONS(2094), [anon_sym_using] = ACTIONS(2094), [anon_sym_static_assert] = ACTIONS(2094), [anon_sym_co_return] = ACTIONS(2094), [anon_sym_co_yield] = ACTIONS(2094), [anon_sym_try] = ACTIONS(2094), [anon_sym_co_await] = ACTIONS(2094), [anon_sym_new] = ACTIONS(2094), [sym_this] = ACTIONS(2094), [sym_nullptr] = ACTIONS(2094), [sym_raw_string_literal] = ACTIONS(2096), }, [781] = { [ts_builtin_sym_end] = ACTIONS(2124), [sym_identifier] = ACTIONS(2122), [aux_sym_preproc_include_token1] = ACTIONS(2122), [aux_sym_preproc_def_token1] = ACTIONS(2122), [aux_sym_preproc_if_token1] = ACTIONS(2122), [aux_sym_preproc_ifdef_token1] = ACTIONS(2122), [aux_sym_preproc_ifdef_token2] = ACTIONS(2122), [sym_preproc_directive] = ACTIONS(2122), [anon_sym_LPAREN2] = ACTIONS(2124), [anon_sym_BANG] = ACTIONS(2124), [anon_sym_TILDE] = ACTIONS(2124), [anon_sym_DASH] = ACTIONS(2122), [anon_sym_PLUS] = ACTIONS(2122), [anon_sym_STAR] = ACTIONS(2124), [anon_sym_AMP_AMP] = ACTIONS(2124), [anon_sym_AMP] = ACTIONS(2122), [anon_sym_SEMI] = ACTIONS(2124), [anon_sym_typedef] = ACTIONS(2122), [anon_sym_extern] = ACTIONS(2122), [anon_sym___attribute__] = ACTIONS(2122), [anon_sym_COLON_COLON] = ACTIONS(2124), [anon_sym_LBRACK_LBRACK] = ACTIONS(2124), [anon_sym___declspec] = ACTIONS(2122), [anon_sym___based] = ACTIONS(2122), [anon_sym___cdecl] = ACTIONS(2122), [anon_sym___clrcall] = ACTIONS(2122), [anon_sym___stdcall] = ACTIONS(2122), [anon_sym___fastcall] = ACTIONS(2122), [anon_sym___thiscall] = ACTIONS(2122), [anon_sym___vectorcall] = ACTIONS(2122), [anon_sym_LBRACE] = ACTIONS(2124), [anon_sym_LBRACK] = ACTIONS(2122), [anon_sym_static] = ACTIONS(2122), [anon_sym_register] = ACTIONS(2122), [anon_sym_inline] = ACTIONS(2122), [anon_sym_thread_local] = ACTIONS(2122), [anon_sym_const] = ACTIONS(2122), [anon_sym_volatile] = ACTIONS(2122), [anon_sym_restrict] = ACTIONS(2122), [anon_sym__Atomic] = ACTIONS(2122), [anon_sym_mutable] = ACTIONS(2122), [anon_sym_constexpr] = ACTIONS(2122), [anon_sym_signed] = ACTIONS(2122), [anon_sym_unsigned] = ACTIONS(2122), [anon_sym_long] = ACTIONS(2122), [anon_sym_short] = ACTIONS(2122), [sym_primitive_type] = ACTIONS(2122), [anon_sym_enum] = ACTIONS(2122), [anon_sym_class] = ACTIONS(2122), [anon_sym_struct] = ACTIONS(2122), [anon_sym_union] = ACTIONS(2122), [anon_sym_if] = ACTIONS(2122), [anon_sym_switch] = ACTIONS(2122), [anon_sym_case] = ACTIONS(2122), [anon_sym_default] = ACTIONS(2122), [anon_sym_while] = ACTIONS(2122), [anon_sym_do] = ACTIONS(2122), [anon_sym_for] = ACTIONS(2122), [anon_sym_return] = ACTIONS(2122), [anon_sym_break] = ACTIONS(2122), [anon_sym_continue] = ACTIONS(2122), [anon_sym_goto] = ACTIONS(2122), [anon_sym_DASH_DASH] = ACTIONS(2124), [anon_sym_PLUS_PLUS] = ACTIONS(2124), [anon_sym_sizeof] = ACTIONS(2122), [sym_number_literal] = ACTIONS(2124), [anon_sym_L_SQUOTE] = ACTIONS(2124), [anon_sym_u_SQUOTE] = ACTIONS(2124), [anon_sym_U_SQUOTE] = ACTIONS(2124), [anon_sym_u8_SQUOTE] = ACTIONS(2124), [anon_sym_SQUOTE] = ACTIONS(2124), [anon_sym_L_DQUOTE] = ACTIONS(2124), [anon_sym_u_DQUOTE] = ACTIONS(2124), [anon_sym_U_DQUOTE] = ACTIONS(2124), [anon_sym_u8_DQUOTE] = ACTIONS(2124), [anon_sym_DQUOTE] = ACTIONS(2124), [sym_true] = ACTIONS(2122), [sym_false] = ACTIONS(2122), [sym_null] = ACTIONS(2122), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2122), [anon_sym_virtual] = ACTIONS(2122), [anon_sym_explicit] = ACTIONS(2122), [sym_auto] = ACTIONS(2122), [anon_sym_typename] = ACTIONS(2122), [anon_sym_template] = ACTIONS(2122), [anon_sym_operator] = ACTIONS(2122), [anon_sym_delete] = ACTIONS(2122), [anon_sym_throw] = ACTIONS(2122), [anon_sym_namespace] = ACTIONS(2122), [anon_sym_using] = ACTIONS(2122), [anon_sym_static_assert] = ACTIONS(2122), [anon_sym_co_return] = ACTIONS(2122), [anon_sym_co_yield] = ACTIONS(2122), [anon_sym_try] = ACTIONS(2122), [anon_sym_co_await] = ACTIONS(2122), [anon_sym_new] = ACTIONS(2122), [sym_this] = ACTIONS(2122), [sym_nullptr] = ACTIONS(2122), [sym_raw_string_literal] = ACTIONS(2124), }, [782] = { [sym_identifier] = ACTIONS(2146), [aux_sym_preproc_include_token1] = ACTIONS(2146), [aux_sym_preproc_def_token1] = ACTIONS(2146), [aux_sym_preproc_if_token1] = ACTIONS(2146), [aux_sym_preproc_if_token2] = ACTIONS(2146), [aux_sym_preproc_ifdef_token1] = ACTIONS(2146), [aux_sym_preproc_ifdef_token2] = ACTIONS(2146), [sym_preproc_directive] = ACTIONS(2146), [anon_sym_LPAREN2] = ACTIONS(2148), [anon_sym_BANG] = ACTIONS(2148), [anon_sym_TILDE] = ACTIONS(2148), [anon_sym_DASH] = ACTIONS(2146), [anon_sym_PLUS] = ACTIONS(2146), [anon_sym_STAR] = ACTIONS(2148), [anon_sym_AMP_AMP] = ACTIONS(2148), [anon_sym_AMP] = ACTIONS(2146), [anon_sym_SEMI] = ACTIONS(2148), [anon_sym_typedef] = ACTIONS(2146), [anon_sym_extern] = ACTIONS(2146), [anon_sym___attribute__] = ACTIONS(2146), [anon_sym_COLON_COLON] = ACTIONS(2148), [anon_sym_LBRACK_LBRACK] = ACTIONS(2148), [anon_sym___declspec] = ACTIONS(2146), [anon_sym___based] = ACTIONS(2146), [anon_sym___cdecl] = ACTIONS(2146), [anon_sym___clrcall] = ACTIONS(2146), [anon_sym___stdcall] = ACTIONS(2146), [anon_sym___fastcall] = ACTIONS(2146), [anon_sym___thiscall] = ACTIONS(2146), [anon_sym___vectorcall] = ACTIONS(2146), [anon_sym_LBRACE] = ACTIONS(2148), [anon_sym_LBRACK] = ACTIONS(2146), [anon_sym_static] = ACTIONS(2146), [anon_sym_register] = ACTIONS(2146), [anon_sym_inline] = ACTIONS(2146), [anon_sym_thread_local] = ACTIONS(2146), [anon_sym_const] = ACTIONS(2146), [anon_sym_volatile] = ACTIONS(2146), [anon_sym_restrict] = ACTIONS(2146), [anon_sym__Atomic] = ACTIONS(2146), [anon_sym_mutable] = ACTIONS(2146), [anon_sym_constexpr] = ACTIONS(2146), [anon_sym_signed] = ACTIONS(2146), [anon_sym_unsigned] = ACTIONS(2146), [anon_sym_long] = ACTIONS(2146), [anon_sym_short] = ACTIONS(2146), [sym_primitive_type] = ACTIONS(2146), [anon_sym_enum] = ACTIONS(2146), [anon_sym_class] = ACTIONS(2146), [anon_sym_struct] = ACTIONS(2146), [anon_sym_union] = ACTIONS(2146), [anon_sym_if] = ACTIONS(2146), [anon_sym_switch] = ACTIONS(2146), [anon_sym_case] = ACTIONS(2146), [anon_sym_default] = ACTIONS(2146), [anon_sym_while] = ACTIONS(2146), [anon_sym_do] = ACTIONS(2146), [anon_sym_for] = ACTIONS(2146), [anon_sym_return] = ACTIONS(2146), [anon_sym_break] = ACTIONS(2146), [anon_sym_continue] = ACTIONS(2146), [anon_sym_goto] = ACTIONS(2146), [anon_sym_DASH_DASH] = ACTIONS(2148), [anon_sym_PLUS_PLUS] = ACTIONS(2148), [anon_sym_sizeof] = ACTIONS(2146), [sym_number_literal] = ACTIONS(2148), [anon_sym_L_SQUOTE] = ACTIONS(2148), [anon_sym_u_SQUOTE] = ACTIONS(2148), [anon_sym_U_SQUOTE] = ACTIONS(2148), [anon_sym_u8_SQUOTE] = ACTIONS(2148), [anon_sym_SQUOTE] = ACTIONS(2148), [anon_sym_L_DQUOTE] = ACTIONS(2148), [anon_sym_u_DQUOTE] = ACTIONS(2148), [anon_sym_U_DQUOTE] = ACTIONS(2148), [anon_sym_u8_DQUOTE] = ACTIONS(2148), [anon_sym_DQUOTE] = ACTIONS(2148), [sym_true] = ACTIONS(2146), [sym_false] = ACTIONS(2146), [sym_null] = ACTIONS(2146), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2146), [anon_sym_virtual] = ACTIONS(2146), [anon_sym_explicit] = ACTIONS(2146), [sym_auto] = ACTIONS(2146), [anon_sym_typename] = ACTIONS(2146), [anon_sym_template] = ACTIONS(2146), [anon_sym_operator] = ACTIONS(2146), [anon_sym_delete] = ACTIONS(2146), [anon_sym_throw] = ACTIONS(2146), [anon_sym_namespace] = ACTIONS(2146), [anon_sym_using] = ACTIONS(2146), [anon_sym_static_assert] = ACTIONS(2146), [anon_sym_co_return] = ACTIONS(2146), [anon_sym_co_yield] = ACTIONS(2146), [anon_sym_try] = ACTIONS(2146), [anon_sym_co_await] = ACTIONS(2146), [anon_sym_new] = ACTIONS(2146), [sym_this] = ACTIONS(2146), [sym_nullptr] = ACTIONS(2146), [sym_raw_string_literal] = ACTIONS(2148), }, [783] = { [sym_identifier] = ACTIONS(2174), [aux_sym_preproc_include_token1] = ACTIONS(2174), [aux_sym_preproc_def_token1] = ACTIONS(2174), [aux_sym_preproc_if_token1] = ACTIONS(2174), [aux_sym_preproc_if_token2] = ACTIONS(2174), [aux_sym_preproc_ifdef_token1] = ACTIONS(2174), [aux_sym_preproc_ifdef_token2] = ACTIONS(2174), [sym_preproc_directive] = ACTIONS(2174), [anon_sym_LPAREN2] = ACTIONS(2176), [anon_sym_BANG] = ACTIONS(2176), [anon_sym_TILDE] = ACTIONS(2176), [anon_sym_DASH] = ACTIONS(2174), [anon_sym_PLUS] = ACTIONS(2174), [anon_sym_STAR] = ACTIONS(2176), [anon_sym_AMP_AMP] = ACTIONS(2176), [anon_sym_AMP] = ACTIONS(2174), [anon_sym_SEMI] = ACTIONS(2176), [anon_sym_typedef] = ACTIONS(2174), [anon_sym_extern] = ACTIONS(2174), [anon_sym___attribute__] = ACTIONS(2174), [anon_sym_COLON_COLON] = ACTIONS(2176), [anon_sym_LBRACK_LBRACK] = ACTIONS(2176), [anon_sym___declspec] = ACTIONS(2174), [anon_sym___based] = ACTIONS(2174), [anon_sym___cdecl] = ACTIONS(2174), [anon_sym___clrcall] = ACTIONS(2174), [anon_sym___stdcall] = ACTIONS(2174), [anon_sym___fastcall] = ACTIONS(2174), [anon_sym___thiscall] = ACTIONS(2174), [anon_sym___vectorcall] = ACTIONS(2174), [anon_sym_LBRACE] = ACTIONS(2176), [anon_sym_LBRACK] = ACTIONS(2174), [anon_sym_static] = ACTIONS(2174), [anon_sym_register] = ACTIONS(2174), [anon_sym_inline] = ACTIONS(2174), [anon_sym_thread_local] = ACTIONS(2174), [anon_sym_const] = ACTIONS(2174), [anon_sym_volatile] = ACTIONS(2174), [anon_sym_restrict] = ACTIONS(2174), [anon_sym__Atomic] = ACTIONS(2174), [anon_sym_mutable] = ACTIONS(2174), [anon_sym_constexpr] = ACTIONS(2174), [anon_sym_signed] = ACTIONS(2174), [anon_sym_unsigned] = ACTIONS(2174), [anon_sym_long] = ACTIONS(2174), [anon_sym_short] = ACTIONS(2174), [sym_primitive_type] = ACTIONS(2174), [anon_sym_enum] = ACTIONS(2174), [anon_sym_class] = ACTIONS(2174), [anon_sym_struct] = ACTIONS(2174), [anon_sym_union] = ACTIONS(2174), [anon_sym_if] = ACTIONS(2174), [anon_sym_switch] = ACTIONS(2174), [anon_sym_case] = ACTIONS(2174), [anon_sym_default] = ACTIONS(2174), [anon_sym_while] = ACTIONS(2174), [anon_sym_do] = ACTIONS(2174), [anon_sym_for] = ACTIONS(2174), [anon_sym_return] = ACTIONS(2174), [anon_sym_break] = ACTIONS(2174), [anon_sym_continue] = ACTIONS(2174), [anon_sym_goto] = ACTIONS(2174), [anon_sym_DASH_DASH] = ACTIONS(2176), [anon_sym_PLUS_PLUS] = ACTIONS(2176), [anon_sym_sizeof] = ACTIONS(2174), [sym_number_literal] = ACTIONS(2176), [anon_sym_L_SQUOTE] = ACTIONS(2176), [anon_sym_u_SQUOTE] = ACTIONS(2176), [anon_sym_U_SQUOTE] = ACTIONS(2176), [anon_sym_u8_SQUOTE] = ACTIONS(2176), [anon_sym_SQUOTE] = ACTIONS(2176), [anon_sym_L_DQUOTE] = ACTIONS(2176), [anon_sym_u_DQUOTE] = ACTIONS(2176), [anon_sym_U_DQUOTE] = ACTIONS(2176), [anon_sym_u8_DQUOTE] = ACTIONS(2176), [anon_sym_DQUOTE] = ACTIONS(2176), [sym_true] = ACTIONS(2174), [sym_false] = ACTIONS(2174), [sym_null] = ACTIONS(2174), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2174), [anon_sym_virtual] = ACTIONS(2174), [anon_sym_explicit] = ACTIONS(2174), [sym_auto] = ACTIONS(2174), [anon_sym_typename] = ACTIONS(2174), [anon_sym_template] = ACTIONS(2174), [anon_sym_operator] = ACTIONS(2174), [anon_sym_delete] = ACTIONS(2174), [anon_sym_throw] = ACTIONS(2174), [anon_sym_namespace] = ACTIONS(2174), [anon_sym_using] = ACTIONS(2174), [anon_sym_static_assert] = ACTIONS(2174), [anon_sym_co_return] = ACTIONS(2174), [anon_sym_co_yield] = ACTIONS(2174), [anon_sym_try] = ACTIONS(2174), [anon_sym_co_await] = ACTIONS(2174), [anon_sym_new] = ACTIONS(2174), [sym_this] = ACTIONS(2174), [sym_nullptr] = ACTIONS(2174), [sym_raw_string_literal] = ACTIONS(2176), }, [784] = { [ts_builtin_sym_end] = ACTIONS(2064), [sym_identifier] = ACTIONS(2062), [aux_sym_preproc_include_token1] = ACTIONS(2062), [aux_sym_preproc_def_token1] = ACTIONS(2062), [aux_sym_preproc_if_token1] = ACTIONS(2062), [aux_sym_preproc_ifdef_token1] = ACTIONS(2062), [aux_sym_preproc_ifdef_token2] = ACTIONS(2062), [sym_preproc_directive] = ACTIONS(2062), [anon_sym_LPAREN2] = ACTIONS(2064), [anon_sym_BANG] = ACTIONS(2064), [anon_sym_TILDE] = ACTIONS(2064), [anon_sym_DASH] = ACTIONS(2062), [anon_sym_PLUS] = ACTIONS(2062), [anon_sym_STAR] = ACTIONS(2064), [anon_sym_AMP_AMP] = ACTIONS(2064), [anon_sym_AMP] = ACTIONS(2062), [anon_sym_SEMI] = ACTIONS(2064), [anon_sym_typedef] = ACTIONS(2062), [anon_sym_extern] = ACTIONS(2062), [anon_sym___attribute__] = ACTIONS(2062), [anon_sym_COLON_COLON] = ACTIONS(2064), [anon_sym_LBRACK_LBRACK] = ACTIONS(2064), [anon_sym___declspec] = ACTIONS(2062), [anon_sym___based] = ACTIONS(2062), [anon_sym___cdecl] = ACTIONS(2062), [anon_sym___clrcall] = ACTIONS(2062), [anon_sym___stdcall] = ACTIONS(2062), [anon_sym___fastcall] = ACTIONS(2062), [anon_sym___thiscall] = ACTIONS(2062), [anon_sym___vectorcall] = ACTIONS(2062), [anon_sym_LBRACE] = ACTIONS(2064), [anon_sym_LBRACK] = ACTIONS(2062), [anon_sym_static] = ACTIONS(2062), [anon_sym_register] = ACTIONS(2062), [anon_sym_inline] = ACTIONS(2062), [anon_sym_thread_local] = ACTIONS(2062), [anon_sym_const] = ACTIONS(2062), [anon_sym_volatile] = ACTIONS(2062), [anon_sym_restrict] = ACTIONS(2062), [anon_sym__Atomic] = ACTIONS(2062), [anon_sym_mutable] = ACTIONS(2062), [anon_sym_constexpr] = ACTIONS(2062), [anon_sym_signed] = ACTIONS(2062), [anon_sym_unsigned] = ACTIONS(2062), [anon_sym_long] = ACTIONS(2062), [anon_sym_short] = ACTIONS(2062), [sym_primitive_type] = ACTIONS(2062), [anon_sym_enum] = ACTIONS(2062), [anon_sym_class] = ACTIONS(2062), [anon_sym_struct] = ACTIONS(2062), [anon_sym_union] = ACTIONS(2062), [anon_sym_if] = ACTIONS(2062), [anon_sym_switch] = ACTIONS(2062), [anon_sym_case] = ACTIONS(2062), [anon_sym_default] = ACTIONS(2062), [anon_sym_while] = ACTIONS(2062), [anon_sym_do] = ACTIONS(2062), [anon_sym_for] = ACTIONS(2062), [anon_sym_return] = ACTIONS(2062), [anon_sym_break] = ACTIONS(2062), [anon_sym_continue] = ACTIONS(2062), [anon_sym_goto] = ACTIONS(2062), [anon_sym_DASH_DASH] = ACTIONS(2064), [anon_sym_PLUS_PLUS] = ACTIONS(2064), [anon_sym_sizeof] = ACTIONS(2062), [sym_number_literal] = ACTIONS(2064), [anon_sym_L_SQUOTE] = ACTIONS(2064), [anon_sym_u_SQUOTE] = ACTIONS(2064), [anon_sym_U_SQUOTE] = ACTIONS(2064), [anon_sym_u8_SQUOTE] = ACTIONS(2064), [anon_sym_SQUOTE] = ACTIONS(2064), [anon_sym_L_DQUOTE] = ACTIONS(2064), [anon_sym_u_DQUOTE] = ACTIONS(2064), [anon_sym_U_DQUOTE] = ACTIONS(2064), [anon_sym_u8_DQUOTE] = ACTIONS(2064), [anon_sym_DQUOTE] = ACTIONS(2064), [sym_true] = ACTIONS(2062), [sym_false] = ACTIONS(2062), [sym_null] = ACTIONS(2062), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2062), [anon_sym_virtual] = ACTIONS(2062), [anon_sym_explicit] = ACTIONS(2062), [sym_auto] = ACTIONS(2062), [anon_sym_typename] = ACTIONS(2062), [anon_sym_template] = ACTIONS(2062), [anon_sym_operator] = ACTIONS(2062), [anon_sym_delete] = ACTIONS(2062), [anon_sym_throw] = ACTIONS(2062), [anon_sym_namespace] = ACTIONS(2062), [anon_sym_using] = ACTIONS(2062), [anon_sym_static_assert] = ACTIONS(2062), [anon_sym_co_return] = ACTIONS(2062), [anon_sym_co_yield] = ACTIONS(2062), [anon_sym_try] = ACTIONS(2062), [anon_sym_co_await] = ACTIONS(2062), [anon_sym_new] = ACTIONS(2062), [sym_this] = ACTIONS(2062), [sym_nullptr] = ACTIONS(2062), [sym_raw_string_literal] = ACTIONS(2064), }, [785] = { [sym_identifier] = ACTIONS(2142), [aux_sym_preproc_include_token1] = ACTIONS(2142), [aux_sym_preproc_def_token1] = ACTIONS(2142), [aux_sym_preproc_if_token1] = ACTIONS(2142), [aux_sym_preproc_if_token2] = ACTIONS(2142), [aux_sym_preproc_ifdef_token1] = ACTIONS(2142), [aux_sym_preproc_ifdef_token2] = ACTIONS(2142), [sym_preproc_directive] = ACTIONS(2142), [anon_sym_LPAREN2] = ACTIONS(2144), [anon_sym_BANG] = ACTIONS(2144), [anon_sym_TILDE] = ACTIONS(2144), [anon_sym_DASH] = ACTIONS(2142), [anon_sym_PLUS] = ACTIONS(2142), [anon_sym_STAR] = ACTIONS(2144), [anon_sym_AMP_AMP] = ACTIONS(2144), [anon_sym_AMP] = ACTIONS(2142), [anon_sym_SEMI] = ACTIONS(2144), [anon_sym_typedef] = ACTIONS(2142), [anon_sym_extern] = ACTIONS(2142), [anon_sym___attribute__] = ACTIONS(2142), [anon_sym_COLON_COLON] = ACTIONS(2144), [anon_sym_LBRACK_LBRACK] = ACTIONS(2144), [anon_sym___declspec] = ACTIONS(2142), [anon_sym___based] = ACTIONS(2142), [anon_sym___cdecl] = ACTIONS(2142), [anon_sym___clrcall] = ACTIONS(2142), [anon_sym___stdcall] = ACTIONS(2142), [anon_sym___fastcall] = ACTIONS(2142), [anon_sym___thiscall] = ACTIONS(2142), [anon_sym___vectorcall] = ACTIONS(2142), [anon_sym_LBRACE] = ACTIONS(2144), [anon_sym_LBRACK] = ACTIONS(2142), [anon_sym_static] = ACTIONS(2142), [anon_sym_register] = ACTIONS(2142), [anon_sym_inline] = ACTIONS(2142), [anon_sym_thread_local] = ACTIONS(2142), [anon_sym_const] = ACTIONS(2142), [anon_sym_volatile] = ACTIONS(2142), [anon_sym_restrict] = ACTIONS(2142), [anon_sym__Atomic] = ACTIONS(2142), [anon_sym_mutable] = ACTIONS(2142), [anon_sym_constexpr] = ACTIONS(2142), [anon_sym_signed] = ACTIONS(2142), [anon_sym_unsigned] = ACTIONS(2142), [anon_sym_long] = ACTIONS(2142), [anon_sym_short] = ACTIONS(2142), [sym_primitive_type] = ACTIONS(2142), [anon_sym_enum] = ACTIONS(2142), [anon_sym_class] = ACTIONS(2142), [anon_sym_struct] = ACTIONS(2142), [anon_sym_union] = ACTIONS(2142), [anon_sym_if] = ACTIONS(2142), [anon_sym_switch] = ACTIONS(2142), [anon_sym_case] = ACTIONS(2142), [anon_sym_default] = ACTIONS(2142), [anon_sym_while] = ACTIONS(2142), [anon_sym_do] = ACTIONS(2142), [anon_sym_for] = ACTIONS(2142), [anon_sym_return] = ACTIONS(2142), [anon_sym_break] = ACTIONS(2142), [anon_sym_continue] = ACTIONS(2142), [anon_sym_goto] = ACTIONS(2142), [anon_sym_DASH_DASH] = ACTIONS(2144), [anon_sym_PLUS_PLUS] = ACTIONS(2144), [anon_sym_sizeof] = ACTIONS(2142), [sym_number_literal] = ACTIONS(2144), [anon_sym_L_SQUOTE] = ACTIONS(2144), [anon_sym_u_SQUOTE] = ACTIONS(2144), [anon_sym_U_SQUOTE] = ACTIONS(2144), [anon_sym_u8_SQUOTE] = ACTIONS(2144), [anon_sym_SQUOTE] = ACTIONS(2144), [anon_sym_L_DQUOTE] = ACTIONS(2144), [anon_sym_u_DQUOTE] = ACTIONS(2144), [anon_sym_U_DQUOTE] = ACTIONS(2144), [anon_sym_u8_DQUOTE] = ACTIONS(2144), [anon_sym_DQUOTE] = ACTIONS(2144), [sym_true] = ACTIONS(2142), [sym_false] = ACTIONS(2142), [sym_null] = ACTIONS(2142), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2142), [anon_sym_virtual] = ACTIONS(2142), [anon_sym_explicit] = ACTIONS(2142), [sym_auto] = ACTIONS(2142), [anon_sym_typename] = ACTIONS(2142), [anon_sym_template] = ACTIONS(2142), [anon_sym_operator] = ACTIONS(2142), [anon_sym_delete] = ACTIONS(2142), [anon_sym_throw] = ACTIONS(2142), [anon_sym_namespace] = ACTIONS(2142), [anon_sym_using] = ACTIONS(2142), [anon_sym_static_assert] = ACTIONS(2142), [anon_sym_co_return] = ACTIONS(2142), [anon_sym_co_yield] = ACTIONS(2142), [anon_sym_try] = ACTIONS(2142), [anon_sym_co_await] = ACTIONS(2142), [anon_sym_new] = ACTIONS(2142), [sym_this] = ACTIONS(2142), [sym_nullptr] = ACTIONS(2142), [sym_raw_string_literal] = ACTIONS(2144), }, [786] = { [ts_builtin_sym_end] = ACTIONS(2092), [sym_identifier] = ACTIONS(2090), [aux_sym_preproc_include_token1] = ACTIONS(2090), [aux_sym_preproc_def_token1] = ACTIONS(2090), [aux_sym_preproc_if_token1] = ACTIONS(2090), [aux_sym_preproc_ifdef_token1] = ACTIONS(2090), [aux_sym_preproc_ifdef_token2] = ACTIONS(2090), [sym_preproc_directive] = ACTIONS(2090), [anon_sym_LPAREN2] = ACTIONS(2092), [anon_sym_BANG] = ACTIONS(2092), [anon_sym_TILDE] = ACTIONS(2092), [anon_sym_DASH] = ACTIONS(2090), [anon_sym_PLUS] = ACTIONS(2090), [anon_sym_STAR] = ACTIONS(2092), [anon_sym_AMP_AMP] = ACTIONS(2092), [anon_sym_AMP] = ACTIONS(2090), [anon_sym_SEMI] = ACTIONS(2092), [anon_sym_typedef] = ACTIONS(2090), [anon_sym_extern] = ACTIONS(2090), [anon_sym___attribute__] = ACTIONS(2090), [anon_sym_COLON_COLON] = ACTIONS(2092), [anon_sym_LBRACK_LBRACK] = ACTIONS(2092), [anon_sym___declspec] = ACTIONS(2090), [anon_sym___based] = ACTIONS(2090), [anon_sym___cdecl] = ACTIONS(2090), [anon_sym___clrcall] = ACTIONS(2090), [anon_sym___stdcall] = ACTIONS(2090), [anon_sym___fastcall] = ACTIONS(2090), [anon_sym___thiscall] = ACTIONS(2090), [anon_sym___vectorcall] = ACTIONS(2090), [anon_sym_LBRACE] = ACTIONS(2092), [anon_sym_LBRACK] = ACTIONS(2090), [anon_sym_static] = ACTIONS(2090), [anon_sym_register] = ACTIONS(2090), [anon_sym_inline] = ACTIONS(2090), [anon_sym_thread_local] = ACTIONS(2090), [anon_sym_const] = ACTIONS(2090), [anon_sym_volatile] = ACTIONS(2090), [anon_sym_restrict] = ACTIONS(2090), [anon_sym__Atomic] = ACTIONS(2090), [anon_sym_mutable] = ACTIONS(2090), [anon_sym_constexpr] = ACTIONS(2090), [anon_sym_signed] = ACTIONS(2090), [anon_sym_unsigned] = ACTIONS(2090), [anon_sym_long] = ACTIONS(2090), [anon_sym_short] = ACTIONS(2090), [sym_primitive_type] = ACTIONS(2090), [anon_sym_enum] = ACTIONS(2090), [anon_sym_class] = ACTIONS(2090), [anon_sym_struct] = ACTIONS(2090), [anon_sym_union] = ACTIONS(2090), [anon_sym_if] = ACTIONS(2090), [anon_sym_switch] = ACTIONS(2090), [anon_sym_case] = ACTIONS(2090), [anon_sym_default] = ACTIONS(2090), [anon_sym_while] = ACTIONS(2090), [anon_sym_do] = ACTIONS(2090), [anon_sym_for] = ACTIONS(2090), [anon_sym_return] = ACTIONS(2090), [anon_sym_break] = ACTIONS(2090), [anon_sym_continue] = ACTIONS(2090), [anon_sym_goto] = ACTIONS(2090), [anon_sym_DASH_DASH] = ACTIONS(2092), [anon_sym_PLUS_PLUS] = ACTIONS(2092), [anon_sym_sizeof] = ACTIONS(2090), [sym_number_literal] = ACTIONS(2092), [anon_sym_L_SQUOTE] = ACTIONS(2092), [anon_sym_u_SQUOTE] = ACTIONS(2092), [anon_sym_U_SQUOTE] = ACTIONS(2092), [anon_sym_u8_SQUOTE] = ACTIONS(2092), [anon_sym_SQUOTE] = ACTIONS(2092), [anon_sym_L_DQUOTE] = ACTIONS(2092), [anon_sym_u_DQUOTE] = ACTIONS(2092), [anon_sym_U_DQUOTE] = ACTIONS(2092), [anon_sym_u8_DQUOTE] = ACTIONS(2092), [anon_sym_DQUOTE] = ACTIONS(2092), [sym_true] = ACTIONS(2090), [sym_false] = ACTIONS(2090), [sym_null] = ACTIONS(2090), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2090), [anon_sym_virtual] = ACTIONS(2090), [anon_sym_explicit] = ACTIONS(2090), [sym_auto] = ACTIONS(2090), [anon_sym_typename] = ACTIONS(2090), [anon_sym_template] = ACTIONS(2090), [anon_sym_operator] = ACTIONS(2090), [anon_sym_delete] = ACTIONS(2090), [anon_sym_throw] = ACTIONS(2090), [anon_sym_namespace] = ACTIONS(2090), [anon_sym_using] = ACTIONS(2090), [anon_sym_static_assert] = ACTIONS(2090), [anon_sym_co_return] = ACTIONS(2090), [anon_sym_co_yield] = ACTIONS(2090), [anon_sym_try] = ACTIONS(2090), [anon_sym_co_await] = ACTIONS(2090), [anon_sym_new] = ACTIONS(2090), [sym_this] = ACTIONS(2090), [sym_nullptr] = ACTIONS(2090), [sym_raw_string_literal] = ACTIONS(2092), }, [787] = { [ts_builtin_sym_end] = ACTIONS(2068), [sym_identifier] = ACTIONS(2066), [aux_sym_preproc_include_token1] = ACTIONS(2066), [aux_sym_preproc_def_token1] = ACTIONS(2066), [aux_sym_preproc_if_token1] = ACTIONS(2066), [aux_sym_preproc_ifdef_token1] = ACTIONS(2066), [aux_sym_preproc_ifdef_token2] = ACTIONS(2066), [sym_preproc_directive] = ACTIONS(2066), [anon_sym_LPAREN2] = ACTIONS(2068), [anon_sym_BANG] = ACTIONS(2068), [anon_sym_TILDE] = ACTIONS(2068), [anon_sym_DASH] = ACTIONS(2066), [anon_sym_PLUS] = ACTIONS(2066), [anon_sym_STAR] = ACTIONS(2068), [anon_sym_AMP_AMP] = ACTIONS(2068), [anon_sym_AMP] = ACTIONS(2066), [anon_sym_SEMI] = ACTIONS(2068), [anon_sym_typedef] = ACTIONS(2066), [anon_sym_extern] = ACTIONS(2066), [anon_sym___attribute__] = ACTIONS(2066), [anon_sym_COLON_COLON] = ACTIONS(2068), [anon_sym_LBRACK_LBRACK] = ACTIONS(2068), [anon_sym___declspec] = ACTIONS(2066), [anon_sym___based] = ACTIONS(2066), [anon_sym___cdecl] = ACTIONS(2066), [anon_sym___clrcall] = ACTIONS(2066), [anon_sym___stdcall] = ACTIONS(2066), [anon_sym___fastcall] = ACTIONS(2066), [anon_sym___thiscall] = ACTIONS(2066), [anon_sym___vectorcall] = ACTIONS(2066), [anon_sym_LBRACE] = ACTIONS(2068), [anon_sym_LBRACK] = ACTIONS(2066), [anon_sym_static] = ACTIONS(2066), [anon_sym_register] = ACTIONS(2066), [anon_sym_inline] = ACTIONS(2066), [anon_sym_thread_local] = ACTIONS(2066), [anon_sym_const] = ACTIONS(2066), [anon_sym_volatile] = ACTIONS(2066), [anon_sym_restrict] = ACTIONS(2066), [anon_sym__Atomic] = ACTIONS(2066), [anon_sym_mutable] = ACTIONS(2066), [anon_sym_constexpr] = ACTIONS(2066), [anon_sym_signed] = ACTIONS(2066), [anon_sym_unsigned] = ACTIONS(2066), [anon_sym_long] = ACTIONS(2066), [anon_sym_short] = ACTIONS(2066), [sym_primitive_type] = ACTIONS(2066), [anon_sym_enum] = ACTIONS(2066), [anon_sym_class] = ACTIONS(2066), [anon_sym_struct] = ACTIONS(2066), [anon_sym_union] = ACTIONS(2066), [anon_sym_if] = ACTIONS(2066), [anon_sym_switch] = ACTIONS(2066), [anon_sym_case] = ACTIONS(2066), [anon_sym_default] = ACTIONS(2066), [anon_sym_while] = ACTIONS(2066), [anon_sym_do] = ACTIONS(2066), [anon_sym_for] = ACTIONS(2066), [anon_sym_return] = ACTIONS(2066), [anon_sym_break] = ACTIONS(2066), [anon_sym_continue] = ACTIONS(2066), [anon_sym_goto] = ACTIONS(2066), [anon_sym_DASH_DASH] = ACTIONS(2068), [anon_sym_PLUS_PLUS] = ACTIONS(2068), [anon_sym_sizeof] = ACTIONS(2066), [sym_number_literal] = ACTIONS(2068), [anon_sym_L_SQUOTE] = ACTIONS(2068), [anon_sym_u_SQUOTE] = ACTIONS(2068), [anon_sym_U_SQUOTE] = ACTIONS(2068), [anon_sym_u8_SQUOTE] = ACTIONS(2068), [anon_sym_SQUOTE] = ACTIONS(2068), [anon_sym_L_DQUOTE] = ACTIONS(2068), [anon_sym_u_DQUOTE] = ACTIONS(2068), [anon_sym_U_DQUOTE] = ACTIONS(2068), [anon_sym_u8_DQUOTE] = ACTIONS(2068), [anon_sym_DQUOTE] = ACTIONS(2068), [sym_true] = ACTIONS(2066), [sym_false] = ACTIONS(2066), [sym_null] = ACTIONS(2066), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2066), [anon_sym_virtual] = ACTIONS(2066), [anon_sym_explicit] = ACTIONS(2066), [sym_auto] = ACTIONS(2066), [anon_sym_typename] = ACTIONS(2066), [anon_sym_template] = ACTIONS(2066), [anon_sym_operator] = ACTIONS(2066), [anon_sym_delete] = ACTIONS(2066), [anon_sym_throw] = ACTIONS(2066), [anon_sym_namespace] = ACTIONS(2066), [anon_sym_using] = ACTIONS(2066), [anon_sym_static_assert] = ACTIONS(2066), [anon_sym_co_return] = ACTIONS(2066), [anon_sym_co_yield] = ACTIONS(2066), [anon_sym_try] = ACTIONS(2066), [anon_sym_co_await] = ACTIONS(2066), [anon_sym_new] = ACTIONS(2066), [sym_this] = ACTIONS(2066), [sym_nullptr] = ACTIONS(2066), [sym_raw_string_literal] = ACTIONS(2068), }, [788] = { [sym_identifier] = ACTIONS(2186), [aux_sym_preproc_include_token1] = ACTIONS(2186), [aux_sym_preproc_def_token1] = ACTIONS(2186), [aux_sym_preproc_if_token1] = ACTIONS(2186), [aux_sym_preproc_ifdef_token1] = ACTIONS(2186), [aux_sym_preproc_ifdef_token2] = ACTIONS(2186), [sym_preproc_directive] = ACTIONS(2186), [anon_sym_LPAREN2] = ACTIONS(2188), [anon_sym_BANG] = ACTIONS(2188), [anon_sym_TILDE] = ACTIONS(2188), [anon_sym_DASH] = ACTIONS(2186), [anon_sym_PLUS] = ACTIONS(2186), [anon_sym_STAR] = ACTIONS(2188), [anon_sym_AMP_AMP] = ACTIONS(2188), [anon_sym_AMP] = ACTIONS(2186), [anon_sym_SEMI] = ACTIONS(2188), [anon_sym_typedef] = ACTIONS(2186), [anon_sym_extern] = ACTIONS(2186), [anon_sym___attribute__] = ACTIONS(2186), [anon_sym_COLON_COLON] = ACTIONS(2188), [anon_sym_LBRACK_LBRACK] = ACTIONS(2188), [anon_sym___declspec] = ACTIONS(2186), [anon_sym___based] = ACTIONS(2186), [anon_sym___cdecl] = ACTIONS(2186), [anon_sym___clrcall] = ACTIONS(2186), [anon_sym___stdcall] = ACTIONS(2186), [anon_sym___fastcall] = ACTIONS(2186), [anon_sym___thiscall] = ACTIONS(2186), [anon_sym___vectorcall] = ACTIONS(2186), [anon_sym_LBRACE] = ACTIONS(2188), [anon_sym_RBRACE] = ACTIONS(2188), [anon_sym_LBRACK] = ACTIONS(2186), [anon_sym_static] = ACTIONS(2186), [anon_sym_register] = ACTIONS(2186), [anon_sym_inline] = ACTIONS(2186), [anon_sym_thread_local] = ACTIONS(2186), [anon_sym_const] = ACTIONS(2186), [anon_sym_volatile] = ACTIONS(2186), [anon_sym_restrict] = ACTIONS(2186), [anon_sym__Atomic] = ACTIONS(2186), [anon_sym_mutable] = ACTIONS(2186), [anon_sym_constexpr] = ACTIONS(2186), [anon_sym_signed] = ACTIONS(2186), [anon_sym_unsigned] = ACTIONS(2186), [anon_sym_long] = ACTIONS(2186), [anon_sym_short] = ACTIONS(2186), [sym_primitive_type] = ACTIONS(2186), [anon_sym_enum] = ACTIONS(2186), [anon_sym_class] = ACTIONS(2186), [anon_sym_struct] = ACTIONS(2186), [anon_sym_union] = ACTIONS(2186), [anon_sym_if] = ACTIONS(2186), [anon_sym_switch] = ACTIONS(2186), [anon_sym_case] = ACTIONS(2186), [anon_sym_default] = ACTIONS(2186), [anon_sym_while] = ACTIONS(2186), [anon_sym_do] = ACTIONS(2186), [anon_sym_for] = ACTIONS(2186), [anon_sym_return] = ACTIONS(2186), [anon_sym_break] = ACTIONS(2186), [anon_sym_continue] = ACTIONS(2186), [anon_sym_goto] = ACTIONS(2186), [anon_sym_DASH_DASH] = ACTIONS(2188), [anon_sym_PLUS_PLUS] = ACTIONS(2188), [anon_sym_sizeof] = ACTIONS(2186), [sym_number_literal] = ACTIONS(2188), [anon_sym_L_SQUOTE] = ACTIONS(2188), [anon_sym_u_SQUOTE] = ACTIONS(2188), [anon_sym_U_SQUOTE] = ACTIONS(2188), [anon_sym_u8_SQUOTE] = ACTIONS(2188), [anon_sym_SQUOTE] = ACTIONS(2188), [anon_sym_L_DQUOTE] = ACTIONS(2188), [anon_sym_u_DQUOTE] = ACTIONS(2188), [anon_sym_U_DQUOTE] = ACTIONS(2188), [anon_sym_u8_DQUOTE] = ACTIONS(2188), [anon_sym_DQUOTE] = ACTIONS(2188), [sym_true] = ACTIONS(2186), [sym_false] = ACTIONS(2186), [sym_null] = ACTIONS(2186), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2186), [anon_sym_virtual] = ACTIONS(2186), [anon_sym_explicit] = ACTIONS(2186), [sym_auto] = ACTIONS(2186), [anon_sym_typename] = ACTIONS(2186), [anon_sym_template] = ACTIONS(2186), [anon_sym_operator] = ACTIONS(2186), [anon_sym_delete] = ACTIONS(2186), [anon_sym_throw] = ACTIONS(2186), [anon_sym_namespace] = ACTIONS(2186), [anon_sym_using] = ACTIONS(2186), [anon_sym_static_assert] = ACTIONS(2186), [anon_sym_co_return] = ACTIONS(2186), [anon_sym_co_yield] = ACTIONS(2186), [anon_sym_try] = ACTIONS(2186), [anon_sym_co_await] = ACTIONS(2186), [anon_sym_new] = ACTIONS(2186), [sym_this] = ACTIONS(2186), [sym_nullptr] = ACTIONS(2186), [sym_raw_string_literal] = ACTIONS(2188), }, [789] = { [ts_builtin_sym_end] = ACTIONS(2216), [sym_identifier] = ACTIONS(2214), [aux_sym_preproc_include_token1] = ACTIONS(2214), [aux_sym_preproc_def_token1] = ACTIONS(2214), [aux_sym_preproc_if_token1] = ACTIONS(2214), [aux_sym_preproc_ifdef_token1] = ACTIONS(2214), [aux_sym_preproc_ifdef_token2] = ACTIONS(2214), [sym_preproc_directive] = ACTIONS(2214), [anon_sym_LPAREN2] = ACTIONS(2216), [anon_sym_BANG] = ACTIONS(2216), [anon_sym_TILDE] = ACTIONS(2216), [anon_sym_DASH] = ACTIONS(2214), [anon_sym_PLUS] = ACTIONS(2214), [anon_sym_STAR] = ACTIONS(2216), [anon_sym_AMP_AMP] = ACTIONS(2216), [anon_sym_AMP] = ACTIONS(2214), [anon_sym_SEMI] = ACTIONS(2216), [anon_sym_typedef] = ACTIONS(2214), [anon_sym_extern] = ACTIONS(2214), [anon_sym___attribute__] = ACTIONS(2214), [anon_sym_COLON_COLON] = ACTIONS(2216), [anon_sym_LBRACK_LBRACK] = ACTIONS(2216), [anon_sym___declspec] = ACTIONS(2214), [anon_sym___based] = ACTIONS(2214), [anon_sym___cdecl] = ACTIONS(2214), [anon_sym___clrcall] = ACTIONS(2214), [anon_sym___stdcall] = ACTIONS(2214), [anon_sym___fastcall] = ACTIONS(2214), [anon_sym___thiscall] = ACTIONS(2214), [anon_sym___vectorcall] = ACTIONS(2214), [anon_sym_LBRACE] = ACTIONS(2216), [anon_sym_LBRACK] = ACTIONS(2214), [anon_sym_static] = ACTIONS(2214), [anon_sym_register] = ACTIONS(2214), [anon_sym_inline] = ACTIONS(2214), [anon_sym_thread_local] = ACTIONS(2214), [anon_sym_const] = ACTIONS(2214), [anon_sym_volatile] = ACTIONS(2214), [anon_sym_restrict] = ACTIONS(2214), [anon_sym__Atomic] = ACTIONS(2214), [anon_sym_mutable] = ACTIONS(2214), [anon_sym_constexpr] = ACTIONS(2214), [anon_sym_signed] = ACTIONS(2214), [anon_sym_unsigned] = ACTIONS(2214), [anon_sym_long] = ACTIONS(2214), [anon_sym_short] = ACTIONS(2214), [sym_primitive_type] = ACTIONS(2214), [anon_sym_enum] = ACTIONS(2214), [anon_sym_class] = ACTIONS(2214), [anon_sym_struct] = ACTIONS(2214), [anon_sym_union] = ACTIONS(2214), [anon_sym_if] = ACTIONS(2214), [anon_sym_switch] = ACTIONS(2214), [anon_sym_case] = ACTIONS(2214), [anon_sym_default] = ACTIONS(2214), [anon_sym_while] = ACTIONS(2214), [anon_sym_do] = ACTIONS(2214), [anon_sym_for] = ACTIONS(2214), [anon_sym_return] = ACTIONS(2214), [anon_sym_break] = ACTIONS(2214), [anon_sym_continue] = ACTIONS(2214), [anon_sym_goto] = ACTIONS(2214), [anon_sym_DASH_DASH] = ACTIONS(2216), [anon_sym_PLUS_PLUS] = ACTIONS(2216), [anon_sym_sizeof] = ACTIONS(2214), [sym_number_literal] = ACTIONS(2216), [anon_sym_L_SQUOTE] = ACTIONS(2216), [anon_sym_u_SQUOTE] = ACTIONS(2216), [anon_sym_U_SQUOTE] = ACTIONS(2216), [anon_sym_u8_SQUOTE] = ACTIONS(2216), [anon_sym_SQUOTE] = ACTIONS(2216), [anon_sym_L_DQUOTE] = ACTIONS(2216), [anon_sym_u_DQUOTE] = ACTIONS(2216), [anon_sym_U_DQUOTE] = ACTIONS(2216), [anon_sym_u8_DQUOTE] = ACTIONS(2216), [anon_sym_DQUOTE] = ACTIONS(2216), [sym_true] = ACTIONS(2214), [sym_false] = ACTIONS(2214), [sym_null] = ACTIONS(2214), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2214), [anon_sym_virtual] = ACTIONS(2214), [anon_sym_explicit] = ACTIONS(2214), [sym_auto] = ACTIONS(2214), [anon_sym_typename] = ACTIONS(2214), [anon_sym_template] = ACTIONS(2214), [anon_sym_operator] = ACTIONS(2214), [anon_sym_delete] = ACTIONS(2214), [anon_sym_throw] = ACTIONS(2214), [anon_sym_namespace] = ACTIONS(2214), [anon_sym_using] = ACTIONS(2214), [anon_sym_static_assert] = ACTIONS(2214), [anon_sym_co_return] = ACTIONS(2214), [anon_sym_co_yield] = ACTIONS(2214), [anon_sym_try] = ACTIONS(2214), [anon_sym_co_await] = ACTIONS(2214), [anon_sym_new] = ACTIONS(2214), [sym_this] = ACTIONS(2214), [sym_nullptr] = ACTIONS(2214), [sym_raw_string_literal] = ACTIONS(2216), }, [790] = { [sym_identifier] = ACTIONS(2142), [aux_sym_preproc_include_token1] = ACTIONS(2142), [aux_sym_preproc_def_token1] = ACTIONS(2142), [aux_sym_preproc_if_token1] = ACTIONS(2142), [aux_sym_preproc_ifdef_token1] = ACTIONS(2142), [aux_sym_preproc_ifdef_token2] = ACTIONS(2142), [sym_preproc_directive] = ACTIONS(2142), [anon_sym_LPAREN2] = ACTIONS(2144), [anon_sym_BANG] = ACTIONS(2144), [anon_sym_TILDE] = ACTIONS(2144), [anon_sym_DASH] = ACTIONS(2142), [anon_sym_PLUS] = ACTIONS(2142), [anon_sym_STAR] = ACTIONS(2144), [anon_sym_AMP_AMP] = ACTIONS(2144), [anon_sym_AMP] = ACTIONS(2142), [anon_sym_SEMI] = ACTIONS(2144), [anon_sym_typedef] = ACTIONS(2142), [anon_sym_extern] = ACTIONS(2142), [anon_sym___attribute__] = ACTIONS(2142), [anon_sym_COLON_COLON] = ACTIONS(2144), [anon_sym_LBRACK_LBRACK] = ACTIONS(2144), [anon_sym___declspec] = ACTIONS(2142), [anon_sym___based] = ACTIONS(2142), [anon_sym___cdecl] = ACTIONS(2142), [anon_sym___clrcall] = ACTIONS(2142), [anon_sym___stdcall] = ACTIONS(2142), [anon_sym___fastcall] = ACTIONS(2142), [anon_sym___thiscall] = ACTIONS(2142), [anon_sym___vectorcall] = ACTIONS(2142), [anon_sym_LBRACE] = ACTIONS(2144), [anon_sym_RBRACE] = ACTIONS(2144), [anon_sym_LBRACK] = ACTIONS(2142), [anon_sym_static] = ACTIONS(2142), [anon_sym_register] = ACTIONS(2142), [anon_sym_inline] = ACTIONS(2142), [anon_sym_thread_local] = ACTIONS(2142), [anon_sym_const] = ACTIONS(2142), [anon_sym_volatile] = ACTIONS(2142), [anon_sym_restrict] = ACTIONS(2142), [anon_sym__Atomic] = ACTIONS(2142), [anon_sym_mutable] = ACTIONS(2142), [anon_sym_constexpr] = ACTIONS(2142), [anon_sym_signed] = ACTIONS(2142), [anon_sym_unsigned] = ACTIONS(2142), [anon_sym_long] = ACTIONS(2142), [anon_sym_short] = ACTIONS(2142), [sym_primitive_type] = ACTIONS(2142), [anon_sym_enum] = ACTIONS(2142), [anon_sym_class] = ACTIONS(2142), [anon_sym_struct] = ACTIONS(2142), [anon_sym_union] = ACTIONS(2142), [anon_sym_if] = ACTIONS(2142), [anon_sym_switch] = ACTIONS(2142), [anon_sym_case] = ACTIONS(2142), [anon_sym_default] = ACTIONS(2142), [anon_sym_while] = ACTIONS(2142), [anon_sym_do] = ACTIONS(2142), [anon_sym_for] = ACTIONS(2142), [anon_sym_return] = ACTIONS(2142), [anon_sym_break] = ACTIONS(2142), [anon_sym_continue] = ACTIONS(2142), [anon_sym_goto] = ACTIONS(2142), [anon_sym_DASH_DASH] = ACTIONS(2144), [anon_sym_PLUS_PLUS] = ACTIONS(2144), [anon_sym_sizeof] = ACTIONS(2142), [sym_number_literal] = ACTIONS(2144), [anon_sym_L_SQUOTE] = ACTIONS(2144), [anon_sym_u_SQUOTE] = ACTIONS(2144), [anon_sym_U_SQUOTE] = ACTIONS(2144), [anon_sym_u8_SQUOTE] = ACTIONS(2144), [anon_sym_SQUOTE] = ACTIONS(2144), [anon_sym_L_DQUOTE] = ACTIONS(2144), [anon_sym_u_DQUOTE] = ACTIONS(2144), [anon_sym_U_DQUOTE] = ACTIONS(2144), [anon_sym_u8_DQUOTE] = ACTIONS(2144), [anon_sym_DQUOTE] = ACTIONS(2144), [sym_true] = ACTIONS(2142), [sym_false] = ACTIONS(2142), [sym_null] = ACTIONS(2142), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2142), [anon_sym_virtual] = ACTIONS(2142), [anon_sym_explicit] = ACTIONS(2142), [sym_auto] = ACTIONS(2142), [anon_sym_typename] = ACTIONS(2142), [anon_sym_template] = ACTIONS(2142), [anon_sym_operator] = ACTIONS(2142), [anon_sym_delete] = ACTIONS(2142), [anon_sym_throw] = ACTIONS(2142), [anon_sym_namespace] = ACTIONS(2142), [anon_sym_using] = ACTIONS(2142), [anon_sym_static_assert] = ACTIONS(2142), [anon_sym_co_return] = ACTIONS(2142), [anon_sym_co_yield] = ACTIONS(2142), [anon_sym_try] = ACTIONS(2142), [anon_sym_co_await] = ACTIONS(2142), [anon_sym_new] = ACTIONS(2142), [sym_this] = ACTIONS(2142), [sym_nullptr] = ACTIONS(2142), [sym_raw_string_literal] = ACTIONS(2144), }, [791] = { [ts_builtin_sym_end] = ACTIONS(2040), [sym_identifier] = ACTIONS(2038), [aux_sym_preproc_include_token1] = ACTIONS(2038), [aux_sym_preproc_def_token1] = ACTIONS(2038), [aux_sym_preproc_if_token1] = ACTIONS(2038), [aux_sym_preproc_ifdef_token1] = ACTIONS(2038), [aux_sym_preproc_ifdef_token2] = ACTIONS(2038), [sym_preproc_directive] = ACTIONS(2038), [anon_sym_LPAREN2] = ACTIONS(2040), [anon_sym_BANG] = ACTIONS(2040), [anon_sym_TILDE] = ACTIONS(2040), [anon_sym_DASH] = ACTIONS(2038), [anon_sym_PLUS] = ACTIONS(2038), [anon_sym_STAR] = ACTIONS(2040), [anon_sym_AMP_AMP] = ACTIONS(2040), [anon_sym_AMP] = ACTIONS(2038), [anon_sym_SEMI] = ACTIONS(2040), [anon_sym_typedef] = ACTIONS(2038), [anon_sym_extern] = ACTIONS(2038), [anon_sym___attribute__] = ACTIONS(2038), [anon_sym_COLON_COLON] = ACTIONS(2040), [anon_sym_LBRACK_LBRACK] = ACTIONS(2040), [anon_sym___declspec] = ACTIONS(2038), [anon_sym___based] = ACTIONS(2038), [anon_sym___cdecl] = ACTIONS(2038), [anon_sym___clrcall] = ACTIONS(2038), [anon_sym___stdcall] = ACTIONS(2038), [anon_sym___fastcall] = ACTIONS(2038), [anon_sym___thiscall] = ACTIONS(2038), [anon_sym___vectorcall] = ACTIONS(2038), [anon_sym_LBRACE] = ACTIONS(2040), [anon_sym_LBRACK] = ACTIONS(2038), [anon_sym_static] = ACTIONS(2038), [anon_sym_register] = ACTIONS(2038), [anon_sym_inline] = ACTIONS(2038), [anon_sym_thread_local] = ACTIONS(2038), [anon_sym_const] = ACTIONS(2038), [anon_sym_volatile] = ACTIONS(2038), [anon_sym_restrict] = ACTIONS(2038), [anon_sym__Atomic] = ACTIONS(2038), [anon_sym_mutable] = ACTIONS(2038), [anon_sym_constexpr] = ACTIONS(2038), [anon_sym_signed] = ACTIONS(2038), [anon_sym_unsigned] = ACTIONS(2038), [anon_sym_long] = ACTIONS(2038), [anon_sym_short] = ACTIONS(2038), [sym_primitive_type] = ACTIONS(2038), [anon_sym_enum] = ACTIONS(2038), [anon_sym_class] = ACTIONS(2038), [anon_sym_struct] = ACTIONS(2038), [anon_sym_union] = ACTIONS(2038), [anon_sym_if] = ACTIONS(2038), [anon_sym_switch] = ACTIONS(2038), [anon_sym_case] = ACTIONS(2038), [anon_sym_default] = ACTIONS(2038), [anon_sym_while] = ACTIONS(2038), [anon_sym_do] = ACTIONS(2038), [anon_sym_for] = ACTIONS(2038), [anon_sym_return] = ACTIONS(2038), [anon_sym_break] = ACTIONS(2038), [anon_sym_continue] = ACTIONS(2038), [anon_sym_goto] = ACTIONS(2038), [anon_sym_DASH_DASH] = ACTIONS(2040), [anon_sym_PLUS_PLUS] = ACTIONS(2040), [anon_sym_sizeof] = ACTIONS(2038), [sym_number_literal] = ACTIONS(2040), [anon_sym_L_SQUOTE] = ACTIONS(2040), [anon_sym_u_SQUOTE] = ACTIONS(2040), [anon_sym_U_SQUOTE] = ACTIONS(2040), [anon_sym_u8_SQUOTE] = ACTIONS(2040), [anon_sym_SQUOTE] = ACTIONS(2040), [anon_sym_L_DQUOTE] = ACTIONS(2040), [anon_sym_u_DQUOTE] = ACTIONS(2040), [anon_sym_U_DQUOTE] = ACTIONS(2040), [anon_sym_u8_DQUOTE] = ACTIONS(2040), [anon_sym_DQUOTE] = ACTIONS(2040), [sym_true] = ACTIONS(2038), [sym_false] = ACTIONS(2038), [sym_null] = ACTIONS(2038), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2038), [anon_sym_virtual] = ACTIONS(2038), [anon_sym_explicit] = ACTIONS(2038), [sym_auto] = ACTIONS(2038), [anon_sym_typename] = ACTIONS(2038), [anon_sym_template] = ACTIONS(2038), [anon_sym_operator] = ACTIONS(2038), [anon_sym_delete] = ACTIONS(2038), [anon_sym_throw] = ACTIONS(2038), [anon_sym_namespace] = ACTIONS(2038), [anon_sym_using] = ACTIONS(2038), [anon_sym_static_assert] = ACTIONS(2038), [anon_sym_co_return] = ACTIONS(2038), [anon_sym_co_yield] = ACTIONS(2038), [anon_sym_try] = ACTIONS(2038), [anon_sym_co_await] = ACTIONS(2038), [anon_sym_new] = ACTIONS(2038), [sym_this] = ACTIONS(2038), [sym_nullptr] = ACTIONS(2038), [sym_raw_string_literal] = ACTIONS(2040), }, [792] = { [ts_builtin_sym_end] = ACTIONS(2080), [sym_identifier] = ACTIONS(2078), [aux_sym_preproc_include_token1] = ACTIONS(2078), [aux_sym_preproc_def_token1] = ACTIONS(2078), [aux_sym_preproc_if_token1] = ACTIONS(2078), [aux_sym_preproc_ifdef_token1] = ACTIONS(2078), [aux_sym_preproc_ifdef_token2] = ACTIONS(2078), [sym_preproc_directive] = ACTIONS(2078), [anon_sym_LPAREN2] = ACTIONS(2080), [anon_sym_BANG] = ACTIONS(2080), [anon_sym_TILDE] = ACTIONS(2080), [anon_sym_DASH] = ACTIONS(2078), [anon_sym_PLUS] = ACTIONS(2078), [anon_sym_STAR] = ACTIONS(2080), [anon_sym_AMP_AMP] = ACTIONS(2080), [anon_sym_AMP] = ACTIONS(2078), [anon_sym_SEMI] = ACTIONS(2080), [anon_sym_typedef] = ACTIONS(2078), [anon_sym_extern] = ACTIONS(2078), [anon_sym___attribute__] = ACTIONS(2078), [anon_sym_COLON_COLON] = ACTIONS(2080), [anon_sym_LBRACK_LBRACK] = ACTIONS(2080), [anon_sym___declspec] = ACTIONS(2078), [anon_sym___based] = ACTIONS(2078), [anon_sym___cdecl] = ACTIONS(2078), [anon_sym___clrcall] = ACTIONS(2078), [anon_sym___stdcall] = ACTIONS(2078), [anon_sym___fastcall] = ACTIONS(2078), [anon_sym___thiscall] = ACTIONS(2078), [anon_sym___vectorcall] = ACTIONS(2078), [anon_sym_LBRACE] = ACTIONS(2080), [anon_sym_LBRACK] = ACTIONS(2078), [anon_sym_static] = ACTIONS(2078), [anon_sym_register] = ACTIONS(2078), [anon_sym_inline] = ACTIONS(2078), [anon_sym_thread_local] = ACTIONS(2078), [anon_sym_const] = ACTIONS(2078), [anon_sym_volatile] = ACTIONS(2078), [anon_sym_restrict] = ACTIONS(2078), [anon_sym__Atomic] = ACTIONS(2078), [anon_sym_mutable] = ACTIONS(2078), [anon_sym_constexpr] = ACTIONS(2078), [anon_sym_signed] = ACTIONS(2078), [anon_sym_unsigned] = ACTIONS(2078), [anon_sym_long] = ACTIONS(2078), [anon_sym_short] = ACTIONS(2078), [sym_primitive_type] = ACTIONS(2078), [anon_sym_enum] = ACTIONS(2078), [anon_sym_class] = ACTIONS(2078), [anon_sym_struct] = ACTIONS(2078), [anon_sym_union] = ACTIONS(2078), [anon_sym_if] = ACTIONS(2078), [anon_sym_switch] = ACTIONS(2078), [anon_sym_case] = ACTIONS(2078), [anon_sym_default] = ACTIONS(2078), [anon_sym_while] = ACTIONS(2078), [anon_sym_do] = ACTIONS(2078), [anon_sym_for] = ACTIONS(2078), [anon_sym_return] = ACTIONS(2078), [anon_sym_break] = ACTIONS(2078), [anon_sym_continue] = ACTIONS(2078), [anon_sym_goto] = ACTIONS(2078), [anon_sym_DASH_DASH] = ACTIONS(2080), [anon_sym_PLUS_PLUS] = ACTIONS(2080), [anon_sym_sizeof] = ACTIONS(2078), [sym_number_literal] = ACTIONS(2080), [anon_sym_L_SQUOTE] = ACTIONS(2080), [anon_sym_u_SQUOTE] = ACTIONS(2080), [anon_sym_U_SQUOTE] = ACTIONS(2080), [anon_sym_u8_SQUOTE] = ACTIONS(2080), [anon_sym_SQUOTE] = ACTIONS(2080), [anon_sym_L_DQUOTE] = ACTIONS(2080), [anon_sym_u_DQUOTE] = ACTIONS(2080), [anon_sym_U_DQUOTE] = ACTIONS(2080), [anon_sym_u8_DQUOTE] = ACTIONS(2080), [anon_sym_DQUOTE] = ACTIONS(2080), [sym_true] = ACTIONS(2078), [sym_false] = ACTIONS(2078), [sym_null] = ACTIONS(2078), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2078), [anon_sym_virtual] = ACTIONS(2078), [anon_sym_explicit] = ACTIONS(2078), [sym_auto] = ACTIONS(2078), [anon_sym_typename] = ACTIONS(2078), [anon_sym_template] = ACTIONS(2078), [anon_sym_operator] = ACTIONS(2078), [anon_sym_delete] = ACTIONS(2078), [anon_sym_throw] = ACTIONS(2078), [anon_sym_namespace] = ACTIONS(2078), [anon_sym_using] = ACTIONS(2078), [anon_sym_static_assert] = ACTIONS(2078), [anon_sym_co_return] = ACTIONS(2078), [anon_sym_co_yield] = ACTIONS(2078), [anon_sym_try] = ACTIONS(2078), [anon_sym_co_await] = ACTIONS(2078), [anon_sym_new] = ACTIONS(2078), [sym_this] = ACTIONS(2078), [sym_nullptr] = ACTIONS(2078), [sym_raw_string_literal] = ACTIONS(2080), }, [793] = { [ts_builtin_sym_end] = ACTIONS(2084), [sym_identifier] = ACTIONS(2082), [aux_sym_preproc_include_token1] = ACTIONS(2082), [aux_sym_preproc_def_token1] = ACTIONS(2082), [aux_sym_preproc_if_token1] = ACTIONS(2082), [aux_sym_preproc_ifdef_token1] = ACTIONS(2082), [aux_sym_preproc_ifdef_token2] = ACTIONS(2082), [sym_preproc_directive] = ACTIONS(2082), [anon_sym_LPAREN2] = ACTIONS(2084), [anon_sym_BANG] = ACTIONS(2084), [anon_sym_TILDE] = ACTIONS(2084), [anon_sym_DASH] = ACTIONS(2082), [anon_sym_PLUS] = ACTIONS(2082), [anon_sym_STAR] = ACTIONS(2084), [anon_sym_AMP_AMP] = ACTIONS(2084), [anon_sym_AMP] = ACTIONS(2082), [anon_sym_SEMI] = ACTIONS(2084), [anon_sym_typedef] = ACTIONS(2082), [anon_sym_extern] = ACTIONS(2082), [anon_sym___attribute__] = ACTIONS(2082), [anon_sym_COLON_COLON] = ACTIONS(2084), [anon_sym_LBRACK_LBRACK] = ACTIONS(2084), [anon_sym___declspec] = ACTIONS(2082), [anon_sym___based] = ACTIONS(2082), [anon_sym___cdecl] = ACTIONS(2082), [anon_sym___clrcall] = ACTIONS(2082), [anon_sym___stdcall] = ACTIONS(2082), [anon_sym___fastcall] = ACTIONS(2082), [anon_sym___thiscall] = ACTIONS(2082), [anon_sym___vectorcall] = ACTIONS(2082), [anon_sym_LBRACE] = ACTIONS(2084), [anon_sym_LBRACK] = ACTIONS(2082), [anon_sym_static] = ACTIONS(2082), [anon_sym_register] = ACTIONS(2082), [anon_sym_inline] = ACTIONS(2082), [anon_sym_thread_local] = ACTIONS(2082), [anon_sym_const] = ACTIONS(2082), [anon_sym_volatile] = ACTIONS(2082), [anon_sym_restrict] = ACTIONS(2082), [anon_sym__Atomic] = ACTIONS(2082), [anon_sym_mutable] = ACTIONS(2082), [anon_sym_constexpr] = ACTIONS(2082), [anon_sym_signed] = ACTIONS(2082), [anon_sym_unsigned] = ACTIONS(2082), [anon_sym_long] = ACTIONS(2082), [anon_sym_short] = ACTIONS(2082), [sym_primitive_type] = ACTIONS(2082), [anon_sym_enum] = ACTIONS(2082), [anon_sym_class] = ACTIONS(2082), [anon_sym_struct] = ACTIONS(2082), [anon_sym_union] = ACTIONS(2082), [anon_sym_if] = ACTIONS(2082), [anon_sym_switch] = ACTIONS(2082), [anon_sym_case] = ACTIONS(2082), [anon_sym_default] = ACTIONS(2082), [anon_sym_while] = ACTIONS(2082), [anon_sym_do] = ACTIONS(2082), [anon_sym_for] = ACTIONS(2082), [anon_sym_return] = ACTIONS(2082), [anon_sym_break] = ACTIONS(2082), [anon_sym_continue] = ACTIONS(2082), [anon_sym_goto] = ACTIONS(2082), [anon_sym_DASH_DASH] = ACTIONS(2084), [anon_sym_PLUS_PLUS] = ACTIONS(2084), [anon_sym_sizeof] = ACTIONS(2082), [sym_number_literal] = ACTIONS(2084), [anon_sym_L_SQUOTE] = ACTIONS(2084), [anon_sym_u_SQUOTE] = ACTIONS(2084), [anon_sym_U_SQUOTE] = ACTIONS(2084), [anon_sym_u8_SQUOTE] = ACTIONS(2084), [anon_sym_SQUOTE] = ACTIONS(2084), [anon_sym_L_DQUOTE] = ACTIONS(2084), [anon_sym_u_DQUOTE] = ACTIONS(2084), [anon_sym_U_DQUOTE] = ACTIONS(2084), [anon_sym_u8_DQUOTE] = ACTIONS(2084), [anon_sym_DQUOTE] = ACTIONS(2084), [sym_true] = ACTIONS(2082), [sym_false] = ACTIONS(2082), [sym_null] = ACTIONS(2082), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2082), [anon_sym_virtual] = ACTIONS(2082), [anon_sym_explicit] = ACTIONS(2082), [sym_auto] = ACTIONS(2082), [anon_sym_typename] = ACTIONS(2082), [anon_sym_template] = ACTIONS(2082), [anon_sym_operator] = ACTIONS(2082), [anon_sym_delete] = ACTIONS(2082), [anon_sym_throw] = ACTIONS(2082), [anon_sym_namespace] = ACTIONS(2082), [anon_sym_using] = ACTIONS(2082), [anon_sym_static_assert] = ACTIONS(2082), [anon_sym_co_return] = ACTIONS(2082), [anon_sym_co_yield] = ACTIONS(2082), [anon_sym_try] = ACTIONS(2082), [anon_sym_co_await] = ACTIONS(2082), [anon_sym_new] = ACTIONS(2082), [sym_this] = ACTIONS(2082), [sym_nullptr] = ACTIONS(2082), [sym_raw_string_literal] = ACTIONS(2084), }, [794] = { [sym_identifier] = ACTIONS(2170), [aux_sym_preproc_include_token1] = ACTIONS(2170), [aux_sym_preproc_def_token1] = ACTIONS(2170), [aux_sym_preproc_if_token1] = ACTIONS(2170), [aux_sym_preproc_ifdef_token1] = ACTIONS(2170), [aux_sym_preproc_ifdef_token2] = ACTIONS(2170), [sym_preproc_directive] = ACTIONS(2170), [anon_sym_LPAREN2] = ACTIONS(2172), [anon_sym_BANG] = ACTIONS(2172), [anon_sym_TILDE] = ACTIONS(2172), [anon_sym_DASH] = ACTIONS(2170), [anon_sym_PLUS] = ACTIONS(2170), [anon_sym_STAR] = ACTIONS(2172), [anon_sym_AMP_AMP] = ACTIONS(2172), [anon_sym_AMP] = ACTIONS(2170), [anon_sym_SEMI] = ACTIONS(2172), [anon_sym_typedef] = ACTIONS(2170), [anon_sym_extern] = ACTIONS(2170), [anon_sym___attribute__] = ACTIONS(2170), [anon_sym_COLON_COLON] = ACTIONS(2172), [anon_sym_LBRACK_LBRACK] = ACTIONS(2172), [anon_sym___declspec] = ACTIONS(2170), [anon_sym___based] = ACTIONS(2170), [anon_sym___cdecl] = ACTIONS(2170), [anon_sym___clrcall] = ACTIONS(2170), [anon_sym___stdcall] = ACTIONS(2170), [anon_sym___fastcall] = ACTIONS(2170), [anon_sym___thiscall] = ACTIONS(2170), [anon_sym___vectorcall] = ACTIONS(2170), [anon_sym_LBRACE] = ACTIONS(2172), [anon_sym_RBRACE] = ACTIONS(2172), [anon_sym_LBRACK] = ACTIONS(2170), [anon_sym_static] = ACTIONS(2170), [anon_sym_register] = ACTIONS(2170), [anon_sym_inline] = ACTIONS(2170), [anon_sym_thread_local] = ACTIONS(2170), [anon_sym_const] = ACTIONS(2170), [anon_sym_volatile] = ACTIONS(2170), [anon_sym_restrict] = ACTIONS(2170), [anon_sym__Atomic] = ACTIONS(2170), [anon_sym_mutable] = ACTIONS(2170), [anon_sym_constexpr] = ACTIONS(2170), [anon_sym_signed] = ACTIONS(2170), [anon_sym_unsigned] = ACTIONS(2170), [anon_sym_long] = ACTIONS(2170), [anon_sym_short] = ACTIONS(2170), [sym_primitive_type] = ACTIONS(2170), [anon_sym_enum] = ACTIONS(2170), [anon_sym_class] = ACTIONS(2170), [anon_sym_struct] = ACTIONS(2170), [anon_sym_union] = ACTIONS(2170), [anon_sym_if] = ACTIONS(2170), [anon_sym_switch] = ACTIONS(2170), [anon_sym_case] = ACTIONS(2170), [anon_sym_default] = ACTIONS(2170), [anon_sym_while] = ACTIONS(2170), [anon_sym_do] = ACTIONS(2170), [anon_sym_for] = ACTIONS(2170), [anon_sym_return] = ACTIONS(2170), [anon_sym_break] = ACTIONS(2170), [anon_sym_continue] = ACTIONS(2170), [anon_sym_goto] = ACTIONS(2170), [anon_sym_DASH_DASH] = ACTIONS(2172), [anon_sym_PLUS_PLUS] = ACTIONS(2172), [anon_sym_sizeof] = ACTIONS(2170), [sym_number_literal] = ACTIONS(2172), [anon_sym_L_SQUOTE] = ACTIONS(2172), [anon_sym_u_SQUOTE] = ACTIONS(2172), [anon_sym_U_SQUOTE] = ACTIONS(2172), [anon_sym_u8_SQUOTE] = ACTIONS(2172), [anon_sym_SQUOTE] = ACTIONS(2172), [anon_sym_L_DQUOTE] = ACTIONS(2172), [anon_sym_u_DQUOTE] = ACTIONS(2172), [anon_sym_U_DQUOTE] = ACTIONS(2172), [anon_sym_u8_DQUOTE] = ACTIONS(2172), [anon_sym_DQUOTE] = ACTIONS(2172), [sym_true] = ACTIONS(2170), [sym_false] = ACTIONS(2170), [sym_null] = ACTIONS(2170), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2170), [anon_sym_virtual] = ACTIONS(2170), [anon_sym_explicit] = ACTIONS(2170), [sym_auto] = ACTIONS(2170), [anon_sym_typename] = ACTIONS(2170), [anon_sym_template] = ACTIONS(2170), [anon_sym_operator] = ACTIONS(2170), [anon_sym_delete] = ACTIONS(2170), [anon_sym_throw] = ACTIONS(2170), [anon_sym_namespace] = ACTIONS(2170), [anon_sym_using] = ACTIONS(2170), [anon_sym_static_assert] = ACTIONS(2170), [anon_sym_co_return] = ACTIONS(2170), [anon_sym_co_yield] = ACTIONS(2170), [anon_sym_try] = ACTIONS(2170), [anon_sym_co_await] = ACTIONS(2170), [anon_sym_new] = ACTIONS(2170), [sym_this] = ACTIONS(2170), [sym_nullptr] = ACTIONS(2170), [sym_raw_string_literal] = ACTIONS(2172), }, [795] = { [sym_identifier] = ACTIONS(2126), [aux_sym_preproc_include_token1] = ACTIONS(2126), [aux_sym_preproc_def_token1] = ACTIONS(2126), [aux_sym_preproc_if_token1] = ACTIONS(2126), [aux_sym_preproc_ifdef_token1] = ACTIONS(2126), [aux_sym_preproc_ifdef_token2] = ACTIONS(2126), [sym_preproc_directive] = ACTIONS(2126), [anon_sym_LPAREN2] = ACTIONS(2128), [anon_sym_BANG] = ACTIONS(2128), [anon_sym_TILDE] = ACTIONS(2128), [anon_sym_DASH] = ACTIONS(2126), [anon_sym_PLUS] = ACTIONS(2126), [anon_sym_STAR] = ACTIONS(2128), [anon_sym_AMP_AMP] = ACTIONS(2128), [anon_sym_AMP] = ACTIONS(2126), [anon_sym_SEMI] = ACTIONS(2128), [anon_sym_typedef] = ACTIONS(2126), [anon_sym_extern] = ACTIONS(2126), [anon_sym___attribute__] = ACTIONS(2126), [anon_sym_COLON_COLON] = ACTIONS(2128), [anon_sym_LBRACK_LBRACK] = ACTIONS(2128), [anon_sym___declspec] = ACTIONS(2126), [anon_sym___based] = ACTIONS(2126), [anon_sym___cdecl] = ACTIONS(2126), [anon_sym___clrcall] = ACTIONS(2126), [anon_sym___stdcall] = ACTIONS(2126), [anon_sym___fastcall] = ACTIONS(2126), [anon_sym___thiscall] = ACTIONS(2126), [anon_sym___vectorcall] = ACTIONS(2126), [anon_sym_LBRACE] = ACTIONS(2128), [anon_sym_RBRACE] = ACTIONS(2128), [anon_sym_LBRACK] = ACTIONS(2126), [anon_sym_static] = ACTIONS(2126), [anon_sym_register] = ACTIONS(2126), [anon_sym_inline] = ACTIONS(2126), [anon_sym_thread_local] = ACTIONS(2126), [anon_sym_const] = ACTIONS(2126), [anon_sym_volatile] = ACTIONS(2126), [anon_sym_restrict] = ACTIONS(2126), [anon_sym__Atomic] = ACTIONS(2126), [anon_sym_mutable] = ACTIONS(2126), [anon_sym_constexpr] = ACTIONS(2126), [anon_sym_signed] = ACTIONS(2126), [anon_sym_unsigned] = ACTIONS(2126), [anon_sym_long] = ACTIONS(2126), [anon_sym_short] = ACTIONS(2126), [sym_primitive_type] = ACTIONS(2126), [anon_sym_enum] = ACTIONS(2126), [anon_sym_class] = ACTIONS(2126), [anon_sym_struct] = ACTIONS(2126), [anon_sym_union] = ACTIONS(2126), [anon_sym_if] = ACTIONS(2126), [anon_sym_switch] = ACTIONS(2126), [anon_sym_case] = ACTIONS(2126), [anon_sym_default] = ACTIONS(2126), [anon_sym_while] = ACTIONS(2126), [anon_sym_do] = ACTIONS(2126), [anon_sym_for] = ACTIONS(2126), [anon_sym_return] = ACTIONS(2126), [anon_sym_break] = ACTIONS(2126), [anon_sym_continue] = ACTIONS(2126), [anon_sym_goto] = ACTIONS(2126), [anon_sym_DASH_DASH] = ACTIONS(2128), [anon_sym_PLUS_PLUS] = ACTIONS(2128), [anon_sym_sizeof] = ACTIONS(2126), [sym_number_literal] = ACTIONS(2128), [anon_sym_L_SQUOTE] = ACTIONS(2128), [anon_sym_u_SQUOTE] = ACTIONS(2128), [anon_sym_U_SQUOTE] = ACTIONS(2128), [anon_sym_u8_SQUOTE] = ACTIONS(2128), [anon_sym_SQUOTE] = ACTIONS(2128), [anon_sym_L_DQUOTE] = ACTIONS(2128), [anon_sym_u_DQUOTE] = ACTIONS(2128), [anon_sym_U_DQUOTE] = ACTIONS(2128), [anon_sym_u8_DQUOTE] = ACTIONS(2128), [anon_sym_DQUOTE] = ACTIONS(2128), [sym_true] = ACTIONS(2126), [sym_false] = ACTIONS(2126), [sym_null] = ACTIONS(2126), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2126), [anon_sym_virtual] = ACTIONS(2126), [anon_sym_explicit] = ACTIONS(2126), [sym_auto] = ACTIONS(2126), [anon_sym_typename] = ACTIONS(2126), [anon_sym_template] = ACTIONS(2126), [anon_sym_operator] = ACTIONS(2126), [anon_sym_delete] = ACTIONS(2126), [anon_sym_throw] = ACTIONS(2126), [anon_sym_namespace] = ACTIONS(2126), [anon_sym_using] = ACTIONS(2126), [anon_sym_static_assert] = ACTIONS(2126), [anon_sym_co_return] = ACTIONS(2126), [anon_sym_co_yield] = ACTIONS(2126), [anon_sym_try] = ACTIONS(2126), [anon_sym_co_await] = ACTIONS(2126), [anon_sym_new] = ACTIONS(2126), [sym_this] = ACTIONS(2126), [sym_nullptr] = ACTIONS(2126), [sym_raw_string_literal] = ACTIONS(2128), }, [796] = { [sym_identifier] = ACTIONS(2150), [aux_sym_preproc_include_token1] = ACTIONS(2150), [aux_sym_preproc_def_token1] = ACTIONS(2150), [aux_sym_preproc_if_token1] = ACTIONS(2150), [aux_sym_preproc_if_token2] = ACTIONS(2150), [aux_sym_preproc_ifdef_token1] = ACTIONS(2150), [aux_sym_preproc_ifdef_token2] = ACTIONS(2150), [sym_preproc_directive] = ACTIONS(2150), [anon_sym_LPAREN2] = ACTIONS(2152), [anon_sym_BANG] = ACTIONS(2152), [anon_sym_TILDE] = ACTIONS(2152), [anon_sym_DASH] = ACTIONS(2150), [anon_sym_PLUS] = ACTIONS(2150), [anon_sym_STAR] = ACTIONS(2152), [anon_sym_AMP_AMP] = ACTIONS(2152), [anon_sym_AMP] = ACTIONS(2150), [anon_sym_SEMI] = ACTIONS(2152), [anon_sym_typedef] = ACTIONS(2150), [anon_sym_extern] = ACTIONS(2150), [anon_sym___attribute__] = ACTIONS(2150), [anon_sym_COLON_COLON] = ACTIONS(2152), [anon_sym_LBRACK_LBRACK] = ACTIONS(2152), [anon_sym___declspec] = ACTIONS(2150), [anon_sym___based] = ACTIONS(2150), [anon_sym___cdecl] = ACTIONS(2150), [anon_sym___clrcall] = ACTIONS(2150), [anon_sym___stdcall] = ACTIONS(2150), [anon_sym___fastcall] = ACTIONS(2150), [anon_sym___thiscall] = ACTIONS(2150), [anon_sym___vectorcall] = ACTIONS(2150), [anon_sym_LBRACE] = ACTIONS(2152), [anon_sym_LBRACK] = ACTIONS(2150), [anon_sym_static] = ACTIONS(2150), [anon_sym_register] = ACTIONS(2150), [anon_sym_inline] = ACTIONS(2150), [anon_sym_thread_local] = ACTIONS(2150), [anon_sym_const] = ACTIONS(2150), [anon_sym_volatile] = ACTIONS(2150), [anon_sym_restrict] = ACTIONS(2150), [anon_sym__Atomic] = ACTIONS(2150), [anon_sym_mutable] = ACTIONS(2150), [anon_sym_constexpr] = ACTIONS(2150), [anon_sym_signed] = ACTIONS(2150), [anon_sym_unsigned] = ACTIONS(2150), [anon_sym_long] = ACTIONS(2150), [anon_sym_short] = ACTIONS(2150), [sym_primitive_type] = ACTIONS(2150), [anon_sym_enum] = ACTIONS(2150), [anon_sym_class] = ACTIONS(2150), [anon_sym_struct] = ACTIONS(2150), [anon_sym_union] = ACTIONS(2150), [anon_sym_if] = ACTIONS(2150), [anon_sym_switch] = ACTIONS(2150), [anon_sym_case] = ACTIONS(2150), [anon_sym_default] = ACTIONS(2150), [anon_sym_while] = ACTIONS(2150), [anon_sym_do] = ACTIONS(2150), [anon_sym_for] = ACTIONS(2150), [anon_sym_return] = ACTIONS(2150), [anon_sym_break] = ACTIONS(2150), [anon_sym_continue] = ACTIONS(2150), [anon_sym_goto] = ACTIONS(2150), [anon_sym_DASH_DASH] = ACTIONS(2152), [anon_sym_PLUS_PLUS] = ACTIONS(2152), [anon_sym_sizeof] = ACTIONS(2150), [sym_number_literal] = ACTIONS(2152), [anon_sym_L_SQUOTE] = ACTIONS(2152), [anon_sym_u_SQUOTE] = ACTIONS(2152), [anon_sym_U_SQUOTE] = ACTIONS(2152), [anon_sym_u8_SQUOTE] = ACTIONS(2152), [anon_sym_SQUOTE] = ACTIONS(2152), [anon_sym_L_DQUOTE] = ACTIONS(2152), [anon_sym_u_DQUOTE] = ACTIONS(2152), [anon_sym_U_DQUOTE] = ACTIONS(2152), [anon_sym_u8_DQUOTE] = ACTIONS(2152), [anon_sym_DQUOTE] = ACTIONS(2152), [sym_true] = ACTIONS(2150), [sym_false] = ACTIONS(2150), [sym_null] = ACTIONS(2150), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2150), [anon_sym_virtual] = ACTIONS(2150), [anon_sym_explicit] = ACTIONS(2150), [sym_auto] = ACTIONS(2150), [anon_sym_typename] = ACTIONS(2150), [anon_sym_template] = ACTIONS(2150), [anon_sym_operator] = ACTIONS(2150), [anon_sym_delete] = ACTIONS(2150), [anon_sym_throw] = ACTIONS(2150), [anon_sym_namespace] = ACTIONS(2150), [anon_sym_using] = ACTIONS(2150), [anon_sym_static_assert] = ACTIONS(2150), [anon_sym_co_return] = ACTIONS(2150), [anon_sym_co_yield] = ACTIONS(2150), [anon_sym_try] = ACTIONS(2150), [anon_sym_co_await] = ACTIONS(2150), [anon_sym_new] = ACTIONS(2150), [sym_this] = ACTIONS(2150), [sym_nullptr] = ACTIONS(2150), [sym_raw_string_literal] = ACTIONS(2152), }, [797] = { [sym_identifier] = ACTIONS(2150), [aux_sym_preproc_include_token1] = ACTIONS(2150), [aux_sym_preproc_def_token1] = ACTIONS(2150), [aux_sym_preproc_if_token1] = ACTIONS(2150), [aux_sym_preproc_ifdef_token1] = ACTIONS(2150), [aux_sym_preproc_ifdef_token2] = ACTIONS(2150), [sym_preproc_directive] = ACTIONS(2150), [anon_sym_LPAREN2] = ACTIONS(2152), [anon_sym_BANG] = ACTIONS(2152), [anon_sym_TILDE] = ACTIONS(2152), [anon_sym_DASH] = ACTIONS(2150), [anon_sym_PLUS] = ACTIONS(2150), [anon_sym_STAR] = ACTIONS(2152), [anon_sym_AMP_AMP] = ACTIONS(2152), [anon_sym_AMP] = ACTIONS(2150), [anon_sym_SEMI] = ACTIONS(2152), [anon_sym_typedef] = ACTIONS(2150), [anon_sym_extern] = ACTIONS(2150), [anon_sym___attribute__] = ACTIONS(2150), [anon_sym_COLON_COLON] = ACTIONS(2152), [anon_sym_LBRACK_LBRACK] = ACTIONS(2152), [anon_sym___declspec] = ACTIONS(2150), [anon_sym___based] = ACTIONS(2150), [anon_sym___cdecl] = ACTIONS(2150), [anon_sym___clrcall] = ACTIONS(2150), [anon_sym___stdcall] = ACTIONS(2150), [anon_sym___fastcall] = ACTIONS(2150), [anon_sym___thiscall] = ACTIONS(2150), [anon_sym___vectorcall] = ACTIONS(2150), [anon_sym_LBRACE] = ACTIONS(2152), [anon_sym_RBRACE] = ACTIONS(2152), [anon_sym_LBRACK] = ACTIONS(2150), [anon_sym_static] = ACTIONS(2150), [anon_sym_register] = ACTIONS(2150), [anon_sym_inline] = ACTIONS(2150), [anon_sym_thread_local] = ACTIONS(2150), [anon_sym_const] = ACTIONS(2150), [anon_sym_volatile] = ACTIONS(2150), [anon_sym_restrict] = ACTIONS(2150), [anon_sym__Atomic] = ACTIONS(2150), [anon_sym_mutable] = ACTIONS(2150), [anon_sym_constexpr] = ACTIONS(2150), [anon_sym_signed] = ACTIONS(2150), [anon_sym_unsigned] = ACTIONS(2150), [anon_sym_long] = ACTIONS(2150), [anon_sym_short] = ACTIONS(2150), [sym_primitive_type] = ACTIONS(2150), [anon_sym_enum] = ACTIONS(2150), [anon_sym_class] = ACTIONS(2150), [anon_sym_struct] = ACTIONS(2150), [anon_sym_union] = ACTIONS(2150), [anon_sym_if] = ACTIONS(2150), [anon_sym_switch] = ACTIONS(2150), [anon_sym_case] = ACTIONS(2150), [anon_sym_default] = ACTIONS(2150), [anon_sym_while] = ACTIONS(2150), [anon_sym_do] = ACTIONS(2150), [anon_sym_for] = ACTIONS(2150), [anon_sym_return] = ACTIONS(2150), [anon_sym_break] = ACTIONS(2150), [anon_sym_continue] = ACTIONS(2150), [anon_sym_goto] = ACTIONS(2150), [anon_sym_DASH_DASH] = ACTIONS(2152), [anon_sym_PLUS_PLUS] = ACTIONS(2152), [anon_sym_sizeof] = ACTIONS(2150), [sym_number_literal] = ACTIONS(2152), [anon_sym_L_SQUOTE] = ACTIONS(2152), [anon_sym_u_SQUOTE] = ACTIONS(2152), [anon_sym_U_SQUOTE] = ACTIONS(2152), [anon_sym_u8_SQUOTE] = ACTIONS(2152), [anon_sym_SQUOTE] = ACTIONS(2152), [anon_sym_L_DQUOTE] = ACTIONS(2152), [anon_sym_u_DQUOTE] = ACTIONS(2152), [anon_sym_U_DQUOTE] = ACTIONS(2152), [anon_sym_u8_DQUOTE] = ACTIONS(2152), [anon_sym_DQUOTE] = ACTIONS(2152), [sym_true] = ACTIONS(2150), [sym_false] = ACTIONS(2150), [sym_null] = ACTIONS(2150), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2150), [anon_sym_virtual] = ACTIONS(2150), [anon_sym_explicit] = ACTIONS(2150), [sym_auto] = ACTIONS(2150), [anon_sym_typename] = ACTIONS(2150), [anon_sym_template] = ACTIONS(2150), [anon_sym_operator] = ACTIONS(2150), [anon_sym_delete] = ACTIONS(2150), [anon_sym_throw] = ACTIONS(2150), [anon_sym_namespace] = ACTIONS(2150), [anon_sym_using] = ACTIONS(2150), [anon_sym_static_assert] = ACTIONS(2150), [anon_sym_co_return] = ACTIONS(2150), [anon_sym_co_yield] = ACTIONS(2150), [anon_sym_try] = ACTIONS(2150), [anon_sym_co_await] = ACTIONS(2150), [anon_sym_new] = ACTIONS(2150), [sym_this] = ACTIONS(2150), [sym_nullptr] = ACTIONS(2150), [sym_raw_string_literal] = ACTIONS(2152), }, [798] = { [sym_identifier] = ACTIONS(2154), [aux_sym_preproc_include_token1] = ACTIONS(2154), [aux_sym_preproc_def_token1] = ACTIONS(2154), [aux_sym_preproc_if_token1] = ACTIONS(2154), [aux_sym_preproc_ifdef_token1] = ACTIONS(2154), [aux_sym_preproc_ifdef_token2] = ACTIONS(2154), [sym_preproc_directive] = ACTIONS(2154), [anon_sym_LPAREN2] = ACTIONS(2156), [anon_sym_BANG] = ACTIONS(2156), [anon_sym_TILDE] = ACTIONS(2156), [anon_sym_DASH] = ACTIONS(2154), [anon_sym_PLUS] = ACTIONS(2154), [anon_sym_STAR] = ACTIONS(2156), [anon_sym_AMP_AMP] = ACTIONS(2156), [anon_sym_AMP] = ACTIONS(2154), [anon_sym_SEMI] = ACTIONS(2156), [anon_sym_typedef] = ACTIONS(2154), [anon_sym_extern] = ACTIONS(2154), [anon_sym___attribute__] = ACTIONS(2154), [anon_sym_COLON_COLON] = ACTIONS(2156), [anon_sym_LBRACK_LBRACK] = ACTIONS(2156), [anon_sym___declspec] = ACTIONS(2154), [anon_sym___based] = ACTIONS(2154), [anon_sym___cdecl] = ACTIONS(2154), [anon_sym___clrcall] = ACTIONS(2154), [anon_sym___stdcall] = ACTIONS(2154), [anon_sym___fastcall] = ACTIONS(2154), [anon_sym___thiscall] = ACTIONS(2154), [anon_sym___vectorcall] = ACTIONS(2154), [anon_sym_LBRACE] = ACTIONS(2156), [anon_sym_RBRACE] = ACTIONS(2156), [anon_sym_LBRACK] = ACTIONS(2154), [anon_sym_static] = ACTIONS(2154), [anon_sym_register] = ACTIONS(2154), [anon_sym_inline] = ACTIONS(2154), [anon_sym_thread_local] = ACTIONS(2154), [anon_sym_const] = ACTIONS(2154), [anon_sym_volatile] = ACTIONS(2154), [anon_sym_restrict] = ACTIONS(2154), [anon_sym__Atomic] = ACTIONS(2154), [anon_sym_mutable] = ACTIONS(2154), [anon_sym_constexpr] = ACTIONS(2154), [anon_sym_signed] = ACTIONS(2154), [anon_sym_unsigned] = ACTIONS(2154), [anon_sym_long] = ACTIONS(2154), [anon_sym_short] = ACTIONS(2154), [sym_primitive_type] = ACTIONS(2154), [anon_sym_enum] = ACTIONS(2154), [anon_sym_class] = ACTIONS(2154), [anon_sym_struct] = ACTIONS(2154), [anon_sym_union] = ACTIONS(2154), [anon_sym_if] = ACTIONS(2154), [anon_sym_switch] = ACTIONS(2154), [anon_sym_case] = ACTIONS(2154), [anon_sym_default] = ACTIONS(2154), [anon_sym_while] = ACTIONS(2154), [anon_sym_do] = ACTIONS(2154), [anon_sym_for] = ACTIONS(2154), [anon_sym_return] = ACTIONS(2154), [anon_sym_break] = ACTIONS(2154), [anon_sym_continue] = ACTIONS(2154), [anon_sym_goto] = ACTIONS(2154), [anon_sym_DASH_DASH] = ACTIONS(2156), [anon_sym_PLUS_PLUS] = ACTIONS(2156), [anon_sym_sizeof] = ACTIONS(2154), [sym_number_literal] = ACTIONS(2156), [anon_sym_L_SQUOTE] = ACTIONS(2156), [anon_sym_u_SQUOTE] = ACTIONS(2156), [anon_sym_U_SQUOTE] = ACTIONS(2156), [anon_sym_u8_SQUOTE] = ACTIONS(2156), [anon_sym_SQUOTE] = ACTIONS(2156), [anon_sym_L_DQUOTE] = ACTIONS(2156), [anon_sym_u_DQUOTE] = ACTIONS(2156), [anon_sym_U_DQUOTE] = ACTIONS(2156), [anon_sym_u8_DQUOTE] = ACTIONS(2156), [anon_sym_DQUOTE] = ACTIONS(2156), [sym_true] = ACTIONS(2154), [sym_false] = ACTIONS(2154), [sym_null] = ACTIONS(2154), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2154), [anon_sym_virtual] = ACTIONS(2154), [anon_sym_explicit] = ACTIONS(2154), [sym_auto] = ACTIONS(2154), [anon_sym_typename] = ACTIONS(2154), [anon_sym_template] = ACTIONS(2154), [anon_sym_operator] = ACTIONS(2154), [anon_sym_delete] = ACTIONS(2154), [anon_sym_throw] = ACTIONS(2154), [anon_sym_namespace] = ACTIONS(2154), [anon_sym_using] = ACTIONS(2154), [anon_sym_static_assert] = ACTIONS(2154), [anon_sym_co_return] = ACTIONS(2154), [anon_sym_co_yield] = ACTIONS(2154), [anon_sym_try] = ACTIONS(2154), [anon_sym_co_await] = ACTIONS(2154), [anon_sym_new] = ACTIONS(2154), [sym_this] = ACTIONS(2154), [sym_nullptr] = ACTIONS(2154), [sym_raw_string_literal] = ACTIONS(2156), }, [799] = { [sym_identifier] = ACTIONS(2162), [aux_sym_preproc_include_token1] = ACTIONS(2162), [aux_sym_preproc_def_token1] = ACTIONS(2162), [aux_sym_preproc_if_token1] = ACTIONS(2162), [aux_sym_preproc_if_token2] = ACTIONS(2162), [aux_sym_preproc_ifdef_token1] = ACTIONS(2162), [aux_sym_preproc_ifdef_token2] = ACTIONS(2162), [sym_preproc_directive] = ACTIONS(2162), [anon_sym_LPAREN2] = ACTIONS(2164), [anon_sym_BANG] = ACTIONS(2164), [anon_sym_TILDE] = ACTIONS(2164), [anon_sym_DASH] = ACTIONS(2162), [anon_sym_PLUS] = ACTIONS(2162), [anon_sym_STAR] = ACTIONS(2164), [anon_sym_AMP_AMP] = ACTIONS(2164), [anon_sym_AMP] = ACTIONS(2162), [anon_sym_SEMI] = ACTIONS(2164), [anon_sym_typedef] = ACTIONS(2162), [anon_sym_extern] = ACTIONS(2162), [anon_sym___attribute__] = ACTIONS(2162), [anon_sym_COLON_COLON] = ACTIONS(2164), [anon_sym_LBRACK_LBRACK] = ACTIONS(2164), [anon_sym___declspec] = ACTIONS(2162), [anon_sym___based] = ACTIONS(2162), [anon_sym___cdecl] = ACTIONS(2162), [anon_sym___clrcall] = ACTIONS(2162), [anon_sym___stdcall] = ACTIONS(2162), [anon_sym___fastcall] = ACTIONS(2162), [anon_sym___thiscall] = ACTIONS(2162), [anon_sym___vectorcall] = ACTIONS(2162), [anon_sym_LBRACE] = ACTIONS(2164), [anon_sym_LBRACK] = ACTIONS(2162), [anon_sym_static] = ACTIONS(2162), [anon_sym_register] = ACTIONS(2162), [anon_sym_inline] = ACTIONS(2162), [anon_sym_thread_local] = ACTIONS(2162), [anon_sym_const] = ACTIONS(2162), [anon_sym_volatile] = ACTIONS(2162), [anon_sym_restrict] = ACTIONS(2162), [anon_sym__Atomic] = ACTIONS(2162), [anon_sym_mutable] = ACTIONS(2162), [anon_sym_constexpr] = ACTIONS(2162), [anon_sym_signed] = ACTIONS(2162), [anon_sym_unsigned] = ACTIONS(2162), [anon_sym_long] = ACTIONS(2162), [anon_sym_short] = ACTIONS(2162), [sym_primitive_type] = ACTIONS(2162), [anon_sym_enum] = ACTIONS(2162), [anon_sym_class] = ACTIONS(2162), [anon_sym_struct] = ACTIONS(2162), [anon_sym_union] = ACTIONS(2162), [anon_sym_if] = ACTIONS(2162), [anon_sym_switch] = ACTIONS(2162), [anon_sym_case] = ACTIONS(2162), [anon_sym_default] = ACTIONS(2162), [anon_sym_while] = ACTIONS(2162), [anon_sym_do] = ACTIONS(2162), [anon_sym_for] = ACTIONS(2162), [anon_sym_return] = ACTIONS(2162), [anon_sym_break] = ACTIONS(2162), [anon_sym_continue] = ACTIONS(2162), [anon_sym_goto] = ACTIONS(2162), [anon_sym_DASH_DASH] = ACTIONS(2164), [anon_sym_PLUS_PLUS] = ACTIONS(2164), [anon_sym_sizeof] = ACTIONS(2162), [sym_number_literal] = ACTIONS(2164), [anon_sym_L_SQUOTE] = ACTIONS(2164), [anon_sym_u_SQUOTE] = ACTIONS(2164), [anon_sym_U_SQUOTE] = ACTIONS(2164), [anon_sym_u8_SQUOTE] = ACTIONS(2164), [anon_sym_SQUOTE] = ACTIONS(2164), [anon_sym_L_DQUOTE] = ACTIONS(2164), [anon_sym_u_DQUOTE] = ACTIONS(2164), [anon_sym_U_DQUOTE] = ACTIONS(2164), [anon_sym_u8_DQUOTE] = ACTIONS(2164), [anon_sym_DQUOTE] = ACTIONS(2164), [sym_true] = ACTIONS(2162), [sym_false] = ACTIONS(2162), [sym_null] = ACTIONS(2162), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2162), [anon_sym_virtual] = ACTIONS(2162), [anon_sym_explicit] = ACTIONS(2162), [sym_auto] = ACTIONS(2162), [anon_sym_typename] = ACTIONS(2162), [anon_sym_template] = ACTIONS(2162), [anon_sym_operator] = ACTIONS(2162), [anon_sym_delete] = ACTIONS(2162), [anon_sym_throw] = ACTIONS(2162), [anon_sym_namespace] = ACTIONS(2162), [anon_sym_using] = ACTIONS(2162), [anon_sym_static_assert] = ACTIONS(2162), [anon_sym_co_return] = ACTIONS(2162), [anon_sym_co_yield] = ACTIONS(2162), [anon_sym_try] = ACTIONS(2162), [anon_sym_co_await] = ACTIONS(2162), [anon_sym_new] = ACTIONS(2162), [sym_this] = ACTIONS(2162), [sym_nullptr] = ACTIONS(2162), [sym_raw_string_literal] = ACTIONS(2164), }, [800] = { [sym_identifier] = ACTIONS(2190), [aux_sym_preproc_include_token1] = ACTIONS(2190), [aux_sym_preproc_def_token1] = ACTIONS(2190), [aux_sym_preproc_if_token1] = ACTIONS(2190), [aux_sym_preproc_ifdef_token1] = ACTIONS(2190), [aux_sym_preproc_ifdef_token2] = ACTIONS(2190), [sym_preproc_directive] = ACTIONS(2190), [anon_sym_LPAREN2] = ACTIONS(2192), [anon_sym_BANG] = ACTIONS(2192), [anon_sym_TILDE] = ACTIONS(2192), [anon_sym_DASH] = ACTIONS(2190), [anon_sym_PLUS] = ACTIONS(2190), [anon_sym_STAR] = ACTIONS(2192), [anon_sym_AMP_AMP] = ACTIONS(2192), [anon_sym_AMP] = ACTIONS(2190), [anon_sym_SEMI] = ACTIONS(2192), [anon_sym_typedef] = ACTIONS(2190), [anon_sym_extern] = ACTIONS(2190), [anon_sym___attribute__] = ACTIONS(2190), [anon_sym_COLON_COLON] = ACTIONS(2192), [anon_sym_LBRACK_LBRACK] = ACTIONS(2192), [anon_sym___declspec] = ACTIONS(2190), [anon_sym___based] = ACTIONS(2190), [anon_sym___cdecl] = ACTIONS(2190), [anon_sym___clrcall] = ACTIONS(2190), [anon_sym___stdcall] = ACTIONS(2190), [anon_sym___fastcall] = ACTIONS(2190), [anon_sym___thiscall] = ACTIONS(2190), [anon_sym___vectorcall] = ACTIONS(2190), [anon_sym_LBRACE] = ACTIONS(2192), [anon_sym_RBRACE] = ACTIONS(2192), [anon_sym_LBRACK] = ACTIONS(2190), [anon_sym_static] = ACTIONS(2190), [anon_sym_register] = ACTIONS(2190), [anon_sym_inline] = ACTIONS(2190), [anon_sym_thread_local] = ACTIONS(2190), [anon_sym_const] = ACTIONS(2190), [anon_sym_volatile] = ACTIONS(2190), [anon_sym_restrict] = ACTIONS(2190), [anon_sym__Atomic] = ACTIONS(2190), [anon_sym_mutable] = ACTIONS(2190), [anon_sym_constexpr] = ACTIONS(2190), [anon_sym_signed] = ACTIONS(2190), [anon_sym_unsigned] = ACTIONS(2190), [anon_sym_long] = ACTIONS(2190), [anon_sym_short] = ACTIONS(2190), [sym_primitive_type] = ACTIONS(2190), [anon_sym_enum] = ACTIONS(2190), [anon_sym_class] = ACTIONS(2190), [anon_sym_struct] = ACTIONS(2190), [anon_sym_union] = ACTIONS(2190), [anon_sym_if] = ACTIONS(2190), [anon_sym_switch] = ACTIONS(2190), [anon_sym_case] = ACTIONS(2190), [anon_sym_default] = ACTIONS(2190), [anon_sym_while] = ACTIONS(2190), [anon_sym_do] = ACTIONS(2190), [anon_sym_for] = ACTIONS(2190), [anon_sym_return] = ACTIONS(2190), [anon_sym_break] = ACTIONS(2190), [anon_sym_continue] = ACTIONS(2190), [anon_sym_goto] = ACTIONS(2190), [anon_sym_DASH_DASH] = ACTIONS(2192), [anon_sym_PLUS_PLUS] = ACTIONS(2192), [anon_sym_sizeof] = ACTIONS(2190), [sym_number_literal] = ACTIONS(2192), [anon_sym_L_SQUOTE] = ACTIONS(2192), [anon_sym_u_SQUOTE] = ACTIONS(2192), [anon_sym_U_SQUOTE] = ACTIONS(2192), [anon_sym_u8_SQUOTE] = ACTIONS(2192), [anon_sym_SQUOTE] = ACTIONS(2192), [anon_sym_L_DQUOTE] = ACTIONS(2192), [anon_sym_u_DQUOTE] = ACTIONS(2192), [anon_sym_U_DQUOTE] = ACTIONS(2192), [anon_sym_u8_DQUOTE] = ACTIONS(2192), [anon_sym_DQUOTE] = ACTIONS(2192), [sym_true] = ACTIONS(2190), [sym_false] = ACTIONS(2190), [sym_null] = ACTIONS(2190), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2190), [anon_sym_virtual] = ACTIONS(2190), [anon_sym_explicit] = ACTIONS(2190), [sym_auto] = ACTIONS(2190), [anon_sym_typename] = ACTIONS(2190), [anon_sym_template] = ACTIONS(2190), [anon_sym_operator] = ACTIONS(2190), [anon_sym_delete] = ACTIONS(2190), [anon_sym_throw] = ACTIONS(2190), [anon_sym_namespace] = ACTIONS(2190), [anon_sym_using] = ACTIONS(2190), [anon_sym_static_assert] = ACTIONS(2190), [anon_sym_co_return] = ACTIONS(2190), [anon_sym_co_yield] = ACTIONS(2190), [anon_sym_try] = ACTIONS(2190), [anon_sym_co_await] = ACTIONS(2190), [anon_sym_new] = ACTIONS(2190), [sym_this] = ACTIONS(2190), [sym_nullptr] = ACTIONS(2190), [sym_raw_string_literal] = ACTIONS(2192), }, [801] = { [sym_identifier] = ACTIONS(2166), [aux_sym_preproc_include_token1] = ACTIONS(2166), [aux_sym_preproc_def_token1] = ACTIONS(2166), [aux_sym_preproc_if_token1] = ACTIONS(2166), [aux_sym_preproc_ifdef_token1] = ACTIONS(2166), [aux_sym_preproc_ifdef_token2] = ACTIONS(2166), [sym_preproc_directive] = ACTIONS(2166), [anon_sym_LPAREN2] = ACTIONS(2168), [anon_sym_BANG] = ACTIONS(2168), [anon_sym_TILDE] = ACTIONS(2168), [anon_sym_DASH] = ACTIONS(2166), [anon_sym_PLUS] = ACTIONS(2166), [anon_sym_STAR] = ACTIONS(2168), [anon_sym_AMP_AMP] = ACTIONS(2168), [anon_sym_AMP] = ACTIONS(2166), [anon_sym_SEMI] = ACTIONS(2168), [anon_sym_typedef] = ACTIONS(2166), [anon_sym_extern] = ACTIONS(2166), [anon_sym___attribute__] = ACTIONS(2166), [anon_sym_COLON_COLON] = ACTIONS(2168), [anon_sym_LBRACK_LBRACK] = ACTIONS(2168), [anon_sym___declspec] = ACTIONS(2166), [anon_sym___based] = ACTIONS(2166), [anon_sym___cdecl] = ACTIONS(2166), [anon_sym___clrcall] = ACTIONS(2166), [anon_sym___stdcall] = ACTIONS(2166), [anon_sym___fastcall] = ACTIONS(2166), [anon_sym___thiscall] = ACTIONS(2166), [anon_sym___vectorcall] = ACTIONS(2166), [anon_sym_LBRACE] = ACTIONS(2168), [anon_sym_RBRACE] = ACTIONS(2168), [anon_sym_LBRACK] = ACTIONS(2166), [anon_sym_static] = ACTIONS(2166), [anon_sym_register] = ACTIONS(2166), [anon_sym_inline] = ACTIONS(2166), [anon_sym_thread_local] = ACTIONS(2166), [anon_sym_const] = ACTIONS(2166), [anon_sym_volatile] = ACTIONS(2166), [anon_sym_restrict] = ACTIONS(2166), [anon_sym__Atomic] = ACTIONS(2166), [anon_sym_mutable] = ACTIONS(2166), [anon_sym_constexpr] = ACTIONS(2166), [anon_sym_signed] = ACTIONS(2166), [anon_sym_unsigned] = ACTIONS(2166), [anon_sym_long] = ACTIONS(2166), [anon_sym_short] = ACTIONS(2166), [sym_primitive_type] = ACTIONS(2166), [anon_sym_enum] = ACTIONS(2166), [anon_sym_class] = ACTIONS(2166), [anon_sym_struct] = ACTIONS(2166), [anon_sym_union] = ACTIONS(2166), [anon_sym_if] = ACTIONS(2166), [anon_sym_switch] = ACTIONS(2166), [anon_sym_case] = ACTIONS(2166), [anon_sym_default] = ACTIONS(2166), [anon_sym_while] = ACTIONS(2166), [anon_sym_do] = ACTIONS(2166), [anon_sym_for] = ACTIONS(2166), [anon_sym_return] = ACTIONS(2166), [anon_sym_break] = ACTIONS(2166), [anon_sym_continue] = ACTIONS(2166), [anon_sym_goto] = ACTIONS(2166), [anon_sym_DASH_DASH] = ACTIONS(2168), [anon_sym_PLUS_PLUS] = ACTIONS(2168), [anon_sym_sizeof] = ACTIONS(2166), [sym_number_literal] = ACTIONS(2168), [anon_sym_L_SQUOTE] = ACTIONS(2168), [anon_sym_u_SQUOTE] = ACTIONS(2168), [anon_sym_U_SQUOTE] = ACTIONS(2168), [anon_sym_u8_SQUOTE] = ACTIONS(2168), [anon_sym_SQUOTE] = ACTIONS(2168), [anon_sym_L_DQUOTE] = ACTIONS(2168), [anon_sym_u_DQUOTE] = ACTIONS(2168), [anon_sym_U_DQUOTE] = ACTIONS(2168), [anon_sym_u8_DQUOTE] = ACTIONS(2168), [anon_sym_DQUOTE] = ACTIONS(2168), [sym_true] = ACTIONS(2166), [sym_false] = ACTIONS(2166), [sym_null] = ACTIONS(2166), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2166), [anon_sym_virtual] = ACTIONS(2166), [anon_sym_explicit] = ACTIONS(2166), [sym_auto] = ACTIONS(2166), [anon_sym_typename] = ACTIONS(2166), [anon_sym_template] = ACTIONS(2166), [anon_sym_operator] = ACTIONS(2166), [anon_sym_delete] = ACTIONS(2166), [anon_sym_throw] = ACTIONS(2166), [anon_sym_namespace] = ACTIONS(2166), [anon_sym_using] = ACTIONS(2166), [anon_sym_static_assert] = ACTIONS(2166), [anon_sym_co_return] = ACTIONS(2166), [anon_sym_co_yield] = ACTIONS(2166), [anon_sym_try] = ACTIONS(2166), [anon_sym_co_await] = ACTIONS(2166), [anon_sym_new] = ACTIONS(2166), [sym_this] = ACTIONS(2166), [sym_nullptr] = ACTIONS(2166), [sym_raw_string_literal] = ACTIONS(2168), }, [802] = { [sym_identifier] = ACTIONS(2026), [aux_sym_preproc_include_token1] = ACTIONS(2026), [aux_sym_preproc_def_token1] = ACTIONS(2026), [aux_sym_preproc_if_token1] = ACTIONS(2026), [aux_sym_preproc_if_token2] = ACTIONS(2026), [aux_sym_preproc_ifdef_token1] = ACTIONS(2026), [aux_sym_preproc_ifdef_token2] = ACTIONS(2026), [sym_preproc_directive] = ACTIONS(2026), [anon_sym_LPAREN2] = ACTIONS(2028), [anon_sym_BANG] = ACTIONS(2028), [anon_sym_TILDE] = ACTIONS(2028), [anon_sym_DASH] = ACTIONS(2026), [anon_sym_PLUS] = ACTIONS(2026), [anon_sym_STAR] = ACTIONS(2028), [anon_sym_AMP_AMP] = ACTIONS(2028), [anon_sym_AMP] = ACTIONS(2026), [anon_sym_SEMI] = ACTIONS(2028), [anon_sym_typedef] = ACTIONS(2026), [anon_sym_extern] = ACTIONS(2026), [anon_sym___attribute__] = ACTIONS(2026), [anon_sym_COLON_COLON] = ACTIONS(2028), [anon_sym_LBRACK_LBRACK] = ACTIONS(2028), [anon_sym___declspec] = ACTIONS(2026), [anon_sym___based] = ACTIONS(2026), [anon_sym___cdecl] = ACTIONS(2026), [anon_sym___clrcall] = ACTIONS(2026), [anon_sym___stdcall] = ACTIONS(2026), [anon_sym___fastcall] = ACTIONS(2026), [anon_sym___thiscall] = ACTIONS(2026), [anon_sym___vectorcall] = ACTIONS(2026), [anon_sym_LBRACE] = ACTIONS(2028), [anon_sym_LBRACK] = ACTIONS(2026), [anon_sym_static] = ACTIONS(2026), [anon_sym_register] = ACTIONS(2026), [anon_sym_inline] = ACTIONS(2026), [anon_sym_thread_local] = ACTIONS(2026), [anon_sym_const] = ACTIONS(2026), [anon_sym_volatile] = ACTIONS(2026), [anon_sym_restrict] = ACTIONS(2026), [anon_sym__Atomic] = ACTIONS(2026), [anon_sym_mutable] = ACTIONS(2026), [anon_sym_constexpr] = ACTIONS(2026), [anon_sym_signed] = ACTIONS(2026), [anon_sym_unsigned] = ACTIONS(2026), [anon_sym_long] = ACTIONS(2026), [anon_sym_short] = ACTIONS(2026), [sym_primitive_type] = ACTIONS(2026), [anon_sym_enum] = ACTIONS(2026), [anon_sym_class] = ACTIONS(2026), [anon_sym_struct] = ACTIONS(2026), [anon_sym_union] = ACTIONS(2026), [anon_sym_if] = ACTIONS(2026), [anon_sym_switch] = ACTIONS(2026), [anon_sym_case] = ACTIONS(2026), [anon_sym_default] = ACTIONS(2026), [anon_sym_while] = ACTIONS(2026), [anon_sym_do] = ACTIONS(2026), [anon_sym_for] = ACTIONS(2026), [anon_sym_return] = ACTIONS(2026), [anon_sym_break] = ACTIONS(2026), [anon_sym_continue] = ACTIONS(2026), [anon_sym_goto] = ACTIONS(2026), [anon_sym_DASH_DASH] = ACTIONS(2028), [anon_sym_PLUS_PLUS] = ACTIONS(2028), [anon_sym_sizeof] = ACTIONS(2026), [sym_number_literal] = ACTIONS(2028), [anon_sym_L_SQUOTE] = ACTIONS(2028), [anon_sym_u_SQUOTE] = ACTIONS(2028), [anon_sym_U_SQUOTE] = ACTIONS(2028), [anon_sym_u8_SQUOTE] = ACTIONS(2028), [anon_sym_SQUOTE] = ACTIONS(2028), [anon_sym_L_DQUOTE] = ACTIONS(2028), [anon_sym_u_DQUOTE] = ACTIONS(2028), [anon_sym_U_DQUOTE] = ACTIONS(2028), [anon_sym_u8_DQUOTE] = ACTIONS(2028), [anon_sym_DQUOTE] = ACTIONS(2028), [sym_true] = ACTIONS(2026), [sym_false] = ACTIONS(2026), [sym_null] = ACTIONS(2026), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2026), [anon_sym_virtual] = ACTIONS(2026), [anon_sym_explicit] = ACTIONS(2026), [sym_auto] = ACTIONS(2026), [anon_sym_typename] = ACTIONS(2026), [anon_sym_template] = ACTIONS(2026), [anon_sym_operator] = ACTIONS(2026), [anon_sym_delete] = ACTIONS(2026), [anon_sym_throw] = ACTIONS(2026), [anon_sym_namespace] = ACTIONS(2026), [anon_sym_using] = ACTIONS(2026), [anon_sym_static_assert] = ACTIONS(2026), [anon_sym_co_return] = ACTIONS(2026), [anon_sym_co_yield] = ACTIONS(2026), [anon_sym_try] = ACTIONS(2026), [anon_sym_co_await] = ACTIONS(2026), [anon_sym_new] = ACTIONS(2026), [sym_this] = ACTIONS(2026), [sym_nullptr] = ACTIONS(2026), [sym_raw_string_literal] = ACTIONS(2028), }, [803] = { [sym_identifier] = ACTIONS(2158), [aux_sym_preproc_include_token1] = ACTIONS(2158), [aux_sym_preproc_def_token1] = ACTIONS(2158), [aux_sym_preproc_if_token1] = ACTIONS(2158), [aux_sym_preproc_ifdef_token1] = ACTIONS(2158), [aux_sym_preproc_ifdef_token2] = ACTIONS(2158), [sym_preproc_directive] = ACTIONS(2158), [anon_sym_LPAREN2] = ACTIONS(2160), [anon_sym_BANG] = ACTIONS(2160), [anon_sym_TILDE] = ACTIONS(2160), [anon_sym_DASH] = ACTIONS(2158), [anon_sym_PLUS] = ACTIONS(2158), [anon_sym_STAR] = ACTIONS(2160), [anon_sym_AMP_AMP] = ACTIONS(2160), [anon_sym_AMP] = ACTIONS(2158), [anon_sym_SEMI] = ACTIONS(2160), [anon_sym_typedef] = ACTIONS(2158), [anon_sym_extern] = ACTIONS(2158), [anon_sym___attribute__] = ACTIONS(2158), [anon_sym_COLON_COLON] = ACTIONS(2160), [anon_sym_LBRACK_LBRACK] = ACTIONS(2160), [anon_sym___declspec] = ACTIONS(2158), [anon_sym___based] = ACTIONS(2158), [anon_sym___cdecl] = ACTIONS(2158), [anon_sym___clrcall] = ACTIONS(2158), [anon_sym___stdcall] = ACTIONS(2158), [anon_sym___fastcall] = ACTIONS(2158), [anon_sym___thiscall] = ACTIONS(2158), [anon_sym___vectorcall] = ACTIONS(2158), [anon_sym_LBRACE] = ACTIONS(2160), [anon_sym_RBRACE] = ACTIONS(2160), [anon_sym_LBRACK] = ACTIONS(2158), [anon_sym_static] = ACTIONS(2158), [anon_sym_register] = ACTIONS(2158), [anon_sym_inline] = ACTIONS(2158), [anon_sym_thread_local] = ACTIONS(2158), [anon_sym_const] = ACTIONS(2158), [anon_sym_volatile] = ACTIONS(2158), [anon_sym_restrict] = ACTIONS(2158), [anon_sym__Atomic] = ACTIONS(2158), [anon_sym_mutable] = ACTIONS(2158), [anon_sym_constexpr] = ACTIONS(2158), [anon_sym_signed] = ACTIONS(2158), [anon_sym_unsigned] = ACTIONS(2158), [anon_sym_long] = ACTIONS(2158), [anon_sym_short] = ACTIONS(2158), [sym_primitive_type] = ACTIONS(2158), [anon_sym_enum] = ACTIONS(2158), [anon_sym_class] = ACTIONS(2158), [anon_sym_struct] = ACTIONS(2158), [anon_sym_union] = ACTIONS(2158), [anon_sym_if] = ACTIONS(2158), [anon_sym_switch] = ACTIONS(2158), [anon_sym_case] = ACTIONS(2158), [anon_sym_default] = ACTIONS(2158), [anon_sym_while] = ACTIONS(2158), [anon_sym_do] = ACTIONS(2158), [anon_sym_for] = ACTIONS(2158), [anon_sym_return] = ACTIONS(2158), [anon_sym_break] = ACTIONS(2158), [anon_sym_continue] = ACTIONS(2158), [anon_sym_goto] = ACTIONS(2158), [anon_sym_DASH_DASH] = ACTIONS(2160), [anon_sym_PLUS_PLUS] = ACTIONS(2160), [anon_sym_sizeof] = ACTIONS(2158), [sym_number_literal] = ACTIONS(2160), [anon_sym_L_SQUOTE] = ACTIONS(2160), [anon_sym_u_SQUOTE] = ACTIONS(2160), [anon_sym_U_SQUOTE] = ACTIONS(2160), [anon_sym_u8_SQUOTE] = ACTIONS(2160), [anon_sym_SQUOTE] = ACTIONS(2160), [anon_sym_L_DQUOTE] = ACTIONS(2160), [anon_sym_u_DQUOTE] = ACTIONS(2160), [anon_sym_U_DQUOTE] = ACTIONS(2160), [anon_sym_u8_DQUOTE] = ACTIONS(2160), [anon_sym_DQUOTE] = ACTIONS(2160), [sym_true] = ACTIONS(2158), [sym_false] = ACTIONS(2158), [sym_null] = ACTIONS(2158), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2158), [anon_sym_virtual] = ACTIONS(2158), [anon_sym_explicit] = ACTIONS(2158), [sym_auto] = ACTIONS(2158), [anon_sym_typename] = ACTIONS(2158), [anon_sym_template] = ACTIONS(2158), [anon_sym_operator] = ACTIONS(2158), [anon_sym_delete] = ACTIONS(2158), [anon_sym_throw] = ACTIONS(2158), [anon_sym_namespace] = ACTIONS(2158), [anon_sym_using] = ACTIONS(2158), [anon_sym_static_assert] = ACTIONS(2158), [anon_sym_co_return] = ACTIONS(2158), [anon_sym_co_yield] = ACTIONS(2158), [anon_sym_try] = ACTIONS(2158), [anon_sym_co_await] = ACTIONS(2158), [anon_sym_new] = ACTIONS(2158), [sym_this] = ACTIONS(2158), [sym_nullptr] = ACTIONS(2158), [sym_raw_string_literal] = ACTIONS(2160), }, [804] = { [sym__expression] = STATE(1986), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_initializer_list] = STATE(2095), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_DOT_DOT_DOT] = ACTIONS(1948), [anon_sym_COMMA] = ACTIONS(1948), [anon_sym_LPAREN2] = ACTIONS(2236), [anon_sym_BANG] = ACTIONS(2238), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2242), [anon_sym_SLASH] = ACTIONS(1956), [anon_sym_PERCENT] = ACTIONS(1956), [anon_sym_PIPE_PIPE] = ACTIONS(1948), [anon_sym_AMP_AMP] = ACTIONS(1948), [anon_sym_PIPE] = ACTIONS(1956), [anon_sym_CARET] = ACTIONS(1956), [anon_sym_AMP] = ACTIONS(2242), [anon_sym_EQ_EQ] = ACTIONS(1948), [anon_sym_BANG_EQ] = ACTIONS(1948), [anon_sym_GT] = ACTIONS(1956), [anon_sym_GT_EQ] = ACTIONS(1956), [anon_sym_LT_EQ] = ACTIONS(1948), [anon_sym_LT] = ACTIONS(1956), [anon_sym_LT_LT] = ACTIONS(1956), [anon_sym_GT_GT] = ACTIONS(1956), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACE] = ACTIONS(2246), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_EQ] = ACTIONS(1956), [sym_primitive_type] = ACTIONS(2248), [anon_sym_QMARK] = ACTIONS(1948), [anon_sym_STAR_EQ] = ACTIONS(1948), [anon_sym_SLASH_EQ] = ACTIONS(1948), [anon_sym_PERCENT_EQ] = ACTIONS(1948), [anon_sym_PLUS_EQ] = ACTIONS(1948), [anon_sym_DASH_EQ] = ACTIONS(1948), [anon_sym_LT_LT_EQ] = ACTIONS(1948), [anon_sym_GT_GT_EQ] = ACTIONS(1956), [anon_sym_AMP_EQ] = ACTIONS(1948), [anon_sym_CARET_EQ] = ACTIONS(1948), [anon_sym_PIPE_EQ] = ACTIONS(1948), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [anon_sym_DOT] = ACTIONS(1956), [anon_sym_DASH_GT] = ACTIONS(1948), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_GT2] = ACTIONS(1948), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [805] = { [sym_identifier] = ACTIONS(2162), [aux_sym_preproc_include_token1] = ACTIONS(2162), [aux_sym_preproc_def_token1] = ACTIONS(2162), [aux_sym_preproc_if_token1] = ACTIONS(2162), [aux_sym_preproc_ifdef_token1] = ACTIONS(2162), [aux_sym_preproc_ifdef_token2] = ACTIONS(2162), [sym_preproc_directive] = ACTIONS(2162), [anon_sym_LPAREN2] = ACTIONS(2164), [anon_sym_BANG] = ACTIONS(2164), [anon_sym_TILDE] = ACTIONS(2164), [anon_sym_DASH] = ACTIONS(2162), [anon_sym_PLUS] = ACTIONS(2162), [anon_sym_STAR] = ACTIONS(2164), [anon_sym_AMP_AMP] = ACTIONS(2164), [anon_sym_AMP] = ACTIONS(2162), [anon_sym_SEMI] = ACTIONS(2164), [anon_sym_typedef] = ACTIONS(2162), [anon_sym_extern] = ACTIONS(2162), [anon_sym___attribute__] = ACTIONS(2162), [anon_sym_COLON_COLON] = ACTIONS(2164), [anon_sym_LBRACK_LBRACK] = ACTIONS(2164), [anon_sym___declspec] = ACTIONS(2162), [anon_sym___based] = ACTIONS(2162), [anon_sym___cdecl] = ACTIONS(2162), [anon_sym___clrcall] = ACTIONS(2162), [anon_sym___stdcall] = ACTIONS(2162), [anon_sym___fastcall] = ACTIONS(2162), [anon_sym___thiscall] = ACTIONS(2162), [anon_sym___vectorcall] = ACTIONS(2162), [anon_sym_LBRACE] = ACTIONS(2164), [anon_sym_RBRACE] = ACTIONS(2164), [anon_sym_LBRACK] = ACTIONS(2162), [anon_sym_static] = ACTIONS(2162), [anon_sym_register] = ACTIONS(2162), [anon_sym_inline] = ACTIONS(2162), [anon_sym_thread_local] = ACTIONS(2162), [anon_sym_const] = ACTIONS(2162), [anon_sym_volatile] = ACTIONS(2162), [anon_sym_restrict] = ACTIONS(2162), [anon_sym__Atomic] = ACTIONS(2162), [anon_sym_mutable] = ACTIONS(2162), [anon_sym_constexpr] = ACTIONS(2162), [anon_sym_signed] = ACTIONS(2162), [anon_sym_unsigned] = ACTIONS(2162), [anon_sym_long] = ACTIONS(2162), [anon_sym_short] = ACTIONS(2162), [sym_primitive_type] = ACTIONS(2162), [anon_sym_enum] = ACTIONS(2162), [anon_sym_class] = ACTIONS(2162), [anon_sym_struct] = ACTIONS(2162), [anon_sym_union] = ACTIONS(2162), [anon_sym_if] = ACTIONS(2162), [anon_sym_switch] = ACTIONS(2162), [anon_sym_case] = ACTIONS(2162), [anon_sym_default] = ACTIONS(2162), [anon_sym_while] = ACTIONS(2162), [anon_sym_do] = ACTIONS(2162), [anon_sym_for] = ACTIONS(2162), [anon_sym_return] = ACTIONS(2162), [anon_sym_break] = ACTIONS(2162), [anon_sym_continue] = ACTIONS(2162), [anon_sym_goto] = ACTIONS(2162), [anon_sym_DASH_DASH] = ACTIONS(2164), [anon_sym_PLUS_PLUS] = ACTIONS(2164), [anon_sym_sizeof] = ACTIONS(2162), [sym_number_literal] = ACTIONS(2164), [anon_sym_L_SQUOTE] = ACTIONS(2164), [anon_sym_u_SQUOTE] = ACTIONS(2164), [anon_sym_U_SQUOTE] = ACTIONS(2164), [anon_sym_u8_SQUOTE] = ACTIONS(2164), [anon_sym_SQUOTE] = ACTIONS(2164), [anon_sym_L_DQUOTE] = ACTIONS(2164), [anon_sym_u_DQUOTE] = ACTIONS(2164), [anon_sym_U_DQUOTE] = ACTIONS(2164), [anon_sym_u8_DQUOTE] = ACTIONS(2164), [anon_sym_DQUOTE] = ACTIONS(2164), [sym_true] = ACTIONS(2162), [sym_false] = ACTIONS(2162), [sym_null] = ACTIONS(2162), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2162), [anon_sym_virtual] = ACTIONS(2162), [anon_sym_explicit] = ACTIONS(2162), [sym_auto] = ACTIONS(2162), [anon_sym_typename] = ACTIONS(2162), [anon_sym_template] = ACTIONS(2162), [anon_sym_operator] = ACTIONS(2162), [anon_sym_delete] = ACTIONS(2162), [anon_sym_throw] = ACTIONS(2162), [anon_sym_namespace] = ACTIONS(2162), [anon_sym_using] = ACTIONS(2162), [anon_sym_static_assert] = ACTIONS(2162), [anon_sym_co_return] = ACTIONS(2162), [anon_sym_co_yield] = ACTIONS(2162), [anon_sym_try] = ACTIONS(2162), [anon_sym_co_await] = ACTIONS(2162), [anon_sym_new] = ACTIONS(2162), [sym_this] = ACTIONS(2162), [sym_nullptr] = ACTIONS(2162), [sym_raw_string_literal] = ACTIONS(2164), }, [806] = { [ts_builtin_sym_end] = ACTIONS(2044), [sym_identifier] = ACTIONS(2042), [aux_sym_preproc_include_token1] = ACTIONS(2042), [aux_sym_preproc_def_token1] = ACTIONS(2042), [aux_sym_preproc_if_token1] = ACTIONS(2042), [aux_sym_preproc_ifdef_token1] = ACTIONS(2042), [aux_sym_preproc_ifdef_token2] = ACTIONS(2042), [sym_preproc_directive] = ACTIONS(2042), [anon_sym_LPAREN2] = ACTIONS(2044), [anon_sym_BANG] = ACTIONS(2044), [anon_sym_TILDE] = ACTIONS(2044), [anon_sym_DASH] = ACTIONS(2042), [anon_sym_PLUS] = ACTIONS(2042), [anon_sym_STAR] = ACTIONS(2044), [anon_sym_AMP_AMP] = ACTIONS(2044), [anon_sym_AMP] = ACTIONS(2042), [anon_sym_SEMI] = ACTIONS(2044), [anon_sym_typedef] = ACTIONS(2042), [anon_sym_extern] = ACTIONS(2042), [anon_sym___attribute__] = ACTIONS(2042), [anon_sym_COLON_COLON] = ACTIONS(2044), [anon_sym_LBRACK_LBRACK] = ACTIONS(2044), [anon_sym___declspec] = ACTIONS(2042), [anon_sym___based] = ACTIONS(2042), [anon_sym___cdecl] = ACTIONS(2042), [anon_sym___clrcall] = ACTIONS(2042), [anon_sym___stdcall] = ACTIONS(2042), [anon_sym___fastcall] = ACTIONS(2042), [anon_sym___thiscall] = ACTIONS(2042), [anon_sym___vectorcall] = ACTIONS(2042), [anon_sym_LBRACE] = ACTIONS(2044), [anon_sym_LBRACK] = ACTIONS(2042), [anon_sym_static] = ACTIONS(2042), [anon_sym_register] = ACTIONS(2042), [anon_sym_inline] = ACTIONS(2042), [anon_sym_thread_local] = ACTIONS(2042), [anon_sym_const] = ACTIONS(2042), [anon_sym_volatile] = ACTIONS(2042), [anon_sym_restrict] = ACTIONS(2042), [anon_sym__Atomic] = ACTIONS(2042), [anon_sym_mutable] = ACTIONS(2042), [anon_sym_constexpr] = ACTIONS(2042), [anon_sym_signed] = ACTIONS(2042), [anon_sym_unsigned] = ACTIONS(2042), [anon_sym_long] = ACTIONS(2042), [anon_sym_short] = ACTIONS(2042), [sym_primitive_type] = ACTIONS(2042), [anon_sym_enum] = ACTIONS(2042), [anon_sym_class] = ACTIONS(2042), [anon_sym_struct] = ACTIONS(2042), [anon_sym_union] = ACTIONS(2042), [anon_sym_if] = ACTIONS(2042), [anon_sym_switch] = ACTIONS(2042), [anon_sym_case] = ACTIONS(2042), [anon_sym_default] = ACTIONS(2042), [anon_sym_while] = ACTIONS(2042), [anon_sym_do] = ACTIONS(2042), [anon_sym_for] = ACTIONS(2042), [anon_sym_return] = ACTIONS(2042), [anon_sym_break] = ACTIONS(2042), [anon_sym_continue] = ACTIONS(2042), [anon_sym_goto] = ACTIONS(2042), [anon_sym_DASH_DASH] = ACTIONS(2044), [anon_sym_PLUS_PLUS] = ACTIONS(2044), [anon_sym_sizeof] = ACTIONS(2042), [sym_number_literal] = ACTIONS(2044), [anon_sym_L_SQUOTE] = ACTIONS(2044), [anon_sym_u_SQUOTE] = ACTIONS(2044), [anon_sym_U_SQUOTE] = ACTIONS(2044), [anon_sym_u8_SQUOTE] = ACTIONS(2044), [anon_sym_SQUOTE] = ACTIONS(2044), [anon_sym_L_DQUOTE] = ACTIONS(2044), [anon_sym_u_DQUOTE] = ACTIONS(2044), [anon_sym_U_DQUOTE] = ACTIONS(2044), [anon_sym_u8_DQUOTE] = ACTIONS(2044), [anon_sym_DQUOTE] = ACTIONS(2044), [sym_true] = ACTIONS(2042), [sym_false] = ACTIONS(2042), [sym_null] = ACTIONS(2042), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2042), [anon_sym_virtual] = ACTIONS(2042), [anon_sym_explicit] = ACTIONS(2042), [sym_auto] = ACTIONS(2042), [anon_sym_typename] = ACTIONS(2042), [anon_sym_template] = ACTIONS(2042), [anon_sym_operator] = ACTIONS(2042), [anon_sym_delete] = ACTIONS(2042), [anon_sym_throw] = ACTIONS(2042), [anon_sym_namespace] = ACTIONS(2042), [anon_sym_using] = ACTIONS(2042), [anon_sym_static_assert] = ACTIONS(2042), [anon_sym_co_return] = ACTIONS(2042), [anon_sym_co_yield] = ACTIONS(2042), [anon_sym_try] = ACTIONS(2042), [anon_sym_co_await] = ACTIONS(2042), [anon_sym_new] = ACTIONS(2042), [sym_this] = ACTIONS(2042), [sym_nullptr] = ACTIONS(2042), [sym_raw_string_literal] = ACTIONS(2044), }, [807] = { [ts_builtin_sym_end] = ACTIONS(2088), [sym_identifier] = ACTIONS(2086), [aux_sym_preproc_include_token1] = ACTIONS(2086), [aux_sym_preproc_def_token1] = ACTIONS(2086), [aux_sym_preproc_if_token1] = ACTIONS(2086), [aux_sym_preproc_ifdef_token1] = ACTIONS(2086), [aux_sym_preproc_ifdef_token2] = ACTIONS(2086), [sym_preproc_directive] = ACTIONS(2086), [anon_sym_LPAREN2] = ACTIONS(2088), [anon_sym_BANG] = ACTIONS(2088), [anon_sym_TILDE] = ACTIONS(2088), [anon_sym_DASH] = ACTIONS(2086), [anon_sym_PLUS] = ACTIONS(2086), [anon_sym_STAR] = ACTIONS(2088), [anon_sym_AMP_AMP] = ACTIONS(2088), [anon_sym_AMP] = ACTIONS(2086), [anon_sym_SEMI] = ACTIONS(2088), [anon_sym_typedef] = ACTIONS(2086), [anon_sym_extern] = ACTIONS(2086), [anon_sym___attribute__] = ACTIONS(2086), [anon_sym_COLON_COLON] = ACTIONS(2088), [anon_sym_LBRACK_LBRACK] = ACTIONS(2088), [anon_sym___declspec] = ACTIONS(2086), [anon_sym___based] = ACTIONS(2086), [anon_sym___cdecl] = ACTIONS(2086), [anon_sym___clrcall] = ACTIONS(2086), [anon_sym___stdcall] = ACTIONS(2086), [anon_sym___fastcall] = ACTIONS(2086), [anon_sym___thiscall] = ACTIONS(2086), [anon_sym___vectorcall] = ACTIONS(2086), [anon_sym_LBRACE] = ACTIONS(2088), [anon_sym_LBRACK] = ACTIONS(2086), [anon_sym_static] = ACTIONS(2086), [anon_sym_register] = ACTIONS(2086), [anon_sym_inline] = ACTIONS(2086), [anon_sym_thread_local] = ACTIONS(2086), [anon_sym_const] = ACTIONS(2086), [anon_sym_volatile] = ACTIONS(2086), [anon_sym_restrict] = ACTIONS(2086), [anon_sym__Atomic] = ACTIONS(2086), [anon_sym_mutable] = ACTIONS(2086), [anon_sym_constexpr] = ACTIONS(2086), [anon_sym_signed] = ACTIONS(2086), [anon_sym_unsigned] = ACTIONS(2086), [anon_sym_long] = ACTIONS(2086), [anon_sym_short] = ACTIONS(2086), [sym_primitive_type] = ACTIONS(2086), [anon_sym_enum] = ACTIONS(2086), [anon_sym_class] = ACTIONS(2086), [anon_sym_struct] = ACTIONS(2086), [anon_sym_union] = ACTIONS(2086), [anon_sym_if] = ACTIONS(2086), [anon_sym_switch] = ACTIONS(2086), [anon_sym_case] = ACTIONS(2086), [anon_sym_default] = ACTIONS(2086), [anon_sym_while] = ACTIONS(2086), [anon_sym_do] = ACTIONS(2086), [anon_sym_for] = ACTIONS(2086), [anon_sym_return] = ACTIONS(2086), [anon_sym_break] = ACTIONS(2086), [anon_sym_continue] = ACTIONS(2086), [anon_sym_goto] = ACTIONS(2086), [anon_sym_DASH_DASH] = ACTIONS(2088), [anon_sym_PLUS_PLUS] = ACTIONS(2088), [anon_sym_sizeof] = ACTIONS(2086), [sym_number_literal] = ACTIONS(2088), [anon_sym_L_SQUOTE] = ACTIONS(2088), [anon_sym_u_SQUOTE] = ACTIONS(2088), [anon_sym_U_SQUOTE] = ACTIONS(2088), [anon_sym_u8_SQUOTE] = ACTIONS(2088), [anon_sym_SQUOTE] = ACTIONS(2088), [anon_sym_L_DQUOTE] = ACTIONS(2088), [anon_sym_u_DQUOTE] = ACTIONS(2088), [anon_sym_U_DQUOTE] = ACTIONS(2088), [anon_sym_u8_DQUOTE] = ACTIONS(2088), [anon_sym_DQUOTE] = ACTIONS(2088), [sym_true] = ACTIONS(2086), [sym_false] = ACTIONS(2086), [sym_null] = ACTIONS(2086), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2086), [anon_sym_virtual] = ACTIONS(2086), [anon_sym_explicit] = ACTIONS(2086), [sym_auto] = ACTIONS(2086), [anon_sym_typename] = ACTIONS(2086), [anon_sym_template] = ACTIONS(2086), [anon_sym_operator] = ACTIONS(2086), [anon_sym_delete] = ACTIONS(2086), [anon_sym_throw] = ACTIONS(2086), [anon_sym_namespace] = ACTIONS(2086), [anon_sym_using] = ACTIONS(2086), [anon_sym_static_assert] = ACTIONS(2086), [anon_sym_co_return] = ACTIONS(2086), [anon_sym_co_yield] = ACTIONS(2086), [anon_sym_try] = ACTIONS(2086), [anon_sym_co_await] = ACTIONS(2086), [anon_sym_new] = ACTIONS(2086), [sym_this] = ACTIONS(2086), [sym_nullptr] = ACTIONS(2086), [sym_raw_string_literal] = ACTIONS(2088), }, [808] = { [ts_builtin_sym_end] = ACTIONS(2048), [sym_identifier] = ACTIONS(2046), [aux_sym_preproc_include_token1] = ACTIONS(2046), [aux_sym_preproc_def_token1] = ACTIONS(2046), [aux_sym_preproc_if_token1] = ACTIONS(2046), [aux_sym_preproc_ifdef_token1] = ACTIONS(2046), [aux_sym_preproc_ifdef_token2] = ACTIONS(2046), [sym_preproc_directive] = ACTIONS(2046), [anon_sym_LPAREN2] = ACTIONS(2048), [anon_sym_BANG] = ACTIONS(2048), [anon_sym_TILDE] = ACTIONS(2048), [anon_sym_DASH] = ACTIONS(2046), [anon_sym_PLUS] = ACTIONS(2046), [anon_sym_STAR] = ACTIONS(2048), [anon_sym_AMP_AMP] = ACTIONS(2048), [anon_sym_AMP] = ACTIONS(2046), [anon_sym_SEMI] = ACTIONS(2048), [anon_sym_typedef] = ACTIONS(2046), [anon_sym_extern] = ACTIONS(2046), [anon_sym___attribute__] = ACTIONS(2046), [anon_sym_COLON_COLON] = ACTIONS(2048), [anon_sym_LBRACK_LBRACK] = ACTIONS(2048), [anon_sym___declspec] = ACTIONS(2046), [anon_sym___based] = ACTIONS(2046), [anon_sym___cdecl] = ACTIONS(2046), [anon_sym___clrcall] = ACTIONS(2046), [anon_sym___stdcall] = ACTIONS(2046), [anon_sym___fastcall] = ACTIONS(2046), [anon_sym___thiscall] = ACTIONS(2046), [anon_sym___vectorcall] = ACTIONS(2046), [anon_sym_LBRACE] = ACTIONS(2048), [anon_sym_LBRACK] = ACTIONS(2046), [anon_sym_static] = ACTIONS(2046), [anon_sym_register] = ACTIONS(2046), [anon_sym_inline] = ACTIONS(2046), [anon_sym_thread_local] = ACTIONS(2046), [anon_sym_const] = ACTIONS(2046), [anon_sym_volatile] = ACTIONS(2046), [anon_sym_restrict] = ACTIONS(2046), [anon_sym__Atomic] = ACTIONS(2046), [anon_sym_mutable] = ACTIONS(2046), [anon_sym_constexpr] = ACTIONS(2046), [anon_sym_signed] = ACTIONS(2046), [anon_sym_unsigned] = ACTIONS(2046), [anon_sym_long] = ACTIONS(2046), [anon_sym_short] = ACTIONS(2046), [sym_primitive_type] = ACTIONS(2046), [anon_sym_enum] = ACTIONS(2046), [anon_sym_class] = ACTIONS(2046), [anon_sym_struct] = ACTIONS(2046), [anon_sym_union] = ACTIONS(2046), [anon_sym_if] = ACTIONS(2046), [anon_sym_switch] = ACTIONS(2046), [anon_sym_case] = ACTIONS(2046), [anon_sym_default] = ACTIONS(2046), [anon_sym_while] = ACTIONS(2046), [anon_sym_do] = ACTIONS(2046), [anon_sym_for] = ACTIONS(2046), [anon_sym_return] = ACTIONS(2046), [anon_sym_break] = ACTIONS(2046), [anon_sym_continue] = ACTIONS(2046), [anon_sym_goto] = ACTIONS(2046), [anon_sym_DASH_DASH] = ACTIONS(2048), [anon_sym_PLUS_PLUS] = ACTIONS(2048), [anon_sym_sizeof] = ACTIONS(2046), [sym_number_literal] = ACTIONS(2048), [anon_sym_L_SQUOTE] = ACTIONS(2048), [anon_sym_u_SQUOTE] = ACTIONS(2048), [anon_sym_U_SQUOTE] = ACTIONS(2048), [anon_sym_u8_SQUOTE] = ACTIONS(2048), [anon_sym_SQUOTE] = ACTIONS(2048), [anon_sym_L_DQUOTE] = ACTIONS(2048), [anon_sym_u_DQUOTE] = ACTIONS(2048), [anon_sym_U_DQUOTE] = ACTIONS(2048), [anon_sym_u8_DQUOTE] = ACTIONS(2048), [anon_sym_DQUOTE] = ACTIONS(2048), [sym_true] = ACTIONS(2046), [sym_false] = ACTIONS(2046), [sym_null] = ACTIONS(2046), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2046), [anon_sym_virtual] = ACTIONS(2046), [anon_sym_explicit] = ACTIONS(2046), [sym_auto] = ACTIONS(2046), [anon_sym_typename] = ACTIONS(2046), [anon_sym_template] = ACTIONS(2046), [anon_sym_operator] = ACTIONS(2046), [anon_sym_delete] = ACTIONS(2046), [anon_sym_throw] = ACTIONS(2046), [anon_sym_namespace] = ACTIONS(2046), [anon_sym_using] = ACTIONS(2046), [anon_sym_static_assert] = ACTIONS(2046), [anon_sym_co_return] = ACTIONS(2046), [anon_sym_co_yield] = ACTIONS(2046), [anon_sym_try] = ACTIONS(2046), [anon_sym_co_await] = ACTIONS(2046), [anon_sym_new] = ACTIONS(2046), [sym_this] = ACTIONS(2046), [sym_nullptr] = ACTIONS(2046), [sym_raw_string_literal] = ACTIONS(2048), }, [809] = { [ts_builtin_sym_end] = ACTIONS(2052), [sym_identifier] = ACTIONS(2050), [aux_sym_preproc_include_token1] = ACTIONS(2050), [aux_sym_preproc_def_token1] = ACTIONS(2050), [aux_sym_preproc_if_token1] = ACTIONS(2050), [aux_sym_preproc_ifdef_token1] = ACTIONS(2050), [aux_sym_preproc_ifdef_token2] = ACTIONS(2050), [sym_preproc_directive] = ACTIONS(2050), [anon_sym_LPAREN2] = ACTIONS(2052), [anon_sym_BANG] = ACTIONS(2052), [anon_sym_TILDE] = ACTIONS(2052), [anon_sym_DASH] = ACTIONS(2050), [anon_sym_PLUS] = ACTIONS(2050), [anon_sym_STAR] = ACTIONS(2052), [anon_sym_AMP_AMP] = ACTIONS(2052), [anon_sym_AMP] = ACTIONS(2050), [anon_sym_SEMI] = ACTIONS(2052), [anon_sym_typedef] = ACTIONS(2050), [anon_sym_extern] = ACTIONS(2050), [anon_sym___attribute__] = ACTIONS(2050), [anon_sym_COLON_COLON] = ACTIONS(2052), [anon_sym_LBRACK_LBRACK] = ACTIONS(2052), [anon_sym___declspec] = ACTIONS(2050), [anon_sym___based] = ACTIONS(2050), [anon_sym___cdecl] = ACTIONS(2050), [anon_sym___clrcall] = ACTIONS(2050), [anon_sym___stdcall] = ACTIONS(2050), [anon_sym___fastcall] = ACTIONS(2050), [anon_sym___thiscall] = ACTIONS(2050), [anon_sym___vectorcall] = ACTIONS(2050), [anon_sym_LBRACE] = ACTIONS(2052), [anon_sym_LBRACK] = ACTIONS(2050), [anon_sym_static] = ACTIONS(2050), [anon_sym_register] = ACTIONS(2050), [anon_sym_inline] = ACTIONS(2050), [anon_sym_thread_local] = ACTIONS(2050), [anon_sym_const] = ACTIONS(2050), [anon_sym_volatile] = ACTIONS(2050), [anon_sym_restrict] = ACTIONS(2050), [anon_sym__Atomic] = ACTIONS(2050), [anon_sym_mutable] = ACTIONS(2050), [anon_sym_constexpr] = ACTIONS(2050), [anon_sym_signed] = ACTIONS(2050), [anon_sym_unsigned] = ACTIONS(2050), [anon_sym_long] = ACTIONS(2050), [anon_sym_short] = ACTIONS(2050), [sym_primitive_type] = ACTIONS(2050), [anon_sym_enum] = ACTIONS(2050), [anon_sym_class] = ACTIONS(2050), [anon_sym_struct] = ACTIONS(2050), [anon_sym_union] = ACTIONS(2050), [anon_sym_if] = ACTIONS(2050), [anon_sym_switch] = ACTIONS(2050), [anon_sym_case] = ACTIONS(2050), [anon_sym_default] = ACTIONS(2050), [anon_sym_while] = ACTIONS(2050), [anon_sym_do] = ACTIONS(2050), [anon_sym_for] = ACTIONS(2050), [anon_sym_return] = ACTIONS(2050), [anon_sym_break] = ACTIONS(2050), [anon_sym_continue] = ACTIONS(2050), [anon_sym_goto] = ACTIONS(2050), [anon_sym_DASH_DASH] = ACTIONS(2052), [anon_sym_PLUS_PLUS] = ACTIONS(2052), [anon_sym_sizeof] = ACTIONS(2050), [sym_number_literal] = ACTIONS(2052), [anon_sym_L_SQUOTE] = ACTIONS(2052), [anon_sym_u_SQUOTE] = ACTIONS(2052), [anon_sym_U_SQUOTE] = ACTIONS(2052), [anon_sym_u8_SQUOTE] = ACTIONS(2052), [anon_sym_SQUOTE] = ACTIONS(2052), [anon_sym_L_DQUOTE] = ACTIONS(2052), [anon_sym_u_DQUOTE] = ACTIONS(2052), [anon_sym_U_DQUOTE] = ACTIONS(2052), [anon_sym_u8_DQUOTE] = ACTIONS(2052), [anon_sym_DQUOTE] = ACTIONS(2052), [sym_true] = ACTIONS(2050), [sym_false] = ACTIONS(2050), [sym_null] = ACTIONS(2050), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2050), [anon_sym_virtual] = ACTIONS(2050), [anon_sym_explicit] = ACTIONS(2050), [sym_auto] = ACTIONS(2050), [anon_sym_typename] = ACTIONS(2050), [anon_sym_template] = ACTIONS(2050), [anon_sym_operator] = ACTIONS(2050), [anon_sym_delete] = ACTIONS(2050), [anon_sym_throw] = ACTIONS(2050), [anon_sym_namespace] = ACTIONS(2050), [anon_sym_using] = ACTIONS(2050), [anon_sym_static_assert] = ACTIONS(2050), [anon_sym_co_return] = ACTIONS(2050), [anon_sym_co_yield] = ACTIONS(2050), [anon_sym_try] = ACTIONS(2050), [anon_sym_co_await] = ACTIONS(2050), [anon_sym_new] = ACTIONS(2050), [sym_this] = ACTIONS(2050), [sym_nullptr] = ACTIONS(2050), [sym_raw_string_literal] = ACTIONS(2052), }, [810] = { [sym__expression] = STATE(2157), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_initializer_list] = STATE(1834), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_DOT_DOT_DOT] = ACTIONS(1948), [anon_sym_LPAREN2] = ACTIONS(2270), [anon_sym_BANG] = ACTIONS(2272), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2276), [anon_sym_SLASH] = ACTIONS(1956), [anon_sym_PERCENT] = ACTIONS(1956), [anon_sym_PIPE_PIPE] = ACTIONS(1948), [anon_sym_AMP_AMP] = ACTIONS(1948), [anon_sym_PIPE] = ACTIONS(1956), [anon_sym_CARET] = ACTIONS(1956), [anon_sym_AMP] = ACTIONS(2276), [anon_sym_EQ_EQ] = ACTIONS(1948), [anon_sym_BANG_EQ] = ACTIONS(1948), [anon_sym_GT] = ACTIONS(1956), [anon_sym_GT_EQ] = ACTIONS(1948), [anon_sym_LT_EQ] = ACTIONS(1948), [anon_sym_LT] = ACTIONS(1956), [anon_sym_LT_LT] = ACTIONS(1956), [anon_sym_GT_GT] = ACTIONS(1956), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACE] = ACTIONS(1960), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_EQ] = ACTIONS(1956), [sym_primitive_type] = ACTIONS(1728), [anon_sym_COLON] = ACTIONS(1956), [anon_sym_QMARK] = ACTIONS(1948), [anon_sym_STAR_EQ] = ACTIONS(1948), [anon_sym_SLASH_EQ] = ACTIONS(1948), [anon_sym_PERCENT_EQ] = ACTIONS(1948), [anon_sym_PLUS_EQ] = ACTIONS(1948), [anon_sym_DASH_EQ] = ACTIONS(1948), [anon_sym_LT_LT_EQ] = ACTIONS(1948), [anon_sym_GT_GT_EQ] = ACTIONS(1948), [anon_sym_AMP_EQ] = ACTIONS(1948), [anon_sym_CARET_EQ] = ACTIONS(1948), [anon_sym_PIPE_EQ] = ACTIONS(1948), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [anon_sym_DOT] = ACTIONS(1956), [anon_sym_DASH_GT] = ACTIONS(1948), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [811] = { [sym_type_qualifier] = STATE(2358), [sym__type_specifier] = STATE(3258), [sym_sized_type_specifier] = STATE(2501), [sym_enum_specifier] = STATE(2501), [sym_struct_specifier] = STATE(2501), [sym_union_specifier] = STATE(2501), [sym__expression] = STATE(2719), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_type_descriptor] = STATE(4273), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym_decltype] = STATE(2501), [sym_class_specifier] = STATE(2501), [sym__class_name] = STATE(5019), [sym_dependent_type] = STATE(2501), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_type_parameter_pack_expansion] = STATE(4469), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3660), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(3016), [aux_sym_type_definition_repeat1] = STATE(2358), [aux_sym_sized_type_specifier_repeat1] = STATE(1953), [sym_identifier] = ACTIONS(2290), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(2302), [anon_sym_unsigned] = ACTIONS(2302), [anon_sym_long] = ACTIONS(2302), [anon_sym_short] = ACTIONS(2302), [sym_primitive_type] = ACTIONS(2304), [anon_sym_enum] = ACTIONS(2306), [anon_sym_class] = ACTIONS(2308), [anon_sym_struct] = ACTIONS(2310), [anon_sym_union] = ACTIONS(2312), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2326), [sym_auto] = ACTIONS(2328), [anon_sym_typename] = ACTIONS(2330), [anon_sym_template] = ACTIONS(931), [anon_sym_GT2] = ACTIONS(2332), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [812] = { [sym_type_qualifier] = STATE(2358), [sym__type_specifier] = STATE(3258), [sym_sized_type_specifier] = STATE(2501), [sym_enum_specifier] = STATE(2501), [sym_struct_specifier] = STATE(2501), [sym_union_specifier] = STATE(2501), [sym__expression] = STATE(2736), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_type_descriptor] = STATE(4202), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym_decltype] = STATE(2501), [sym_class_specifier] = STATE(2501), [sym__class_name] = STATE(5019), [sym_dependent_type] = STATE(2501), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_type_parameter_pack_expansion] = STATE(4567), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3660), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(3016), [aux_sym_type_definition_repeat1] = STATE(2358), [aux_sym_sized_type_specifier_repeat1] = STATE(1953), [sym_identifier] = ACTIONS(2290), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(2302), [anon_sym_unsigned] = ACTIONS(2302), [anon_sym_long] = ACTIONS(2302), [anon_sym_short] = ACTIONS(2302), [sym_primitive_type] = ACTIONS(2304), [anon_sym_enum] = ACTIONS(2306), [anon_sym_class] = ACTIONS(2308), [anon_sym_struct] = ACTIONS(2310), [anon_sym_union] = ACTIONS(2312), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2326), [sym_auto] = ACTIONS(2328), [anon_sym_typename] = ACTIONS(2330), [anon_sym_template] = ACTIONS(931), [anon_sym_GT2] = ACTIONS(2342), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [813] = { [sym_type_qualifier] = STATE(2358), [sym__type_specifier] = STATE(3258), [sym_sized_type_specifier] = STATE(2501), [sym_enum_specifier] = STATE(2501), [sym_struct_specifier] = STATE(2501), [sym_union_specifier] = STATE(2501), [sym__expression] = STATE(2750), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_type_descriptor] = STATE(4217), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym_decltype] = STATE(2501), [sym_class_specifier] = STATE(2501), [sym__class_name] = STATE(5019), [sym_dependent_type] = STATE(2501), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_type_parameter_pack_expansion] = STATE(4544), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3660), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(3016), [aux_sym_type_definition_repeat1] = STATE(2358), [aux_sym_sized_type_specifier_repeat1] = STATE(1953), [sym_identifier] = ACTIONS(2290), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(2302), [anon_sym_unsigned] = ACTIONS(2302), [anon_sym_long] = ACTIONS(2302), [anon_sym_short] = ACTIONS(2302), [sym_primitive_type] = ACTIONS(2304), [anon_sym_enum] = ACTIONS(2306), [anon_sym_class] = ACTIONS(2308), [anon_sym_struct] = ACTIONS(2310), [anon_sym_union] = ACTIONS(2312), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2326), [sym_auto] = ACTIONS(2328), [anon_sym_typename] = ACTIONS(2330), [anon_sym_template] = ACTIONS(931), [anon_sym_GT2] = ACTIONS(2344), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [814] = { [sym_type_qualifier] = STATE(2358), [sym__type_specifier] = STATE(3258), [sym_sized_type_specifier] = STATE(2501), [sym_enum_specifier] = STATE(2501), [sym_struct_specifier] = STATE(2501), [sym_union_specifier] = STATE(2501), [sym__expression] = STATE(2696), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_type_descriptor] = STATE(4275), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym_decltype] = STATE(2501), [sym_class_specifier] = STATE(2501), [sym__class_name] = STATE(5019), [sym_dependent_type] = STATE(2501), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_type_parameter_pack_expansion] = STATE(4461), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3660), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(3016), [aux_sym_type_definition_repeat1] = STATE(2358), [aux_sym_sized_type_specifier_repeat1] = STATE(1953), [sym_identifier] = ACTIONS(2290), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(2302), [anon_sym_unsigned] = ACTIONS(2302), [anon_sym_long] = ACTIONS(2302), [anon_sym_short] = ACTIONS(2302), [sym_primitive_type] = ACTIONS(2304), [anon_sym_enum] = ACTIONS(2306), [anon_sym_class] = ACTIONS(2308), [anon_sym_struct] = ACTIONS(2310), [anon_sym_union] = ACTIONS(2312), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2326), [sym_auto] = ACTIONS(2328), [anon_sym_typename] = ACTIONS(2330), [anon_sym_template] = ACTIONS(931), [anon_sym_GT2] = ACTIONS(2346), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [815] = { [sym_type_qualifier] = STATE(2358), [sym__type_specifier] = STATE(3258), [sym_sized_type_specifier] = STATE(2501), [sym_enum_specifier] = STATE(2501), [sym_struct_specifier] = STATE(2501), [sym_union_specifier] = STATE(2501), [sym__expression] = STATE(2700), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_type_descriptor] = STATE(4219), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym_decltype] = STATE(2501), [sym_class_specifier] = STATE(2501), [sym__class_name] = STATE(5019), [sym_dependent_type] = STATE(2501), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_type_parameter_pack_expansion] = STATE(4531), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3660), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(3016), [aux_sym_type_definition_repeat1] = STATE(2358), [aux_sym_sized_type_specifier_repeat1] = STATE(1953), [sym_identifier] = ACTIONS(2290), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(2302), [anon_sym_unsigned] = ACTIONS(2302), [anon_sym_long] = ACTIONS(2302), [anon_sym_short] = ACTIONS(2302), [sym_primitive_type] = ACTIONS(2304), [anon_sym_enum] = ACTIONS(2306), [anon_sym_class] = ACTIONS(2308), [anon_sym_struct] = ACTIONS(2310), [anon_sym_union] = ACTIONS(2312), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2326), [sym_auto] = ACTIONS(2328), [anon_sym_typename] = ACTIONS(2330), [anon_sym_template] = ACTIONS(931), [anon_sym_GT2] = ACTIONS(2348), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [816] = { [sym_type_qualifier] = STATE(2358), [sym__type_specifier] = STATE(3258), [sym_sized_type_specifier] = STATE(2501), [sym_enum_specifier] = STATE(2501), [sym_struct_specifier] = STATE(2501), [sym_union_specifier] = STATE(2501), [sym__expression] = STATE(2711), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_type_descriptor] = STATE(4205), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym_decltype] = STATE(2501), [sym_class_specifier] = STATE(2501), [sym__class_name] = STATE(5019), [sym_dependent_type] = STATE(2501), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_type_parameter_pack_expansion] = STATE(4562), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3660), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(3016), [aux_sym_type_definition_repeat1] = STATE(2358), [aux_sym_sized_type_specifier_repeat1] = STATE(1953), [sym_identifier] = ACTIONS(2290), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(2302), [anon_sym_unsigned] = ACTIONS(2302), [anon_sym_long] = ACTIONS(2302), [anon_sym_short] = ACTIONS(2302), [sym_primitive_type] = ACTIONS(2304), [anon_sym_enum] = ACTIONS(2306), [anon_sym_class] = ACTIONS(2308), [anon_sym_struct] = ACTIONS(2310), [anon_sym_union] = ACTIONS(2312), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2326), [sym_auto] = ACTIONS(2328), [anon_sym_typename] = ACTIONS(2330), [anon_sym_template] = ACTIONS(931), [anon_sym_GT2] = ACTIONS(2350), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [817] = { [sym_type_qualifier] = STATE(2358), [sym__type_specifier] = STATE(3258), [sym_sized_type_specifier] = STATE(2501), [sym_enum_specifier] = STATE(2501), [sym_struct_specifier] = STATE(2501), [sym_union_specifier] = STATE(2501), [sym__expression] = STATE(2733), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_type_descriptor] = STATE(4297), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym_decltype] = STATE(2501), [sym_class_specifier] = STATE(2501), [sym__class_name] = STATE(5019), [sym_dependent_type] = STATE(2501), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_type_parameter_pack_expansion] = STATE(4371), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3660), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(3016), [aux_sym_type_definition_repeat1] = STATE(2358), [aux_sym_sized_type_specifier_repeat1] = STATE(1953), [sym_identifier] = ACTIONS(2290), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(2302), [anon_sym_unsigned] = ACTIONS(2302), [anon_sym_long] = ACTIONS(2302), [anon_sym_short] = ACTIONS(2302), [sym_primitive_type] = ACTIONS(2304), [anon_sym_enum] = ACTIONS(2306), [anon_sym_class] = ACTIONS(2308), [anon_sym_struct] = ACTIONS(2310), [anon_sym_union] = ACTIONS(2312), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2326), [sym_auto] = ACTIONS(2328), [anon_sym_typename] = ACTIONS(2330), [anon_sym_template] = ACTIONS(931), [anon_sym_GT2] = ACTIONS(2352), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [818] = { [sym_type_qualifier] = STATE(2358), [sym__type_specifier] = STATE(3258), [sym_sized_type_specifier] = STATE(2501), [sym_enum_specifier] = STATE(2501), [sym_struct_specifier] = STATE(2501), [sym_union_specifier] = STATE(2501), [sym__expression] = STATE(2745), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_type_descriptor] = STATE(4277), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym_decltype] = STATE(2501), [sym_class_specifier] = STATE(2501), [sym__class_name] = STATE(5019), [sym_dependent_type] = STATE(2501), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_type_parameter_pack_expansion] = STATE(4445), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3660), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(3016), [aux_sym_type_definition_repeat1] = STATE(2358), [aux_sym_sized_type_specifier_repeat1] = STATE(1953), [sym_identifier] = ACTIONS(2290), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(2302), [anon_sym_unsigned] = ACTIONS(2302), [anon_sym_long] = ACTIONS(2302), [anon_sym_short] = ACTIONS(2302), [sym_primitive_type] = ACTIONS(2304), [anon_sym_enum] = ACTIONS(2306), [anon_sym_class] = ACTIONS(2308), [anon_sym_struct] = ACTIONS(2310), [anon_sym_union] = ACTIONS(2312), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2326), [sym_auto] = ACTIONS(2328), [anon_sym_typename] = ACTIONS(2330), [anon_sym_template] = ACTIONS(931), [anon_sym_GT2] = ACTIONS(2354), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [819] = { [sym_type_qualifier] = STATE(2358), [sym__type_specifier] = STATE(3258), [sym_sized_type_specifier] = STATE(2501), [sym_enum_specifier] = STATE(2501), [sym_struct_specifier] = STATE(2501), [sym_union_specifier] = STATE(2501), [sym__expression] = STATE(2714), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_type_descriptor] = STATE(4308), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym_decltype] = STATE(2501), [sym_class_specifier] = STATE(2501), [sym__class_name] = STATE(5019), [sym_dependent_type] = STATE(2501), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_type_parameter_pack_expansion] = STATE(4441), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3660), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(3016), [aux_sym_type_definition_repeat1] = STATE(2358), [aux_sym_sized_type_specifier_repeat1] = STATE(1953), [sym_identifier] = ACTIONS(2290), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(2302), [anon_sym_unsigned] = ACTIONS(2302), [anon_sym_long] = ACTIONS(2302), [anon_sym_short] = ACTIONS(2302), [sym_primitive_type] = ACTIONS(2304), [anon_sym_enum] = ACTIONS(2306), [anon_sym_class] = ACTIONS(2308), [anon_sym_struct] = ACTIONS(2310), [anon_sym_union] = ACTIONS(2312), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2326), [sym_auto] = ACTIONS(2328), [anon_sym_typename] = ACTIONS(2330), [anon_sym_template] = ACTIONS(931), [anon_sym_GT2] = ACTIONS(2356), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [820] = { [sym_type_qualifier] = STATE(2358), [sym__type_specifier] = STATE(3258), [sym_sized_type_specifier] = STATE(2501), [sym_enum_specifier] = STATE(2501), [sym_struct_specifier] = STATE(2501), [sym_union_specifier] = STATE(2501), [sym__expression] = STATE(2720), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_type_descriptor] = STATE(4166), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym_decltype] = STATE(2501), [sym_class_specifier] = STATE(2501), [sym__class_name] = STATE(5019), [sym_dependent_type] = STATE(2501), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_type_parameter_pack_expansion] = STATE(4595), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3660), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(3016), [aux_sym_type_definition_repeat1] = STATE(2358), [aux_sym_sized_type_specifier_repeat1] = STATE(1953), [sym_identifier] = ACTIONS(2290), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(2302), [anon_sym_unsigned] = ACTIONS(2302), [anon_sym_long] = ACTIONS(2302), [anon_sym_short] = ACTIONS(2302), [sym_primitive_type] = ACTIONS(2304), [anon_sym_enum] = ACTIONS(2306), [anon_sym_class] = ACTIONS(2308), [anon_sym_struct] = ACTIONS(2310), [anon_sym_union] = ACTIONS(2312), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2326), [sym_auto] = ACTIONS(2328), [anon_sym_typename] = ACTIONS(2330), [anon_sym_template] = ACTIONS(931), [anon_sym_GT2] = ACTIONS(2358), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [821] = { [sym_function_definition] = STATE(760), [sym_declaration] = STATE(760), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3064), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1497), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3751), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2411), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym__empty_declaration] = STATE(760), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1383), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(760), [sym_operator_cast] = STATE(4154), [sym__constructor_specifiers] = STATE(1383), [sym_operator_cast_definition] = STATE(760), [sym_operator_cast_declaration] = STATE(760), [sym_constructor_or_destructor_definition] = STATE(760), [sym_constructor_or_destructor_declaration] = STATE(760), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_alias_declaration] = STATE(760), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3529), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2306), [sym_qualified_operator_cast_identifier] = STATE(4154), [sym_operator_name] = STATE(3782), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1383), [sym_identifier] = ACTIONS(2360), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(2362), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(111), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(2364), [anon_sym_operator] = ACTIONS(117), [anon_sym_using] = ACTIONS(2366), }, [822] = { [sym_type_qualifier] = STATE(2380), [sym__type_specifier] = STATE(3233), [sym_sized_type_specifier] = STATE(2128), [sym_enum_specifier] = STATE(2128), [sym_struct_specifier] = STATE(2128), [sym_union_specifier] = STATE(2128), [sym__expression] = STATE(2774), [sym_comma_expression] = STATE(5365), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_type_descriptor] = STATE(5364), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2128), [sym_class_specifier] = STATE(2128), [sym__class_name] = STATE(4703), [sym_dependent_type] = STATE(2128), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3631), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(2380), [aux_sym_sized_type_specifier_repeat1] = STATE(1692), [sym_identifier] = ACTIONS(2368), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1706), [anon_sym_unsigned] = ACTIONS(1706), [anon_sym_long] = ACTIONS(1706), [anon_sym_short] = ACTIONS(1706), [sym_primitive_type] = ACTIONS(1708), [anon_sym_enum] = ACTIONS(1710), [anon_sym_class] = ACTIONS(1712), [anon_sym_struct] = ACTIONS(1714), [anon_sym_union] = ACTIONS(1716), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1718), [sym_auto] = ACTIONS(1720), [anon_sym_typename] = ACTIONS(1722), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [823] = { [sym_type_qualifier] = STATE(2380), [sym__type_specifier] = STATE(3233), [sym_sized_type_specifier] = STATE(2128), [sym_enum_specifier] = STATE(2128), [sym_struct_specifier] = STATE(2128), [sym_union_specifier] = STATE(2128), [sym__expression] = STATE(2774), [sym_comma_expression] = STATE(5365), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_type_descriptor] = STATE(5139), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2128), [sym_class_specifier] = STATE(2128), [sym__class_name] = STATE(4703), [sym_dependent_type] = STATE(2128), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3631), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(2380), [aux_sym_sized_type_specifier_repeat1] = STATE(1692), [sym_identifier] = ACTIONS(2368), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1706), [anon_sym_unsigned] = ACTIONS(1706), [anon_sym_long] = ACTIONS(1706), [anon_sym_short] = ACTIONS(1706), [sym_primitive_type] = ACTIONS(1708), [anon_sym_enum] = ACTIONS(1710), [anon_sym_class] = ACTIONS(1712), [anon_sym_struct] = ACTIONS(1714), [anon_sym_union] = ACTIONS(1716), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1718), [sym_auto] = ACTIONS(1720), [anon_sym_typename] = ACTIONS(1722), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [824] = { [sym_type_qualifier] = STATE(2380), [sym__type_specifier] = STATE(3233), [sym_sized_type_specifier] = STATE(2128), [sym_enum_specifier] = STATE(2128), [sym_struct_specifier] = STATE(2128), [sym_union_specifier] = STATE(2128), [sym__expression] = STATE(2774), [sym_comma_expression] = STATE(5365), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_type_descriptor] = STATE(5195), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2128), [sym_class_specifier] = STATE(2128), [sym__class_name] = STATE(4703), [sym_dependent_type] = STATE(2128), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3631), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(2380), [aux_sym_sized_type_specifier_repeat1] = STATE(1692), [sym_identifier] = ACTIONS(2368), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1706), [anon_sym_unsigned] = ACTIONS(1706), [anon_sym_long] = ACTIONS(1706), [anon_sym_short] = ACTIONS(1706), [sym_primitive_type] = ACTIONS(1708), [anon_sym_enum] = ACTIONS(1710), [anon_sym_class] = ACTIONS(1712), [anon_sym_struct] = ACTIONS(1714), [anon_sym_union] = ACTIONS(1716), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1718), [sym_auto] = ACTIONS(1720), [anon_sym_typename] = ACTIONS(1722), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [825] = { [sym_type_qualifier] = STATE(2380), [sym__type_specifier] = STATE(3233), [sym_sized_type_specifier] = STATE(2128), [sym_enum_specifier] = STATE(2128), [sym_struct_specifier] = STATE(2128), [sym_union_specifier] = STATE(2128), [sym__expression] = STATE(2877), [sym_comma_expression] = STATE(5396), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_type_descriptor] = STATE(5259), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2128), [sym_class_specifier] = STATE(2128), [sym__class_name] = STATE(4703), [sym_dependent_type] = STATE(2128), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3631), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(2380), [aux_sym_sized_type_specifier_repeat1] = STATE(1692), [sym_identifier] = ACTIONS(2368), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1706), [anon_sym_unsigned] = ACTIONS(1706), [anon_sym_long] = ACTIONS(1706), [anon_sym_short] = ACTIONS(1706), [sym_primitive_type] = ACTIONS(1708), [anon_sym_enum] = ACTIONS(1710), [anon_sym_class] = ACTIONS(1712), [anon_sym_struct] = ACTIONS(1714), [anon_sym_union] = ACTIONS(1716), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1718), [sym_auto] = ACTIONS(1720), [anon_sym_typename] = ACTIONS(1722), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [826] = { [sym_type_qualifier] = STATE(2380), [sym__type_specifier] = STATE(3233), [sym_sized_type_specifier] = STATE(2128), [sym_enum_specifier] = STATE(2128), [sym_struct_specifier] = STATE(2128), [sym_union_specifier] = STATE(2128), [sym__expression] = STATE(2774), [sym_comma_expression] = STATE(5365), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_type_descriptor] = STATE(5278), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2128), [sym_class_specifier] = STATE(2128), [sym__class_name] = STATE(4703), [sym_dependent_type] = STATE(2128), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3631), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(2380), [aux_sym_sized_type_specifier_repeat1] = STATE(1692), [sym_identifier] = ACTIONS(2368), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1706), [anon_sym_unsigned] = ACTIONS(1706), [anon_sym_long] = ACTIONS(1706), [anon_sym_short] = ACTIONS(1706), [sym_primitive_type] = ACTIONS(1708), [anon_sym_enum] = ACTIONS(1710), [anon_sym_class] = ACTIONS(1712), [anon_sym_struct] = ACTIONS(1714), [anon_sym_union] = ACTIONS(1716), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1718), [sym_auto] = ACTIONS(1720), [anon_sym_typename] = ACTIONS(1722), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [827] = { [sym_function_definition] = STATE(400), [sym_declaration] = STATE(400), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3083), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1505), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3743), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2406), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym__empty_declaration] = STATE(400), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1375), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(400), [sym_operator_cast] = STATE(4362), [sym__constructor_specifiers] = STATE(1375), [sym_operator_cast_definition] = STATE(400), [sym_operator_cast_declaration] = STATE(400), [sym_constructor_or_destructor_definition] = STATE(400), [sym_constructor_or_destructor_declaration] = STATE(400), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_alias_declaration] = STATE(400), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3529), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2306), [sym_qualified_operator_cast_identifier] = STATE(4362), [sym_operator_name] = STATE(3782), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1375), [sym_identifier] = ACTIONS(2360), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(2362), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(111), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(2370), [anon_sym_operator] = ACTIONS(117), [anon_sym_using] = ACTIONS(2372), }, [828] = { [sym_type_qualifier] = STATE(2380), [sym__type_specifier] = STATE(3233), [sym_sized_type_specifier] = STATE(2128), [sym_enum_specifier] = STATE(2128), [sym_struct_specifier] = STATE(2128), [sym_union_specifier] = STATE(2128), [sym__expression] = STATE(2877), [sym_comma_expression] = STATE(5396), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_type_descriptor] = STATE(5432), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2128), [sym_class_specifier] = STATE(2128), [sym__class_name] = STATE(4703), [sym_dependent_type] = STATE(2128), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3631), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(2380), [aux_sym_sized_type_specifier_repeat1] = STATE(1692), [sym_identifier] = ACTIONS(2368), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1706), [anon_sym_unsigned] = ACTIONS(1706), [anon_sym_long] = ACTIONS(1706), [anon_sym_short] = ACTIONS(1706), [sym_primitive_type] = ACTIONS(1708), [anon_sym_enum] = ACTIONS(1710), [anon_sym_class] = ACTIONS(1712), [anon_sym_struct] = ACTIONS(1714), [anon_sym_union] = ACTIONS(1716), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1718), [sym_auto] = ACTIONS(1720), [anon_sym_typename] = ACTIONS(1722), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [829] = { [sym_type_qualifier] = STATE(2380), [sym__type_specifier] = STATE(3233), [sym_sized_type_specifier] = STATE(2128), [sym_enum_specifier] = STATE(2128), [sym_struct_specifier] = STATE(2128), [sym_union_specifier] = STATE(2128), [sym__expression] = STATE(2774), [sym_comma_expression] = STATE(5365), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_type_descriptor] = STATE(5400), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2128), [sym_class_specifier] = STATE(2128), [sym__class_name] = STATE(4703), [sym_dependent_type] = STATE(2128), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3631), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(2380), [aux_sym_sized_type_specifier_repeat1] = STATE(1692), [sym_identifier] = ACTIONS(2368), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1706), [anon_sym_unsigned] = ACTIONS(1706), [anon_sym_long] = ACTIONS(1706), [anon_sym_short] = ACTIONS(1706), [sym_primitive_type] = ACTIONS(1708), [anon_sym_enum] = ACTIONS(1710), [anon_sym_class] = ACTIONS(1712), [anon_sym_struct] = ACTIONS(1714), [anon_sym_union] = ACTIONS(1716), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1718), [sym_auto] = ACTIONS(1720), [anon_sym_typename] = ACTIONS(1722), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [830] = { [sym_type_qualifier] = STATE(2380), [sym__type_specifier] = STATE(3233), [sym_sized_type_specifier] = STATE(2128), [sym_enum_specifier] = STATE(2128), [sym_struct_specifier] = STATE(2128), [sym_union_specifier] = STATE(2128), [sym__expression] = STATE(2774), [sym_comma_expression] = STATE(5365), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_type_descriptor] = STATE(5329), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2128), [sym_class_specifier] = STATE(2128), [sym__class_name] = STATE(4703), [sym_dependent_type] = STATE(2128), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3631), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(2380), [aux_sym_sized_type_specifier_repeat1] = STATE(1692), [sym_identifier] = ACTIONS(2368), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1706), [anon_sym_unsigned] = ACTIONS(1706), [anon_sym_long] = ACTIONS(1706), [anon_sym_short] = ACTIONS(1706), [sym_primitive_type] = ACTIONS(1708), [anon_sym_enum] = ACTIONS(1710), [anon_sym_class] = ACTIONS(1712), [anon_sym_struct] = ACTIONS(1714), [anon_sym_union] = ACTIONS(1716), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1718), [sym_auto] = ACTIONS(1720), [anon_sym_typename] = ACTIONS(1722), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [831] = { [sym_type_qualifier] = STATE(2380), [sym__type_specifier] = STATE(3233), [sym_sized_type_specifier] = STATE(2128), [sym_enum_specifier] = STATE(2128), [sym_struct_specifier] = STATE(2128), [sym_union_specifier] = STATE(2128), [sym__expression] = STATE(2774), [sym_comma_expression] = STATE(5365), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_type_descriptor] = STATE(5217), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2128), [sym_class_specifier] = STATE(2128), [sym__class_name] = STATE(4703), [sym_dependent_type] = STATE(2128), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3631), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(2380), [aux_sym_sized_type_specifier_repeat1] = STATE(1692), [sym_identifier] = ACTIONS(2368), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1706), [anon_sym_unsigned] = ACTIONS(1706), [anon_sym_long] = ACTIONS(1706), [anon_sym_short] = ACTIONS(1706), [sym_primitive_type] = ACTIONS(1708), [anon_sym_enum] = ACTIONS(1710), [anon_sym_class] = ACTIONS(1712), [anon_sym_struct] = ACTIONS(1714), [anon_sym_union] = ACTIONS(1716), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1718), [sym_auto] = ACTIONS(1720), [anon_sym_typename] = ACTIONS(1722), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [832] = { [sym_type_qualifier] = STATE(2380), [sym__type_specifier] = STATE(3233), [sym_sized_type_specifier] = STATE(2128), [sym_enum_specifier] = STATE(2128), [sym_struct_specifier] = STATE(2128), [sym_union_specifier] = STATE(2128), [sym__expression] = STATE(2774), [sym_comma_expression] = STATE(5365), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_type_descriptor] = STATE(5291), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2128), [sym_class_specifier] = STATE(2128), [sym__class_name] = STATE(4703), [sym_dependent_type] = STATE(2128), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3631), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(2380), [aux_sym_sized_type_specifier_repeat1] = STATE(1692), [sym_identifier] = ACTIONS(2368), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1706), [anon_sym_unsigned] = ACTIONS(1706), [anon_sym_long] = ACTIONS(1706), [anon_sym_short] = ACTIONS(1706), [sym_primitive_type] = ACTIONS(1708), [anon_sym_enum] = ACTIONS(1710), [anon_sym_class] = ACTIONS(1712), [anon_sym_struct] = ACTIONS(1714), [anon_sym_union] = ACTIONS(1716), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1718), [sym_auto] = ACTIONS(1720), [anon_sym_typename] = ACTIONS(1722), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [833] = { [sym_type_qualifier] = STATE(2380), [sym__type_specifier] = STATE(3233), [sym_sized_type_specifier] = STATE(2128), [sym_enum_specifier] = STATE(2128), [sym_struct_specifier] = STATE(2128), [sym_union_specifier] = STATE(2128), [sym__expression] = STATE(2877), [sym_comma_expression] = STATE(5396), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_type_descriptor] = STATE(5178), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2128), [sym_class_specifier] = STATE(2128), [sym__class_name] = STATE(4703), [sym_dependent_type] = STATE(2128), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3631), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(2380), [aux_sym_sized_type_specifier_repeat1] = STATE(1692), [sym_identifier] = ACTIONS(2368), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1706), [anon_sym_unsigned] = ACTIONS(1706), [anon_sym_long] = ACTIONS(1706), [anon_sym_short] = ACTIONS(1706), [sym_primitive_type] = ACTIONS(1708), [anon_sym_enum] = ACTIONS(1710), [anon_sym_class] = ACTIONS(1712), [anon_sym_struct] = ACTIONS(1714), [anon_sym_union] = ACTIONS(1716), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1718), [sym_auto] = ACTIONS(1720), [anon_sym_typename] = ACTIONS(1722), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [834] = { [sym_function_definition] = STATE(1413), [sym_declaration] = STATE(1413), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2990), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1523), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3763), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2500), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym__empty_declaration] = STATE(1413), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1373), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(1413), [sym_operator_cast] = STATE(4339), [sym__constructor_specifiers] = STATE(1373), [sym_operator_cast_definition] = STATE(1413), [sym_operator_cast_declaration] = STATE(1413), [sym_constructor_or_destructor_definition] = STATE(1413), [sym_constructor_or_destructor_declaration] = STATE(1413), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_alias_declaration] = STATE(1413), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3529), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2306), [sym_qualified_operator_cast_identifier] = STATE(4339), [sym_operator_name] = STATE(3782), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1373), [sym_identifier] = ACTIONS(2360), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(2362), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(111), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(1411), [anon_sym_operator] = ACTIONS(117), [anon_sym_using] = ACTIONS(2374), }, [835] = { [sym_function_definition] = STATE(1557), [sym_declaration] = STATE(1557), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(3044), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1498), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3732), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2418), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym__empty_declaration] = STATE(1557), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1374), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(1557), [sym_operator_cast] = STATE(4214), [sym__constructor_specifiers] = STATE(1374), [sym_operator_cast_definition] = STATE(1557), [sym_operator_cast_declaration] = STATE(1557), [sym_constructor_or_destructor_definition] = STATE(1557), [sym_constructor_or_destructor_declaration] = STATE(1557), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_alias_declaration] = STATE(1557), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3529), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2306), [sym_qualified_operator_cast_identifier] = STATE(4214), [sym_operator_name] = STATE(3782), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1374), [sym_identifier] = ACTIONS(2360), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(2362), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(111), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(1614), [anon_sym_operator] = ACTIONS(117), [anon_sym_using] = ACTIONS(2376), }, [836] = { [sym_type_qualifier] = STATE(2380), [sym__type_specifier] = STATE(3233), [sym_sized_type_specifier] = STATE(2128), [sym_enum_specifier] = STATE(2128), [sym_struct_specifier] = STATE(2128), [sym_union_specifier] = STATE(2128), [sym__expression] = STATE(2877), [sym_comma_expression] = STATE(5396), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_type_descriptor] = STATE(5113), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2128), [sym_class_specifier] = STATE(2128), [sym__class_name] = STATE(4703), [sym_dependent_type] = STATE(2128), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3631), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(2380), [aux_sym_sized_type_specifier_repeat1] = STATE(1692), [sym_identifier] = ACTIONS(2368), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1706), [anon_sym_unsigned] = ACTIONS(1706), [anon_sym_long] = ACTIONS(1706), [anon_sym_short] = ACTIONS(1706), [sym_primitive_type] = ACTIONS(1708), [anon_sym_enum] = ACTIONS(1710), [anon_sym_class] = ACTIONS(1712), [anon_sym_struct] = ACTIONS(1714), [anon_sym_union] = ACTIONS(1716), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1718), [sym_auto] = ACTIONS(1720), [anon_sym_typename] = ACTIONS(1722), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [837] = { [sym_function_definition] = STATE(805), [sym_declaration] = STATE(805), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2951), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1619), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3758), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2402), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym__empty_declaration] = STATE(805), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1372), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(805), [sym_operator_cast] = STATE(4168), [sym__constructor_specifiers] = STATE(1372), [sym_operator_cast_definition] = STATE(805), [sym_operator_cast_declaration] = STATE(805), [sym_constructor_or_destructor_definition] = STATE(805), [sym_constructor_or_destructor_declaration] = STATE(805), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_alias_declaration] = STATE(805), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3529), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2306), [sym_qualified_operator_cast_identifier] = STATE(4168), [sym_operator_name] = STATE(3782), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1372), [sym_identifier] = ACTIONS(2360), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(2362), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(111), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(2378), [anon_sym_operator] = ACTIONS(117), [anon_sym_using] = ACTIONS(2380), }, [838] = { [sym_type_qualifier] = STATE(2380), [sym__type_specifier] = STATE(3233), [sym_sized_type_specifier] = STATE(2128), [sym_enum_specifier] = STATE(2128), [sym_struct_specifier] = STATE(2128), [sym_union_specifier] = STATE(2128), [sym__expression] = STATE(2774), [sym_comma_expression] = STATE(5365), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_type_descriptor] = STATE(5295), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2128), [sym_class_specifier] = STATE(2128), [sym__class_name] = STATE(4703), [sym_dependent_type] = STATE(2128), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3631), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(2380), [aux_sym_sized_type_specifier_repeat1] = STATE(1692), [sym_identifier] = ACTIONS(2368), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1706), [anon_sym_unsigned] = ACTIONS(1706), [anon_sym_long] = ACTIONS(1706), [anon_sym_short] = ACTIONS(1706), [sym_primitive_type] = ACTIONS(1708), [anon_sym_enum] = ACTIONS(1710), [anon_sym_class] = ACTIONS(1712), [anon_sym_struct] = ACTIONS(1714), [anon_sym_union] = ACTIONS(1716), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1718), [sym_auto] = ACTIONS(1720), [anon_sym_typename] = ACTIONS(1722), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [839] = { [sym_function_definition] = STATE(1491), [sym_declaration] = STATE(1491), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2893), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1555), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3760), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2405), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym__empty_declaration] = STATE(1491), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1377), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(1491), [sym_operator_cast] = STATE(4305), [sym__constructor_specifiers] = STATE(1377), [sym_operator_cast_definition] = STATE(1491), [sym_operator_cast_declaration] = STATE(1491), [sym_constructor_or_destructor_definition] = STATE(1491), [sym_constructor_or_destructor_declaration] = STATE(1491), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_alias_declaration] = STATE(1491), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3529), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2306), [sym_qualified_operator_cast_identifier] = STATE(4305), [sym_operator_name] = STATE(3782), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1377), [sym_identifier] = ACTIONS(2360), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(2362), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(111), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(1582), [anon_sym_operator] = ACTIONS(117), [anon_sym_using] = ACTIONS(2382), }, [840] = { [sym_type_qualifier] = STATE(2380), [sym__type_specifier] = STATE(3233), [sym_sized_type_specifier] = STATE(2128), [sym_enum_specifier] = STATE(2128), [sym_struct_specifier] = STATE(2128), [sym_union_specifier] = STATE(2128), [sym__expression] = STATE(2774), [sym_comma_expression] = STATE(5365), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_type_descriptor] = STATE(5314), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym_decltype] = STATE(2128), [sym_class_specifier] = STATE(2128), [sym__class_name] = STATE(4703), [sym_dependent_type] = STATE(2128), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3631), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(2380), [aux_sym_sized_type_specifier_repeat1] = STATE(1692), [sym_identifier] = ACTIONS(2368), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(1706), [anon_sym_unsigned] = ACTIONS(1706), [anon_sym_long] = ACTIONS(1706), [anon_sym_short] = ACTIONS(1706), [sym_primitive_type] = ACTIONS(1708), [anon_sym_enum] = ACTIONS(1710), [anon_sym_class] = ACTIONS(1712), [anon_sym_struct] = ACTIONS(1714), [anon_sym_union] = ACTIONS(1716), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1718), [sym_auto] = ACTIONS(1720), [anon_sym_typename] = ACTIONS(1722), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [841] = { [sym_ms_based_modifier] = STATE(5398), [sym_ms_unaligned_ptr_modifier] = STATE(3277), [sym_ms_pointer_modifier] = STATE(1878), [sym__declarator] = STATE(3962), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3782), [sym_array_declarator] = STATE(3782), [sym_type_qualifier] = STATE(2456), [sym__expression] = STATE(1874), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1924), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3626), [sym_qualified_identifier] = STATE(1939), [sym_qualified_type_identifier] = STATE(4738), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(1907), [aux_sym_type_definition_repeat1] = STATE(2456), [aux_sym_pointer_declarator_repeat1] = STATE(1878), [sym_identifier] = ACTIONS(2384), [anon_sym_LPAREN2] = ACTIONS(2386), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(2388), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym___based] = ACTIONS(47), [sym_ms_restrict_modifier] = ACTIONS(2390), [sym_ms_unsigned_ptr_modifier] = ACTIONS(2390), [sym_ms_signed_ptr_modifier] = ACTIONS(2390), [anon_sym__unaligned] = ACTIONS(2392), [anon_sym___unaligned] = ACTIONS(2392), [anon_sym_LBRACK] = ACTIONS(1704), [anon_sym_const] = ACTIONS(2394), [anon_sym_volatile] = ACTIONS(2394), [anon_sym_restrict] = ACTIONS(2394), [anon_sym__Atomic] = ACTIONS(2394), [anon_sym_mutable] = ACTIONS(2394), [anon_sym_constexpr] = ACTIONS(2394), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(1724), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [842] = { [sym_function_definition] = STATE(799), [sym_declaration] = STATE(799), [sym__declaration_modifiers] = STATE(2241), [sym__declaration_specifiers] = STATE(2939), [sym_attribute_specifier] = STATE(2241), [sym_attribute_declaration] = STATE(2241), [sym_ms_declspec_modifier] = STATE(2241), [sym_ms_based_modifier] = STATE(5398), [sym_ms_call_modifier] = STATE(1591), [sym__declarator] = STATE(4074), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3740), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(2241), [sym_type_qualifier] = STATE(2241), [sym__type_specifier] = STATE(2454), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym__empty_declaration] = STATE(799), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym_virtual_function_specifier] = STATE(2241), [sym_explicit_function_specifier] = STATE(1378), [sym_dependent_type] = STATE(2326), [sym_template_declaration] = STATE(799), [sym_operator_cast] = STATE(4229), [sym__constructor_specifiers] = STATE(1378), [sym_operator_cast_definition] = STATE(799), [sym_operator_cast_declaration] = STATE(799), [sym_constructor_or_destructor_definition] = STATE(799), [sym_constructor_or_destructor_declaration] = STATE(799), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_alias_declaration] = STATE(799), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3529), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2306), [sym_qualified_operator_cast_identifier] = STATE(4229), [sym_operator_name] = STATE(3782), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [aux_sym_operator_cast_definition_repeat1] = STATE(1378), [sym_identifier] = ACTIONS(2360), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(2362), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym___cdecl] = ACTIONS(49), [anon_sym___clrcall] = ACTIONS(49), [anon_sym___stdcall] = ACTIONS(49), [anon_sym___fastcall] = ACTIONS(49), [anon_sym___thiscall] = ACTIONS(49), [anon_sym___vectorcall] = ACTIONS(49), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(111), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [anon_sym_explicit] = ACTIONS(109), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(2396), [anon_sym_operator] = ACTIONS(117), [anon_sym_using] = ACTIONS(2398), }, [843] = { [sym_type_qualifier] = STATE(2358), [sym__type_specifier] = STATE(3258), [sym_sized_type_specifier] = STATE(2501), [sym_enum_specifier] = STATE(2501), [sym_struct_specifier] = STATE(2501), [sym_union_specifier] = STATE(2501), [sym__expression] = STATE(2800), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_type_descriptor] = STATE(4518), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym_decltype] = STATE(2501), [sym_class_specifier] = STATE(2501), [sym__class_name] = STATE(5019), [sym_dependent_type] = STATE(2501), [sym_template_type] = STATE(3497), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_type_parameter_pack_expansion] = STATE(4746), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3660), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(3527), [sym_user_defined_literal] = STATE(3016), [aux_sym_type_definition_repeat1] = STATE(2358), [aux_sym_sized_type_specifier_repeat1] = STATE(1953), [sym_identifier] = ACTIONS(2290), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(2302), [anon_sym_unsigned] = ACTIONS(2302), [anon_sym_long] = ACTIONS(2302), [anon_sym_short] = ACTIONS(2302), [sym_primitive_type] = ACTIONS(2304), [anon_sym_enum] = ACTIONS(2306), [anon_sym_class] = ACTIONS(2308), [anon_sym_struct] = ACTIONS(2310), [anon_sym_union] = ACTIONS(2312), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2326), [sym_auto] = ACTIONS(2328), [anon_sym_typename] = ACTIONS(2330), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [844] = { [sym__declaration_modifiers] = STATE(1631), [sym__declaration_specifiers] = STATE(3714), [sym_attribute_specifier] = STATE(1631), [sym_attribute_declaration] = STATE(1631), [sym_ms_declspec_modifier] = STATE(1631), [sym_storage_class_specifier] = STATE(1631), [sym_type_qualifier] = STATE(1631), [sym__type_specifier] = STATE(3068), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym_virtual_function_specifier] = STATE(1631), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2092), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(4014), [sym_qualified_type_identifier] = STATE(2306), [aux_sym__declaration_specifiers_repeat1] = STATE(1631), [aux_sym_sized_type_specifier_repeat1] = STATE(2302), [sym_identifier] = ACTIONS(2400), [anon_sym_COMMA] = ACTIONS(2402), [anon_sym_BANG] = ACTIONS(2404), [anon_sym_TILDE] = ACTIONS(2402), [anon_sym_DASH] = ACTIONS(2404), [anon_sym_PLUS] = ACTIONS(2404), [anon_sym_STAR] = ACTIONS(2404), [anon_sym_SLASH] = ACTIONS(2404), [anon_sym_PERCENT] = ACTIONS(2404), [anon_sym_PIPE_PIPE] = ACTIONS(2402), [anon_sym_AMP_AMP] = ACTIONS(2402), [anon_sym_PIPE] = ACTIONS(2404), [anon_sym_CARET] = ACTIONS(2404), [anon_sym_AMP] = ACTIONS(2404), [anon_sym_EQ_EQ] = ACTIONS(2402), [anon_sym_BANG_EQ] = ACTIONS(2402), [anon_sym_GT] = ACTIONS(2404), [anon_sym_GT_EQ] = ACTIONS(2402), [anon_sym_LT_EQ] = ACTIONS(2402), [anon_sym_LT] = ACTIONS(2404), [anon_sym_LT_LT] = ACTIONS(2404), [anon_sym_GT_GT] = ACTIONS(2404), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(2406), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym_EQ] = ACTIONS(2404), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(2408), [anon_sym_unsigned] = ACTIONS(2408), [anon_sym_long] = ACTIONS(2408), [anon_sym_short] = ACTIONS(2408), [sym_primitive_type] = ACTIONS(111), [anon_sym_enum] = ACTIONS(2410), [anon_sym_class] = ACTIONS(2412), [anon_sym_struct] = ACTIONS(2414), [anon_sym_union] = ACTIONS(2416), [anon_sym_STAR_EQ] = ACTIONS(2402), [anon_sym_SLASH_EQ] = ACTIONS(2402), [anon_sym_PERCENT_EQ] = ACTIONS(2402), [anon_sym_PLUS_EQ] = ACTIONS(2402), [anon_sym_DASH_EQ] = ACTIONS(2402), [anon_sym_LT_LT_EQ] = ACTIONS(2402), [anon_sym_GT_GT_EQ] = ACTIONS(2402), [anon_sym_AMP_EQ] = ACTIONS(2402), [anon_sym_CARET_EQ] = ACTIONS(2402), [anon_sym_PIPE_EQ] = ACTIONS(2402), [anon_sym_DASH_DASH] = ACTIONS(2402), [anon_sym_PLUS_PLUS] = ACTIONS(2402), [anon_sym_DASH_GT] = ACTIONS(2404), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(2418), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2420), [anon_sym_co_await] = ACTIONS(2404), [anon_sym_new] = ACTIONS(2420), [anon_sym_DASH_GT_STAR] = ACTIONS(2402), [anon_sym_LPAREN_RPAREN] = ACTIONS(2402), [anon_sym_LBRACK_RBRACK] = ACTIONS(2402), [anon_sym_DQUOTE_DQUOTE] = ACTIONS(2422), }, [845] = { [sym__declaration_modifiers] = STATE(1631), [sym__declaration_specifiers] = STATE(3714), [sym_attribute_specifier] = STATE(1631), [sym_attribute_declaration] = STATE(1631), [sym_ms_declspec_modifier] = STATE(1631), [sym_storage_class_specifier] = STATE(1631), [sym_type_qualifier] = STATE(1631), [sym__type_specifier] = STATE(3068), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym_virtual_function_specifier] = STATE(1631), [sym_dependent_type] = STATE(2326), [sym_template_type] = STATE(2092), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(4014), [sym_qualified_type_identifier] = STATE(2306), [aux_sym__declaration_specifiers_repeat1] = STATE(1631), [aux_sym_sized_type_specifier_repeat1] = STATE(2302), [sym_identifier] = ACTIONS(2400), [anon_sym_COMMA] = ACTIONS(2424), [anon_sym_BANG] = ACTIONS(2426), [anon_sym_TILDE] = ACTIONS(2424), [anon_sym_DASH] = ACTIONS(2426), [anon_sym_PLUS] = ACTIONS(2426), [anon_sym_STAR] = ACTIONS(2426), [anon_sym_SLASH] = ACTIONS(2426), [anon_sym_PERCENT] = ACTIONS(2426), [anon_sym_PIPE_PIPE] = ACTIONS(2424), [anon_sym_AMP_AMP] = ACTIONS(2424), [anon_sym_PIPE] = ACTIONS(2426), [anon_sym_CARET] = ACTIONS(2426), [anon_sym_AMP] = ACTIONS(2426), [anon_sym_EQ_EQ] = ACTIONS(2424), [anon_sym_BANG_EQ] = ACTIONS(2424), [anon_sym_GT] = ACTIONS(2426), [anon_sym_GT_EQ] = ACTIONS(2424), [anon_sym_LT_EQ] = ACTIONS(2424), [anon_sym_LT] = ACTIONS(2426), [anon_sym_LT_LT] = ACTIONS(2426), [anon_sym_GT_GT] = ACTIONS(2426), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(2406), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym_EQ] = ACTIONS(2426), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(2408), [anon_sym_unsigned] = ACTIONS(2408), [anon_sym_long] = ACTIONS(2408), [anon_sym_short] = ACTIONS(2408), [sym_primitive_type] = ACTIONS(111), [anon_sym_enum] = ACTIONS(2410), [anon_sym_class] = ACTIONS(2412), [anon_sym_struct] = ACTIONS(2414), [anon_sym_union] = ACTIONS(2416), [anon_sym_STAR_EQ] = ACTIONS(2424), [anon_sym_SLASH_EQ] = ACTIONS(2424), [anon_sym_PERCENT_EQ] = ACTIONS(2424), [anon_sym_PLUS_EQ] = ACTIONS(2424), [anon_sym_DASH_EQ] = ACTIONS(2424), [anon_sym_LT_LT_EQ] = ACTIONS(2424), [anon_sym_GT_GT_EQ] = ACTIONS(2424), [anon_sym_AMP_EQ] = ACTIONS(2424), [anon_sym_CARET_EQ] = ACTIONS(2424), [anon_sym_PIPE_EQ] = ACTIONS(2424), [anon_sym_DASH_DASH] = ACTIONS(2424), [anon_sym_PLUS_PLUS] = ACTIONS(2424), [anon_sym_DASH_GT] = ACTIONS(2426), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(2418), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2428), [anon_sym_co_await] = ACTIONS(2426), [anon_sym_new] = ACTIONS(2428), [anon_sym_DASH_GT_STAR] = ACTIONS(2424), [anon_sym_LPAREN_RPAREN] = ACTIONS(2424), [anon_sym_LBRACK_RBRACK] = ACTIONS(2424), [anon_sym_DQUOTE_DQUOTE] = ACTIONS(2430), }, [846] = { [sym__expression] = STATE(2660), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(2657), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_DOT_DOT_DOT] = ACTIONS(1948), [anon_sym_COMMA] = ACTIONS(1948), [anon_sym_RPAREN] = ACTIONS(1948), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(25), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_SLASH] = ACTIONS(1956), [anon_sym_PERCENT] = ACTIONS(1948), [anon_sym_PIPE_PIPE] = ACTIONS(1948), [anon_sym_AMP_AMP] = ACTIONS(1948), [anon_sym_PIPE] = ACTIONS(1956), [anon_sym_CARET] = ACTIONS(1948), [anon_sym_AMP] = ACTIONS(925), [anon_sym_EQ_EQ] = ACTIONS(1948), [anon_sym_BANG_EQ] = ACTIONS(1948), [anon_sym_GT] = ACTIONS(1956), [anon_sym_GT_EQ] = ACTIONS(1948), [anon_sym_LT_EQ] = ACTIONS(1948), [anon_sym_LT] = ACTIONS(1956), [anon_sym_LT_LT] = ACTIONS(1948), [anon_sym_GT_GT] = ACTIONS(1948), [anon_sym_SEMI] = ACTIONS(1948), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_RBRACE] = ACTIONS(1948), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_QMARK] = ACTIONS(1948), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(1956), [anon_sym_DASH_GT] = ACTIONS(1948), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [847] = { [sym__expression] = STATE(2660), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_initializer_list] = STATE(2657), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_DOT_DOT_DOT] = ACTIONS(1948), [anon_sym_COMMA] = ACTIONS(1948), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2438), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_SLASH] = ACTIONS(1956), [anon_sym_PERCENT] = ACTIONS(1948), [anon_sym_PIPE_PIPE] = ACTIONS(1948), [anon_sym_AMP_AMP] = ACTIONS(1948), [anon_sym_PIPE] = ACTIONS(1956), [anon_sym_CARET] = ACTIONS(1948), [anon_sym_AMP] = ACTIONS(925), [anon_sym_EQ_EQ] = ACTIONS(1948), [anon_sym_BANG_EQ] = ACTIONS(1948), [anon_sym_GT] = ACTIONS(1956), [anon_sym_GT_EQ] = ACTIONS(1948), [anon_sym_LT_EQ] = ACTIONS(1948), [anon_sym_LT] = ACTIONS(1956), [anon_sym_LT_LT] = ACTIONS(1948), [anon_sym_GT_GT] = ACTIONS(1948), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(1948), [sym_primitive_type] = ACTIONS(1728), [anon_sym_QMARK] = ACTIONS(1948), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [anon_sym_DOT] = ACTIONS(1956), [anon_sym_DASH_GT] = ACTIONS(1948), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [848] = { [sym__expression] = STATE(2855), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_initializer_list] = STATE(3106), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_DOT_DOT_DOT] = ACTIONS(1948), [anon_sym_COMMA] = ACTIONS(1948), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2296), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_SLASH] = ACTIONS(1956), [anon_sym_PERCENT] = ACTIONS(1948), [anon_sym_PIPE_PIPE] = ACTIONS(1948), [anon_sym_AMP_AMP] = ACTIONS(1948), [anon_sym_PIPE] = ACTIONS(1956), [anon_sym_CARET] = ACTIONS(1948), [anon_sym_AMP] = ACTIONS(2242), [anon_sym_EQ_EQ] = ACTIONS(1948), [anon_sym_BANG_EQ] = ACTIONS(1948), [anon_sym_GT] = ACTIONS(1956), [anon_sym_GT_EQ] = ACTIONS(1956), [anon_sym_LT_EQ] = ACTIONS(1948), [anon_sym_LT] = ACTIONS(1956), [anon_sym_LT_LT] = ACTIONS(1948), [anon_sym_GT_GT] = ACTIONS(1956), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACE] = ACTIONS(2456), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_QMARK] = ACTIONS(1948), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [anon_sym_DOT] = ACTIONS(1956), [anon_sym_DASH_GT] = ACTIONS(1948), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_GT2] = ACTIONS(1948), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [849] = { [sym__expression] = STATE(3102), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_initializer_list] = STATE(2657), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_DOT_DOT_DOT] = ACTIONS(1948), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2462), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_SLASH] = ACTIONS(1956), [anon_sym_PERCENT] = ACTIONS(1948), [anon_sym_PIPE_PIPE] = ACTIONS(1948), [anon_sym_AMP_AMP] = ACTIONS(1948), [anon_sym_PIPE] = ACTIONS(1956), [anon_sym_CARET] = ACTIONS(1948), [anon_sym_AMP] = ACTIONS(2276), [anon_sym_EQ_EQ] = ACTIONS(1948), [anon_sym_BANG_EQ] = ACTIONS(1948), [anon_sym_GT] = ACTIONS(1956), [anon_sym_GT_EQ] = ACTIONS(1948), [anon_sym_LT_EQ] = ACTIONS(1948), [anon_sym_LT] = ACTIONS(1956), [anon_sym_LT_LT] = ACTIONS(1948), [anon_sym_GT_GT] = ACTIONS(1948), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_COLON] = ACTIONS(1956), [anon_sym_QMARK] = ACTIONS(1948), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [anon_sym_DOT] = ACTIONS(1956), [anon_sym_DASH_GT] = ACTIONS(1948), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [850] = { [sym__declaration_modifiers] = STATE(1629), [sym__declaration_specifiers] = STATE(2000), [sym_attribute_specifier] = STATE(1629), [sym_attribute_declaration] = STATE(1629), [sym_ms_declspec_modifier] = STATE(1629), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4022), [sym__abstract_declarator] = STATE(4341), [sym_parenthesized_declarator] = STATE(3782), [sym_abstract_parenthesized_declarator] = STATE(3890), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_abstract_pointer_declarator] = STATE(3890), [sym_function_declarator] = STATE(3782), [sym_abstract_function_declarator] = STATE(3890), [sym_array_declarator] = STATE(3782), [sym_abstract_array_declarator] = STATE(3890), [sym_storage_class_specifier] = STATE(1629), [sym_type_qualifier] = STATE(1629), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_parameter_list] = STATE(3264), [sym_parameter_declaration] = STATE(4522), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym_virtual_function_specifier] = STATE(1629), [sym_dependent_type] = STATE(2326), [sym_optional_parameter_declaration] = STATE(4522), [sym_variadic_parameter_declaration] = STATE(4522), [sym_reference_declarator] = STATE(3782), [sym_abstract_reference_declarator] = STATE(3890), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2092), [sym_template_function] = STATE(3782), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3644), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2306), [sym_operator_name] = STATE(3782), [aux_sym__declaration_specifiers_repeat1] = STATE(1629), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [sym_identifier] = ACTIONS(2480), [anon_sym_DOT_DOT_DOT] = ACTIONS(2482), [anon_sym_RPAREN] = ACTIONS(2484), [anon_sym_LPAREN2] = ACTIONS(2486), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(2488), [anon_sym_AMP_AMP] = ACTIONS(2490), [anon_sym_AMP] = ACTIONS(2492), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(2494), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(2496), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(111), [anon_sym_enum] = ACTIONS(1353), [anon_sym_class] = ACTIONS(1355), [anon_sym_struct] = ACTIONS(1357), [anon_sym_union] = ACTIONS(1359), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(1361), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(1724), }, [851] = { [sym_identifier] = ACTIONS(2498), [anon_sym_LPAREN2] = ACTIONS(2501), [anon_sym_BANG] = ACTIONS(2504), [anon_sym_TILDE] = ACTIONS(2501), [anon_sym_DASH] = ACTIONS(2506), [anon_sym_PLUS] = ACTIONS(2506), [anon_sym_STAR] = ACTIONS(2501), [anon_sym_AMP_AMP] = ACTIONS(2508), [anon_sym_AMP] = ACTIONS(2498), [anon_sym_SEMI] = ACTIONS(2504), [anon_sym_extern] = ACTIONS(2510), [anon_sym___attribute__] = ACTIONS(2510), [anon_sym_COLON_COLON] = ACTIONS(2501), [anon_sym_LBRACK_LBRACK] = ACTIONS(2501), [anon_sym___declspec] = ACTIONS(2510), [anon_sym___based] = ACTIONS(2510), [anon_sym_LBRACE] = ACTIONS(2504), [anon_sym_LBRACK] = ACTIONS(2498), [anon_sym_static] = ACTIONS(2510), [anon_sym_register] = ACTIONS(2510), [anon_sym_inline] = ACTIONS(2510), [anon_sym_thread_local] = ACTIONS(2510), [anon_sym_const] = ACTIONS(2510), [anon_sym_volatile] = ACTIONS(2510), [anon_sym_restrict] = ACTIONS(2510), [anon_sym__Atomic] = ACTIONS(2510), [anon_sym_mutable] = ACTIONS(2510), [anon_sym_constexpr] = ACTIONS(2510), [anon_sym_signed] = ACTIONS(2510), [anon_sym_unsigned] = ACTIONS(2510), [anon_sym_long] = ACTIONS(2510), [anon_sym_short] = ACTIONS(2510), [sym_primitive_type] = ACTIONS(2498), [anon_sym_enum] = ACTIONS(2510), [anon_sym_class] = ACTIONS(2510), [anon_sym_struct] = ACTIONS(2510), [anon_sym_union] = ACTIONS(2510), [anon_sym_if] = ACTIONS(2506), [anon_sym_switch] = ACTIONS(2506), [anon_sym_case] = ACTIONS(2506), [anon_sym_default] = ACTIONS(2506), [anon_sym_while] = ACTIONS(2506), [anon_sym_do] = ACTIONS(2506), [anon_sym_for] = ACTIONS(2506), [anon_sym_return] = ACTIONS(2506), [anon_sym_break] = ACTIONS(2506), [anon_sym_continue] = ACTIONS(2506), [anon_sym_goto] = ACTIONS(2506), [anon_sym_DASH_DASH] = ACTIONS(2504), [anon_sym_PLUS_PLUS] = ACTIONS(2504), [anon_sym_sizeof] = ACTIONS(2506), [sym_number_literal] = ACTIONS(2504), [anon_sym_L_SQUOTE] = ACTIONS(2504), [anon_sym_u_SQUOTE] = ACTIONS(2504), [anon_sym_U_SQUOTE] = ACTIONS(2504), [anon_sym_u8_SQUOTE] = ACTIONS(2504), [anon_sym_SQUOTE] = ACTIONS(2504), [anon_sym_L_DQUOTE] = ACTIONS(2504), [anon_sym_u_DQUOTE] = ACTIONS(2504), [anon_sym_U_DQUOTE] = ACTIONS(2504), [anon_sym_u8_DQUOTE] = ACTIONS(2504), [anon_sym_DQUOTE] = ACTIONS(2504), [sym_true] = ACTIONS(2506), [sym_false] = ACTIONS(2506), [sym_null] = ACTIONS(2506), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2510), [anon_sym_virtual] = ACTIONS(2510), [anon_sym_explicit] = ACTIONS(2510), [sym_auto] = ACTIONS(2510), [anon_sym_typename] = ACTIONS(2510), [anon_sym_template] = ACTIONS(2498), [anon_sym_operator] = ACTIONS(2510), [anon_sym_delete] = ACTIONS(2506), [anon_sym_throw] = ACTIONS(2506), [anon_sym_co_return] = ACTIONS(2506), [anon_sym_co_yield] = ACTIONS(2506), [anon_sym_try] = ACTIONS(2506), [anon_sym_co_await] = ACTIONS(2506), [anon_sym_new] = ACTIONS(2506), [sym_this] = ACTIONS(2506), [sym_nullptr] = ACTIONS(2506), [sym_raw_string_literal] = ACTIONS(2504), }, [852] = { [sym_identifier] = ACTIONS(2512), [anon_sym_LPAREN2] = ACTIONS(2514), [anon_sym_BANG] = ACTIONS(2514), [anon_sym_TILDE] = ACTIONS(2514), [anon_sym_DASH] = ACTIONS(2512), [anon_sym_PLUS] = ACTIONS(2512), [anon_sym_STAR] = ACTIONS(2514), [anon_sym_AMP_AMP] = ACTIONS(2514), [anon_sym_AMP] = ACTIONS(2512), [anon_sym_SEMI] = ACTIONS(2514), [anon_sym_extern] = ACTIONS(2512), [anon_sym___attribute__] = ACTIONS(2512), [anon_sym_COLON_COLON] = ACTIONS(2514), [anon_sym_LBRACK_LBRACK] = ACTIONS(2514), [anon_sym___declspec] = ACTIONS(2512), [anon_sym___based] = ACTIONS(2512), [anon_sym_LBRACE] = ACTIONS(2514), [anon_sym_LBRACK] = ACTIONS(2512), [anon_sym_static] = ACTIONS(2512), [anon_sym_register] = ACTIONS(2512), [anon_sym_inline] = ACTIONS(2512), [anon_sym_thread_local] = ACTIONS(2512), [anon_sym_const] = ACTIONS(2512), [anon_sym_volatile] = ACTIONS(2512), [anon_sym_restrict] = ACTIONS(2512), [anon_sym__Atomic] = ACTIONS(2512), [anon_sym_mutable] = ACTIONS(2512), [anon_sym_constexpr] = ACTIONS(2512), [anon_sym_signed] = ACTIONS(2512), [anon_sym_unsigned] = ACTIONS(2512), [anon_sym_long] = ACTIONS(2512), [anon_sym_short] = ACTIONS(2512), [sym_primitive_type] = ACTIONS(2512), [anon_sym_enum] = ACTIONS(2512), [anon_sym_class] = ACTIONS(2512), [anon_sym_struct] = ACTIONS(2512), [anon_sym_union] = ACTIONS(2512), [anon_sym_if] = ACTIONS(2512), [anon_sym_switch] = ACTIONS(2512), [anon_sym_case] = ACTIONS(2512), [anon_sym_default] = ACTIONS(2512), [anon_sym_while] = ACTIONS(2512), [anon_sym_do] = ACTIONS(2512), [anon_sym_for] = ACTIONS(2512), [anon_sym_return] = ACTIONS(2512), [anon_sym_break] = ACTIONS(2512), [anon_sym_continue] = ACTIONS(2512), [anon_sym_goto] = ACTIONS(2512), [anon_sym_DASH_DASH] = ACTIONS(2514), [anon_sym_PLUS_PLUS] = ACTIONS(2514), [anon_sym_sizeof] = ACTIONS(2512), [sym_number_literal] = ACTIONS(2514), [anon_sym_L_SQUOTE] = ACTIONS(2514), [anon_sym_u_SQUOTE] = ACTIONS(2514), [anon_sym_U_SQUOTE] = ACTIONS(2514), [anon_sym_u8_SQUOTE] = ACTIONS(2514), [anon_sym_SQUOTE] = ACTIONS(2514), [anon_sym_L_DQUOTE] = ACTIONS(2514), [anon_sym_u_DQUOTE] = ACTIONS(2514), [anon_sym_U_DQUOTE] = ACTIONS(2514), [anon_sym_u8_DQUOTE] = ACTIONS(2514), [anon_sym_DQUOTE] = ACTIONS(2514), [sym_true] = ACTIONS(2512), [sym_false] = ACTIONS(2512), [sym_null] = ACTIONS(2512), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2512), [anon_sym_virtual] = ACTIONS(2512), [anon_sym_explicit] = ACTIONS(2512), [sym_auto] = ACTIONS(2512), [anon_sym_typename] = ACTIONS(2512), [anon_sym_template] = ACTIONS(2512), [anon_sym_operator] = ACTIONS(2512), [anon_sym_delete] = ACTIONS(2512), [anon_sym_throw] = ACTIONS(2512), [anon_sym_co_return] = ACTIONS(2512), [anon_sym_co_yield] = ACTIONS(2512), [anon_sym_try] = ACTIONS(2512), [anon_sym_co_await] = ACTIONS(2512), [anon_sym_new] = ACTIONS(2512), [sym_this] = ACTIONS(2512), [sym_nullptr] = ACTIONS(2512), [sym_raw_string_literal] = ACTIONS(2514), }, [853] = { [sym_identifier] = ACTIONS(2516), [anon_sym_LPAREN2] = ACTIONS(2518), [anon_sym_BANG] = ACTIONS(2518), [anon_sym_TILDE] = ACTIONS(2518), [anon_sym_DASH] = ACTIONS(2516), [anon_sym_PLUS] = ACTIONS(2516), [anon_sym_STAR] = ACTIONS(2518), [anon_sym_AMP_AMP] = ACTIONS(2518), [anon_sym_AMP] = ACTIONS(2516), [anon_sym_SEMI] = ACTIONS(2518), [anon_sym_extern] = ACTIONS(2516), [anon_sym___attribute__] = ACTIONS(2516), [anon_sym_COLON_COLON] = ACTIONS(2518), [anon_sym_LBRACK_LBRACK] = ACTIONS(2518), [anon_sym___declspec] = ACTIONS(2516), [anon_sym___based] = ACTIONS(2516), [anon_sym_LBRACE] = ACTIONS(2518), [anon_sym_LBRACK] = ACTIONS(2516), [anon_sym_static] = ACTIONS(2516), [anon_sym_register] = ACTIONS(2516), [anon_sym_inline] = ACTIONS(2516), [anon_sym_thread_local] = ACTIONS(2516), [anon_sym_const] = ACTIONS(2516), [anon_sym_volatile] = ACTIONS(2516), [anon_sym_restrict] = ACTIONS(2516), [anon_sym__Atomic] = ACTIONS(2516), [anon_sym_mutable] = ACTIONS(2516), [anon_sym_constexpr] = ACTIONS(2516), [anon_sym_signed] = ACTIONS(2516), [anon_sym_unsigned] = ACTIONS(2516), [anon_sym_long] = ACTIONS(2516), [anon_sym_short] = ACTIONS(2516), [sym_primitive_type] = ACTIONS(2516), [anon_sym_enum] = ACTIONS(2516), [anon_sym_class] = ACTIONS(2516), [anon_sym_struct] = ACTIONS(2516), [anon_sym_union] = ACTIONS(2516), [anon_sym_if] = ACTIONS(2516), [anon_sym_switch] = ACTIONS(2516), [anon_sym_case] = ACTIONS(2516), [anon_sym_default] = ACTIONS(2516), [anon_sym_while] = ACTIONS(2516), [anon_sym_do] = ACTIONS(2516), [anon_sym_for] = ACTIONS(2516), [anon_sym_return] = ACTIONS(2516), [anon_sym_break] = ACTIONS(2516), [anon_sym_continue] = ACTIONS(2516), [anon_sym_goto] = ACTIONS(2516), [anon_sym_DASH_DASH] = ACTIONS(2518), [anon_sym_PLUS_PLUS] = ACTIONS(2518), [anon_sym_sizeof] = ACTIONS(2516), [sym_number_literal] = ACTIONS(2518), [anon_sym_L_SQUOTE] = ACTIONS(2518), [anon_sym_u_SQUOTE] = ACTIONS(2518), [anon_sym_U_SQUOTE] = ACTIONS(2518), [anon_sym_u8_SQUOTE] = ACTIONS(2518), [anon_sym_SQUOTE] = ACTIONS(2518), [anon_sym_L_DQUOTE] = ACTIONS(2518), [anon_sym_u_DQUOTE] = ACTIONS(2518), [anon_sym_U_DQUOTE] = ACTIONS(2518), [anon_sym_u8_DQUOTE] = ACTIONS(2518), [anon_sym_DQUOTE] = ACTIONS(2518), [sym_true] = ACTIONS(2516), [sym_false] = ACTIONS(2516), [sym_null] = ACTIONS(2516), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2516), [anon_sym_virtual] = ACTIONS(2516), [anon_sym_explicit] = ACTIONS(2516), [sym_auto] = ACTIONS(2516), [anon_sym_typename] = ACTIONS(2516), [anon_sym_template] = ACTIONS(2516), [anon_sym_operator] = ACTIONS(2516), [anon_sym_delete] = ACTIONS(2516), [anon_sym_throw] = ACTIONS(2516), [anon_sym_co_return] = ACTIONS(2516), [anon_sym_co_yield] = ACTIONS(2516), [anon_sym_try] = ACTIONS(2516), [anon_sym_co_await] = ACTIONS(2516), [anon_sym_new] = ACTIONS(2516), [sym_this] = ACTIONS(2516), [sym_nullptr] = ACTIONS(2516), [sym_raw_string_literal] = ACTIONS(2518), }, [854] = { [sym_catch_clause] = STATE(855), [aux_sym_try_statement_repeat1] = STATE(855), [sym_identifier] = ACTIONS(1730), [anon_sym_LPAREN2] = ACTIONS(1732), [anon_sym_BANG] = ACTIONS(1732), [anon_sym_TILDE] = ACTIONS(1732), [anon_sym_DASH] = ACTIONS(1730), [anon_sym_PLUS] = ACTIONS(1730), [anon_sym_STAR] = ACTIONS(1732), [anon_sym_AMP] = ACTIONS(1732), [anon_sym_SEMI] = ACTIONS(1732), [anon_sym_typedef] = ACTIONS(1730), [anon_sym_extern] = ACTIONS(1730), [anon_sym___attribute__] = ACTIONS(1730), [anon_sym_COLON_COLON] = ACTIONS(1732), [anon_sym_LBRACK_LBRACK] = ACTIONS(1732), [anon_sym___declspec] = ACTIONS(1730), [anon_sym_LBRACE] = ACTIONS(1732), [anon_sym_LBRACK] = ACTIONS(1730), [anon_sym_static] = ACTIONS(1730), [anon_sym_register] = ACTIONS(1730), [anon_sym_inline] = ACTIONS(1730), [anon_sym_thread_local] = ACTIONS(1730), [anon_sym_const] = ACTIONS(1730), [anon_sym_volatile] = ACTIONS(1730), [anon_sym_restrict] = ACTIONS(1730), [anon_sym__Atomic] = ACTIONS(1730), [anon_sym_mutable] = ACTIONS(1730), [anon_sym_constexpr] = ACTIONS(1730), [anon_sym_signed] = ACTIONS(1730), [anon_sym_unsigned] = ACTIONS(1730), [anon_sym_long] = ACTIONS(1730), [anon_sym_short] = ACTIONS(1730), [sym_primitive_type] = ACTIONS(1730), [anon_sym_enum] = ACTIONS(1730), [anon_sym_class] = ACTIONS(1730), [anon_sym_struct] = ACTIONS(1730), [anon_sym_union] = ACTIONS(1730), [anon_sym_if] = ACTIONS(1730), [anon_sym_else] = ACTIONS(1730), [anon_sym_switch] = ACTIONS(1730), [anon_sym_while] = ACTIONS(1730), [anon_sym_do] = ACTIONS(1730), [anon_sym_for] = ACTIONS(1730), [anon_sym_return] = ACTIONS(1730), [anon_sym_break] = ACTIONS(1730), [anon_sym_continue] = ACTIONS(1730), [anon_sym_goto] = ACTIONS(1730), [anon_sym_DASH_DASH] = ACTIONS(1732), [anon_sym_PLUS_PLUS] = ACTIONS(1732), [anon_sym_sizeof] = ACTIONS(1730), [sym_number_literal] = ACTIONS(1732), [anon_sym_L_SQUOTE] = ACTIONS(1732), [anon_sym_u_SQUOTE] = ACTIONS(1732), [anon_sym_U_SQUOTE] = ACTIONS(1732), [anon_sym_u8_SQUOTE] = ACTIONS(1732), [anon_sym_SQUOTE] = ACTIONS(1732), [anon_sym_L_DQUOTE] = ACTIONS(1732), [anon_sym_u_DQUOTE] = ACTIONS(1732), [anon_sym_U_DQUOTE] = ACTIONS(1732), [anon_sym_u8_DQUOTE] = ACTIONS(1732), [anon_sym_DQUOTE] = ACTIONS(1732), [sym_true] = ACTIONS(1730), [sym_false] = ACTIONS(1730), [sym_null] = ACTIONS(1730), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1730), [anon_sym_virtual] = ACTIONS(1730), [sym_auto] = ACTIONS(1730), [anon_sym_typename] = ACTIONS(1730), [anon_sym_template] = ACTIONS(1730), [anon_sym_delete] = ACTIONS(1730), [anon_sym_throw] = ACTIONS(1730), [anon_sym_co_return] = ACTIONS(1730), [anon_sym_co_yield] = ACTIONS(1730), [anon_sym_try] = ACTIONS(1730), [anon_sym_catch] = ACTIONS(2520), [anon_sym_co_await] = ACTIONS(1730), [anon_sym_new] = ACTIONS(1730), [sym_this] = ACTIONS(1730), [sym_nullptr] = ACTIONS(1730), [sym_raw_string_literal] = ACTIONS(1732), }, [855] = { [sym_catch_clause] = STATE(855), [aux_sym_try_statement_repeat1] = STATE(855), [sym_identifier] = ACTIONS(1736), [anon_sym_LPAREN2] = ACTIONS(1738), [anon_sym_BANG] = ACTIONS(1738), [anon_sym_TILDE] = ACTIONS(1738), [anon_sym_DASH] = ACTIONS(1736), [anon_sym_PLUS] = ACTIONS(1736), [anon_sym_STAR] = ACTIONS(1738), [anon_sym_AMP] = ACTIONS(1738), [anon_sym_SEMI] = ACTIONS(1738), [anon_sym_typedef] = ACTIONS(1736), [anon_sym_extern] = ACTIONS(1736), [anon_sym___attribute__] = ACTIONS(1736), [anon_sym_COLON_COLON] = ACTIONS(1738), [anon_sym_LBRACK_LBRACK] = ACTIONS(1738), [anon_sym___declspec] = ACTIONS(1736), [anon_sym_LBRACE] = ACTIONS(1738), [anon_sym_LBRACK] = ACTIONS(1736), [anon_sym_static] = ACTIONS(1736), [anon_sym_register] = ACTIONS(1736), [anon_sym_inline] = ACTIONS(1736), [anon_sym_thread_local] = ACTIONS(1736), [anon_sym_const] = ACTIONS(1736), [anon_sym_volatile] = ACTIONS(1736), [anon_sym_restrict] = ACTIONS(1736), [anon_sym__Atomic] = ACTIONS(1736), [anon_sym_mutable] = ACTIONS(1736), [anon_sym_constexpr] = ACTIONS(1736), [anon_sym_signed] = ACTIONS(1736), [anon_sym_unsigned] = ACTIONS(1736), [anon_sym_long] = ACTIONS(1736), [anon_sym_short] = ACTIONS(1736), [sym_primitive_type] = ACTIONS(1736), [anon_sym_enum] = ACTIONS(1736), [anon_sym_class] = ACTIONS(1736), [anon_sym_struct] = ACTIONS(1736), [anon_sym_union] = ACTIONS(1736), [anon_sym_if] = ACTIONS(1736), [anon_sym_else] = ACTIONS(1736), [anon_sym_switch] = ACTIONS(1736), [anon_sym_while] = ACTIONS(1736), [anon_sym_do] = ACTIONS(1736), [anon_sym_for] = ACTIONS(1736), [anon_sym_return] = ACTIONS(1736), [anon_sym_break] = ACTIONS(1736), [anon_sym_continue] = ACTIONS(1736), [anon_sym_goto] = ACTIONS(1736), [anon_sym_DASH_DASH] = ACTIONS(1738), [anon_sym_PLUS_PLUS] = ACTIONS(1738), [anon_sym_sizeof] = ACTIONS(1736), [sym_number_literal] = ACTIONS(1738), [anon_sym_L_SQUOTE] = ACTIONS(1738), [anon_sym_u_SQUOTE] = ACTIONS(1738), [anon_sym_U_SQUOTE] = ACTIONS(1738), [anon_sym_u8_SQUOTE] = ACTIONS(1738), [anon_sym_SQUOTE] = ACTIONS(1738), [anon_sym_L_DQUOTE] = ACTIONS(1738), [anon_sym_u_DQUOTE] = ACTIONS(1738), [anon_sym_U_DQUOTE] = ACTIONS(1738), [anon_sym_u8_DQUOTE] = ACTIONS(1738), [anon_sym_DQUOTE] = ACTIONS(1738), [sym_true] = ACTIONS(1736), [sym_false] = ACTIONS(1736), [sym_null] = ACTIONS(1736), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1736), [anon_sym_virtual] = ACTIONS(1736), [sym_auto] = ACTIONS(1736), [anon_sym_typename] = ACTIONS(1736), [anon_sym_template] = ACTIONS(1736), [anon_sym_delete] = ACTIONS(1736), [anon_sym_throw] = ACTIONS(1736), [anon_sym_co_return] = ACTIONS(1736), [anon_sym_co_yield] = ACTIONS(1736), [anon_sym_try] = ACTIONS(1736), [anon_sym_catch] = ACTIONS(2522), [anon_sym_co_await] = ACTIONS(1736), [anon_sym_new] = ACTIONS(1736), [sym_this] = ACTIONS(1736), [sym_nullptr] = ACTIONS(1736), [sym_raw_string_literal] = ACTIONS(1738), }, [856] = { [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(3929), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3782), [sym_array_declarator] = STATE(3782), [sym__expression] = STATE(1874), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1924), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3626), [sym_qualified_identifier] = STATE(1939), [sym_qualified_type_identifier] = STATE(4738), [sym_operator_name] = STATE(3782), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(2384), [anon_sym_LPAREN2] = ACTIONS(2386), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(2388), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(27), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(31), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1704), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(1724), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [857] = { [sym_identifier] = ACTIONS(1763), [anon_sym_LPAREN2] = ACTIONS(1765), [anon_sym_BANG] = ACTIONS(1765), [anon_sym_TILDE] = ACTIONS(1765), [anon_sym_DASH] = ACTIONS(1763), [anon_sym_PLUS] = ACTIONS(1763), [anon_sym_STAR] = ACTIONS(1765), [anon_sym_AMP] = ACTIONS(1765), [anon_sym_SEMI] = ACTIONS(1765), [anon_sym_typedef] = ACTIONS(1763), [anon_sym_extern] = ACTIONS(1763), [anon_sym___attribute__] = ACTIONS(1763), [anon_sym_COLON_COLON] = ACTIONS(1765), [anon_sym_LBRACK_LBRACK] = ACTIONS(1765), [anon_sym___declspec] = ACTIONS(1763), [anon_sym_LBRACE] = ACTIONS(1765), [anon_sym_LBRACK] = ACTIONS(1763), [anon_sym_static] = ACTIONS(1763), [anon_sym_register] = ACTIONS(1763), [anon_sym_inline] = ACTIONS(1763), [anon_sym_thread_local] = ACTIONS(1763), [anon_sym_const] = ACTIONS(1763), [anon_sym_volatile] = ACTIONS(1763), [anon_sym_restrict] = ACTIONS(1763), [anon_sym__Atomic] = ACTIONS(1763), [anon_sym_mutable] = ACTIONS(1763), [anon_sym_constexpr] = ACTIONS(1763), [anon_sym_signed] = ACTIONS(1763), [anon_sym_unsigned] = ACTIONS(1763), [anon_sym_long] = ACTIONS(1763), [anon_sym_short] = ACTIONS(1763), [sym_primitive_type] = ACTIONS(1763), [anon_sym_enum] = ACTIONS(1763), [anon_sym_class] = ACTIONS(1763), [anon_sym_struct] = ACTIONS(1763), [anon_sym_union] = ACTIONS(1763), [anon_sym_if] = ACTIONS(1763), [anon_sym_else] = ACTIONS(1763), [anon_sym_switch] = ACTIONS(1763), [anon_sym_while] = ACTIONS(1763), [anon_sym_do] = ACTIONS(1763), [anon_sym_for] = ACTIONS(1763), [anon_sym_return] = ACTIONS(1763), [anon_sym_break] = ACTIONS(1763), [anon_sym_continue] = ACTIONS(1763), [anon_sym_goto] = ACTIONS(1763), [anon_sym_DASH_DASH] = ACTIONS(1765), [anon_sym_PLUS_PLUS] = ACTIONS(1765), [anon_sym_sizeof] = ACTIONS(1763), [sym_number_literal] = ACTIONS(1765), [anon_sym_L_SQUOTE] = ACTIONS(1765), [anon_sym_u_SQUOTE] = ACTIONS(1765), [anon_sym_U_SQUOTE] = ACTIONS(1765), [anon_sym_u8_SQUOTE] = ACTIONS(1765), [anon_sym_SQUOTE] = ACTIONS(1765), [anon_sym_L_DQUOTE] = ACTIONS(1765), [anon_sym_u_DQUOTE] = ACTIONS(1765), [anon_sym_U_DQUOTE] = ACTIONS(1765), [anon_sym_u8_DQUOTE] = ACTIONS(1765), [anon_sym_DQUOTE] = ACTIONS(1765), [sym_true] = ACTIONS(1763), [sym_false] = ACTIONS(1763), [sym_null] = ACTIONS(1763), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1763), [anon_sym_virtual] = ACTIONS(1763), [sym_auto] = ACTIONS(1763), [anon_sym_typename] = ACTIONS(1763), [anon_sym_template] = ACTIONS(1763), [anon_sym_delete] = ACTIONS(1763), [anon_sym_throw] = ACTIONS(1763), [anon_sym_co_return] = ACTIONS(1763), [anon_sym_co_yield] = ACTIONS(1763), [anon_sym_try] = ACTIONS(1763), [anon_sym_catch] = ACTIONS(1763), [anon_sym_co_await] = ACTIONS(1763), [anon_sym_new] = ACTIONS(1763), [sym_this] = ACTIONS(1763), [sym_nullptr] = ACTIONS(1763), [sym_raw_string_literal] = ACTIONS(1765), }, [858] = { [sym_identifier] = ACTIONS(1756), [anon_sym_LPAREN2] = ACTIONS(1758), [anon_sym_BANG] = ACTIONS(1758), [anon_sym_TILDE] = ACTIONS(1758), [anon_sym_DASH] = ACTIONS(1756), [anon_sym_PLUS] = ACTIONS(1756), [anon_sym_STAR] = ACTIONS(1758), [anon_sym_AMP] = ACTIONS(1758), [anon_sym_SEMI] = ACTIONS(1758), [anon_sym_typedef] = ACTIONS(1756), [anon_sym_extern] = ACTIONS(1756), [anon_sym___attribute__] = ACTIONS(1756), [anon_sym_COLON_COLON] = ACTIONS(1758), [anon_sym_LBRACK_LBRACK] = ACTIONS(1758), [anon_sym___declspec] = ACTIONS(1756), [anon_sym_LBRACE] = ACTIONS(1758), [anon_sym_LBRACK] = ACTIONS(1756), [anon_sym_static] = ACTIONS(1756), [anon_sym_register] = ACTIONS(1756), [anon_sym_inline] = ACTIONS(1756), [anon_sym_thread_local] = ACTIONS(1756), [anon_sym_const] = ACTIONS(1756), [anon_sym_volatile] = ACTIONS(1756), [anon_sym_restrict] = ACTIONS(1756), [anon_sym__Atomic] = ACTIONS(1756), [anon_sym_mutable] = ACTIONS(1756), [anon_sym_constexpr] = ACTIONS(1756), [anon_sym_signed] = ACTIONS(1756), [anon_sym_unsigned] = ACTIONS(1756), [anon_sym_long] = ACTIONS(1756), [anon_sym_short] = ACTIONS(1756), [sym_primitive_type] = ACTIONS(1756), [anon_sym_enum] = ACTIONS(1756), [anon_sym_class] = ACTIONS(1756), [anon_sym_struct] = ACTIONS(1756), [anon_sym_union] = ACTIONS(1756), [anon_sym_if] = ACTIONS(1756), [anon_sym_else] = ACTIONS(1756), [anon_sym_switch] = ACTIONS(1756), [anon_sym_while] = ACTIONS(1756), [anon_sym_do] = ACTIONS(1756), [anon_sym_for] = ACTIONS(1756), [anon_sym_return] = ACTIONS(1756), [anon_sym_break] = ACTIONS(1756), [anon_sym_continue] = ACTIONS(1756), [anon_sym_goto] = ACTIONS(1756), [anon_sym_DASH_DASH] = ACTIONS(1758), [anon_sym_PLUS_PLUS] = ACTIONS(1758), [anon_sym_sizeof] = ACTIONS(1756), [sym_number_literal] = ACTIONS(1758), [anon_sym_L_SQUOTE] = ACTIONS(1758), [anon_sym_u_SQUOTE] = ACTIONS(1758), [anon_sym_U_SQUOTE] = ACTIONS(1758), [anon_sym_u8_SQUOTE] = ACTIONS(1758), [anon_sym_SQUOTE] = ACTIONS(1758), [anon_sym_L_DQUOTE] = ACTIONS(1758), [anon_sym_u_DQUOTE] = ACTIONS(1758), [anon_sym_U_DQUOTE] = ACTIONS(1758), [anon_sym_u8_DQUOTE] = ACTIONS(1758), [anon_sym_DQUOTE] = ACTIONS(1758), [sym_true] = ACTIONS(1756), [sym_false] = ACTIONS(1756), [sym_null] = ACTIONS(1756), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1756), [anon_sym_virtual] = ACTIONS(1756), [sym_auto] = ACTIONS(1756), [anon_sym_typename] = ACTIONS(1756), [anon_sym_template] = ACTIONS(1756), [anon_sym_delete] = ACTIONS(1756), [anon_sym_throw] = ACTIONS(1756), [anon_sym_co_return] = ACTIONS(1756), [anon_sym_co_yield] = ACTIONS(1756), [anon_sym_try] = ACTIONS(1756), [anon_sym_catch] = ACTIONS(1756), [anon_sym_co_await] = ACTIONS(1756), [anon_sym_new] = ACTIONS(1756), [sym_this] = ACTIONS(1756), [sym_nullptr] = ACTIONS(1756), [sym_raw_string_literal] = ACTIONS(1758), }, [859] = { [sym_identifier] = ACTIONS(1749), [anon_sym_LPAREN2] = ACTIONS(1751), [anon_sym_BANG] = ACTIONS(1751), [anon_sym_TILDE] = ACTIONS(1751), [anon_sym_DASH] = ACTIONS(1749), [anon_sym_PLUS] = ACTIONS(1749), [anon_sym_STAR] = ACTIONS(1751), [anon_sym_AMP] = ACTIONS(1751), [anon_sym_SEMI] = ACTIONS(1751), [anon_sym_typedef] = ACTIONS(1749), [anon_sym_extern] = ACTIONS(1749), [anon_sym___attribute__] = ACTIONS(1749), [anon_sym_COLON_COLON] = ACTIONS(1751), [anon_sym_LBRACK_LBRACK] = ACTIONS(1751), [anon_sym___declspec] = ACTIONS(1749), [anon_sym_LBRACE] = ACTIONS(1751), [anon_sym_LBRACK] = ACTIONS(1749), [anon_sym_static] = ACTIONS(1749), [anon_sym_register] = ACTIONS(1749), [anon_sym_inline] = ACTIONS(1749), [anon_sym_thread_local] = ACTIONS(1749), [anon_sym_const] = ACTIONS(1749), [anon_sym_volatile] = ACTIONS(1749), [anon_sym_restrict] = ACTIONS(1749), [anon_sym__Atomic] = ACTIONS(1749), [anon_sym_mutable] = ACTIONS(1749), [anon_sym_constexpr] = ACTIONS(1749), [anon_sym_signed] = ACTIONS(1749), [anon_sym_unsigned] = ACTIONS(1749), [anon_sym_long] = ACTIONS(1749), [anon_sym_short] = ACTIONS(1749), [sym_primitive_type] = ACTIONS(1749), [anon_sym_enum] = ACTIONS(1749), [anon_sym_class] = ACTIONS(1749), [anon_sym_struct] = ACTIONS(1749), [anon_sym_union] = ACTIONS(1749), [anon_sym_if] = ACTIONS(1749), [anon_sym_else] = ACTIONS(1749), [anon_sym_switch] = ACTIONS(1749), [anon_sym_while] = ACTIONS(1749), [anon_sym_do] = ACTIONS(1749), [anon_sym_for] = ACTIONS(1749), [anon_sym_return] = ACTIONS(1749), [anon_sym_break] = ACTIONS(1749), [anon_sym_continue] = ACTIONS(1749), [anon_sym_goto] = ACTIONS(1749), [anon_sym_DASH_DASH] = ACTIONS(1751), [anon_sym_PLUS_PLUS] = ACTIONS(1751), [anon_sym_sizeof] = ACTIONS(1749), [sym_number_literal] = ACTIONS(1751), [anon_sym_L_SQUOTE] = ACTIONS(1751), [anon_sym_u_SQUOTE] = ACTIONS(1751), [anon_sym_U_SQUOTE] = ACTIONS(1751), [anon_sym_u8_SQUOTE] = ACTIONS(1751), [anon_sym_SQUOTE] = ACTIONS(1751), [anon_sym_L_DQUOTE] = ACTIONS(1751), [anon_sym_u_DQUOTE] = ACTIONS(1751), [anon_sym_U_DQUOTE] = ACTIONS(1751), [anon_sym_u8_DQUOTE] = ACTIONS(1751), [anon_sym_DQUOTE] = ACTIONS(1751), [sym_true] = ACTIONS(1749), [sym_false] = ACTIONS(1749), [sym_null] = ACTIONS(1749), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1749), [anon_sym_virtual] = ACTIONS(1749), [sym_auto] = ACTIONS(1749), [anon_sym_typename] = ACTIONS(1749), [anon_sym_template] = ACTIONS(1749), [anon_sym_delete] = ACTIONS(1749), [anon_sym_throw] = ACTIONS(1749), [anon_sym_co_return] = ACTIONS(1749), [anon_sym_co_yield] = ACTIONS(1749), [anon_sym_try] = ACTIONS(1749), [anon_sym_catch] = ACTIONS(1749), [anon_sym_co_await] = ACTIONS(1749), [anon_sym_new] = ACTIONS(1749), [sym_this] = ACTIONS(1749), [sym_nullptr] = ACTIONS(1749), [sym_raw_string_literal] = ACTIONS(1751), }, [860] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [861] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [862] = { [sym_identifier] = ACTIONS(1994), [anon_sym_LPAREN2] = ACTIONS(1996), [anon_sym_BANG] = ACTIONS(1996), [anon_sym_TILDE] = ACTIONS(1996), [anon_sym_DASH] = ACTIONS(1994), [anon_sym_PLUS] = ACTIONS(1994), [anon_sym_STAR] = ACTIONS(1996), [anon_sym_AMP] = ACTIONS(1996), [anon_sym_SEMI] = ACTIONS(1996), [anon_sym_typedef] = ACTIONS(1994), [anon_sym_extern] = ACTIONS(1994), [anon_sym___attribute__] = ACTIONS(1994), [anon_sym_COLON_COLON] = ACTIONS(1996), [anon_sym_LBRACK_LBRACK] = ACTIONS(1996), [anon_sym___declspec] = ACTIONS(1994), [anon_sym_LBRACE] = ACTIONS(1996), [anon_sym_LBRACK] = ACTIONS(1994), [anon_sym_static] = ACTIONS(1994), [anon_sym_register] = ACTIONS(1994), [anon_sym_inline] = ACTIONS(1994), [anon_sym_thread_local] = ACTIONS(1994), [anon_sym_const] = ACTIONS(1994), [anon_sym_volatile] = ACTIONS(1994), [anon_sym_restrict] = ACTIONS(1994), [anon_sym__Atomic] = ACTIONS(1994), [anon_sym_mutable] = ACTIONS(1994), [anon_sym_constexpr] = ACTIONS(1994), [anon_sym_signed] = ACTIONS(1994), [anon_sym_unsigned] = ACTIONS(1994), [anon_sym_long] = ACTIONS(1994), [anon_sym_short] = ACTIONS(1994), [sym_primitive_type] = ACTIONS(1994), [anon_sym_enum] = ACTIONS(1994), [anon_sym_class] = ACTIONS(1994), [anon_sym_struct] = ACTIONS(1994), [anon_sym_union] = ACTIONS(1994), [anon_sym_if] = ACTIONS(1994), [anon_sym_else] = ACTIONS(1994), [anon_sym_switch] = ACTIONS(1994), [anon_sym_while] = ACTIONS(1994), [anon_sym_do] = ACTIONS(1994), [anon_sym_for] = ACTIONS(1994), [anon_sym_return] = ACTIONS(1994), [anon_sym_break] = ACTIONS(1994), [anon_sym_continue] = ACTIONS(1994), [anon_sym_goto] = ACTIONS(1994), [anon_sym_DASH_DASH] = ACTIONS(1996), [anon_sym_PLUS_PLUS] = ACTIONS(1996), [anon_sym_sizeof] = ACTIONS(1994), [sym_number_literal] = ACTIONS(1996), [anon_sym_L_SQUOTE] = ACTIONS(1996), [anon_sym_u_SQUOTE] = ACTIONS(1996), [anon_sym_U_SQUOTE] = ACTIONS(1996), [anon_sym_u8_SQUOTE] = ACTIONS(1996), [anon_sym_SQUOTE] = ACTIONS(1996), [anon_sym_L_DQUOTE] = ACTIONS(1996), [anon_sym_u_DQUOTE] = ACTIONS(1996), [anon_sym_U_DQUOTE] = ACTIONS(1996), [anon_sym_u8_DQUOTE] = ACTIONS(1996), [anon_sym_DQUOTE] = ACTIONS(1996), [sym_true] = ACTIONS(1994), [sym_false] = ACTIONS(1994), [sym_null] = ACTIONS(1994), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1994), [anon_sym_virtual] = ACTIONS(1994), [sym_auto] = ACTIONS(1994), [anon_sym_typename] = ACTIONS(1994), [anon_sym_template] = ACTIONS(1994), [anon_sym_delete] = ACTIONS(1994), [anon_sym_throw] = ACTIONS(1994), [anon_sym_co_return] = ACTIONS(1994), [anon_sym_co_yield] = ACTIONS(1994), [anon_sym_try] = ACTIONS(1994), [anon_sym_co_await] = ACTIONS(1994), [anon_sym_new] = ACTIONS(1994), [sym_this] = ACTIONS(1994), [sym_nullptr] = ACTIONS(1994), [sym_raw_string_literal] = ACTIONS(1996), }, [863] = { [sym_identifier] = ACTIONS(1986), [anon_sym_LPAREN2] = ACTIONS(1988), [anon_sym_BANG] = ACTIONS(1988), [anon_sym_TILDE] = ACTIONS(1988), [anon_sym_DASH] = ACTIONS(1986), [anon_sym_PLUS] = ACTIONS(1986), [anon_sym_STAR] = ACTIONS(1988), [anon_sym_AMP] = ACTIONS(1988), [anon_sym_SEMI] = ACTIONS(1988), [anon_sym_typedef] = ACTIONS(1986), [anon_sym_extern] = ACTIONS(1986), [anon_sym___attribute__] = ACTIONS(1986), [anon_sym_COLON_COLON] = ACTIONS(1988), [anon_sym_LBRACK_LBRACK] = ACTIONS(1988), [anon_sym___declspec] = ACTIONS(1986), [anon_sym_LBRACE] = ACTIONS(1988), [anon_sym_LBRACK] = ACTIONS(1986), [anon_sym_static] = ACTIONS(1986), [anon_sym_register] = ACTIONS(1986), [anon_sym_inline] = ACTIONS(1986), [anon_sym_thread_local] = ACTIONS(1986), [anon_sym_const] = ACTIONS(1986), [anon_sym_volatile] = ACTIONS(1986), [anon_sym_restrict] = ACTIONS(1986), [anon_sym__Atomic] = ACTIONS(1986), [anon_sym_mutable] = ACTIONS(1986), [anon_sym_constexpr] = ACTIONS(1986), [anon_sym_signed] = ACTIONS(1986), [anon_sym_unsigned] = ACTIONS(1986), [anon_sym_long] = ACTIONS(1986), [anon_sym_short] = ACTIONS(1986), [sym_primitive_type] = ACTIONS(1986), [anon_sym_enum] = ACTIONS(1986), [anon_sym_class] = ACTIONS(1986), [anon_sym_struct] = ACTIONS(1986), [anon_sym_union] = ACTIONS(1986), [anon_sym_if] = ACTIONS(1986), [anon_sym_else] = ACTIONS(1986), [anon_sym_switch] = ACTIONS(1986), [anon_sym_while] = ACTIONS(1986), [anon_sym_do] = ACTIONS(1986), [anon_sym_for] = ACTIONS(1986), [anon_sym_return] = ACTIONS(1986), [anon_sym_break] = ACTIONS(1986), [anon_sym_continue] = ACTIONS(1986), [anon_sym_goto] = ACTIONS(1986), [anon_sym_DASH_DASH] = ACTIONS(1988), [anon_sym_PLUS_PLUS] = ACTIONS(1988), [anon_sym_sizeof] = ACTIONS(1986), [sym_number_literal] = ACTIONS(1988), [anon_sym_L_SQUOTE] = ACTIONS(1988), [anon_sym_u_SQUOTE] = ACTIONS(1988), [anon_sym_U_SQUOTE] = ACTIONS(1988), [anon_sym_u8_SQUOTE] = ACTIONS(1988), [anon_sym_SQUOTE] = ACTIONS(1988), [anon_sym_L_DQUOTE] = ACTIONS(1988), [anon_sym_u_DQUOTE] = ACTIONS(1988), [anon_sym_U_DQUOTE] = ACTIONS(1988), [anon_sym_u8_DQUOTE] = ACTIONS(1988), [anon_sym_DQUOTE] = ACTIONS(1988), [sym_true] = ACTIONS(1986), [sym_false] = ACTIONS(1986), [sym_null] = ACTIONS(1986), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1986), [anon_sym_virtual] = ACTIONS(1986), [sym_auto] = ACTIONS(1986), [anon_sym_typename] = ACTIONS(1986), [anon_sym_template] = ACTIONS(1986), [anon_sym_delete] = ACTIONS(1986), [anon_sym_throw] = ACTIONS(1986), [anon_sym_co_return] = ACTIONS(1986), [anon_sym_co_yield] = ACTIONS(1986), [anon_sym_try] = ACTIONS(1986), [anon_sym_co_await] = ACTIONS(1986), [anon_sym_new] = ACTIONS(1986), [sym_this] = ACTIONS(1986), [sym_nullptr] = ACTIONS(1986), [sym_raw_string_literal] = ACTIONS(1988), }, [864] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [865] = { [sym_identifier] = ACTIONS(1982), [anon_sym_LPAREN2] = ACTIONS(1984), [anon_sym_BANG] = ACTIONS(1984), [anon_sym_TILDE] = ACTIONS(1984), [anon_sym_DASH] = ACTIONS(1982), [anon_sym_PLUS] = ACTIONS(1982), [anon_sym_STAR] = ACTIONS(1984), [anon_sym_AMP] = ACTIONS(1984), [anon_sym_SEMI] = ACTIONS(1984), [anon_sym_typedef] = ACTIONS(1982), [anon_sym_extern] = ACTIONS(1982), [anon_sym___attribute__] = ACTIONS(1982), [anon_sym_COLON_COLON] = ACTIONS(1984), [anon_sym_LBRACK_LBRACK] = ACTIONS(1984), [anon_sym___declspec] = ACTIONS(1982), [anon_sym_LBRACE] = ACTIONS(1984), [anon_sym_LBRACK] = ACTIONS(1982), [anon_sym_static] = ACTIONS(1982), [anon_sym_register] = ACTIONS(1982), [anon_sym_inline] = ACTIONS(1982), [anon_sym_thread_local] = ACTIONS(1982), [anon_sym_const] = ACTIONS(1982), [anon_sym_volatile] = ACTIONS(1982), [anon_sym_restrict] = ACTIONS(1982), [anon_sym__Atomic] = ACTIONS(1982), [anon_sym_mutable] = ACTIONS(1982), [anon_sym_constexpr] = ACTIONS(1982), [anon_sym_signed] = ACTIONS(1982), [anon_sym_unsigned] = ACTIONS(1982), [anon_sym_long] = ACTIONS(1982), [anon_sym_short] = ACTIONS(1982), [sym_primitive_type] = ACTIONS(1982), [anon_sym_enum] = ACTIONS(1982), [anon_sym_class] = ACTIONS(1982), [anon_sym_struct] = ACTIONS(1982), [anon_sym_union] = ACTIONS(1982), [anon_sym_if] = ACTIONS(1982), [anon_sym_else] = ACTIONS(1982), [anon_sym_switch] = ACTIONS(1982), [anon_sym_while] = ACTIONS(1982), [anon_sym_do] = ACTIONS(1982), [anon_sym_for] = ACTIONS(1982), [anon_sym_return] = ACTIONS(1982), [anon_sym_break] = ACTIONS(1982), [anon_sym_continue] = ACTIONS(1982), [anon_sym_goto] = ACTIONS(1982), [anon_sym_DASH_DASH] = ACTIONS(1984), [anon_sym_PLUS_PLUS] = ACTIONS(1984), [anon_sym_sizeof] = ACTIONS(1982), [sym_number_literal] = ACTIONS(1984), [anon_sym_L_SQUOTE] = ACTIONS(1984), [anon_sym_u_SQUOTE] = ACTIONS(1984), [anon_sym_U_SQUOTE] = ACTIONS(1984), [anon_sym_u8_SQUOTE] = ACTIONS(1984), [anon_sym_SQUOTE] = ACTIONS(1984), [anon_sym_L_DQUOTE] = ACTIONS(1984), [anon_sym_u_DQUOTE] = ACTIONS(1984), [anon_sym_U_DQUOTE] = ACTIONS(1984), [anon_sym_u8_DQUOTE] = ACTIONS(1984), [anon_sym_DQUOTE] = ACTIONS(1984), [sym_true] = ACTIONS(1982), [sym_false] = ACTIONS(1982), [sym_null] = ACTIONS(1982), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1982), [anon_sym_virtual] = ACTIONS(1982), [sym_auto] = ACTIONS(1982), [anon_sym_typename] = ACTIONS(1982), [anon_sym_template] = ACTIONS(1982), [anon_sym_delete] = ACTIONS(1982), [anon_sym_throw] = ACTIONS(1982), [anon_sym_co_return] = ACTIONS(1982), [anon_sym_co_yield] = ACTIONS(1982), [anon_sym_try] = ACTIONS(1982), [anon_sym_co_await] = ACTIONS(1982), [anon_sym_new] = ACTIONS(1982), [sym_this] = ACTIONS(1982), [sym_nullptr] = ACTIONS(1982), [sym_raw_string_literal] = ACTIONS(1984), }, [866] = { [sym_identifier] = ACTIONS(1856), [anon_sym_LPAREN2] = ACTIONS(1858), [anon_sym_BANG] = ACTIONS(1858), [anon_sym_TILDE] = ACTIONS(1858), [anon_sym_DASH] = ACTIONS(1856), [anon_sym_PLUS] = ACTIONS(1856), [anon_sym_STAR] = ACTIONS(1858), [anon_sym_AMP] = ACTIONS(1858), [anon_sym_SEMI] = ACTIONS(1858), [anon_sym_typedef] = ACTIONS(1856), [anon_sym_extern] = ACTIONS(1856), [anon_sym___attribute__] = ACTIONS(1856), [anon_sym_COLON_COLON] = ACTIONS(1858), [anon_sym_LBRACK_LBRACK] = ACTIONS(1858), [anon_sym___declspec] = ACTIONS(1856), [anon_sym_LBRACE] = ACTIONS(1858), [anon_sym_LBRACK] = ACTIONS(1856), [anon_sym_static] = ACTIONS(1856), [anon_sym_register] = ACTIONS(1856), [anon_sym_inline] = ACTIONS(1856), [anon_sym_thread_local] = ACTIONS(1856), [anon_sym_const] = ACTIONS(1856), [anon_sym_volatile] = ACTIONS(1856), [anon_sym_restrict] = ACTIONS(1856), [anon_sym__Atomic] = ACTIONS(1856), [anon_sym_mutable] = ACTIONS(1856), [anon_sym_constexpr] = ACTIONS(1856), [anon_sym_signed] = ACTIONS(1856), [anon_sym_unsigned] = ACTIONS(1856), [anon_sym_long] = ACTIONS(1856), [anon_sym_short] = ACTIONS(1856), [sym_primitive_type] = ACTIONS(1856), [anon_sym_enum] = ACTIONS(1856), [anon_sym_class] = ACTIONS(1856), [anon_sym_struct] = ACTIONS(1856), [anon_sym_union] = ACTIONS(1856), [anon_sym_if] = ACTIONS(1856), [anon_sym_else] = ACTIONS(1856), [anon_sym_switch] = ACTIONS(1856), [anon_sym_while] = ACTIONS(1856), [anon_sym_do] = ACTIONS(1856), [anon_sym_for] = ACTIONS(1856), [anon_sym_return] = ACTIONS(1856), [anon_sym_break] = ACTIONS(1856), [anon_sym_continue] = ACTIONS(1856), [anon_sym_goto] = ACTIONS(1856), [anon_sym_DASH_DASH] = ACTIONS(1858), [anon_sym_PLUS_PLUS] = ACTIONS(1858), [anon_sym_sizeof] = ACTIONS(1856), [sym_number_literal] = ACTIONS(1858), [anon_sym_L_SQUOTE] = ACTIONS(1858), [anon_sym_u_SQUOTE] = ACTIONS(1858), [anon_sym_U_SQUOTE] = ACTIONS(1858), [anon_sym_u8_SQUOTE] = ACTIONS(1858), [anon_sym_SQUOTE] = ACTIONS(1858), [anon_sym_L_DQUOTE] = ACTIONS(1858), [anon_sym_u_DQUOTE] = ACTIONS(1858), [anon_sym_U_DQUOTE] = ACTIONS(1858), [anon_sym_u8_DQUOTE] = ACTIONS(1858), [anon_sym_DQUOTE] = ACTIONS(1858), [sym_true] = ACTIONS(1856), [sym_false] = ACTIONS(1856), [sym_null] = ACTIONS(1856), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1856), [anon_sym_virtual] = ACTIONS(1856), [sym_auto] = ACTIONS(1856), [anon_sym_typename] = ACTIONS(1856), [anon_sym_template] = ACTIONS(1856), [anon_sym_delete] = ACTIONS(1856), [anon_sym_throw] = ACTIONS(1856), [anon_sym_co_return] = ACTIONS(1856), [anon_sym_co_yield] = ACTIONS(1856), [anon_sym_try] = ACTIONS(1856), [anon_sym_co_await] = ACTIONS(1856), [anon_sym_new] = ACTIONS(1856), [sym_this] = ACTIONS(1856), [sym_nullptr] = ACTIONS(1856), [sym_raw_string_literal] = ACTIONS(1858), }, [867] = { [sym_identifier] = ACTIONS(1998), [anon_sym_LPAREN2] = ACTIONS(2000), [anon_sym_BANG] = ACTIONS(2000), [anon_sym_TILDE] = ACTIONS(2000), [anon_sym_DASH] = ACTIONS(1998), [anon_sym_PLUS] = ACTIONS(1998), [anon_sym_STAR] = ACTIONS(2000), [anon_sym_AMP] = ACTIONS(2000), [anon_sym_SEMI] = ACTIONS(2000), [anon_sym_typedef] = ACTIONS(1998), [anon_sym_extern] = ACTIONS(1998), [anon_sym___attribute__] = ACTIONS(1998), [anon_sym_COLON_COLON] = ACTIONS(2000), [anon_sym_LBRACK_LBRACK] = ACTIONS(2000), [anon_sym___declspec] = ACTIONS(1998), [anon_sym_LBRACE] = ACTIONS(2000), [anon_sym_LBRACK] = ACTIONS(1998), [anon_sym_static] = ACTIONS(1998), [anon_sym_register] = ACTIONS(1998), [anon_sym_inline] = ACTIONS(1998), [anon_sym_thread_local] = ACTIONS(1998), [anon_sym_const] = ACTIONS(1998), [anon_sym_volatile] = ACTIONS(1998), [anon_sym_restrict] = ACTIONS(1998), [anon_sym__Atomic] = ACTIONS(1998), [anon_sym_mutable] = ACTIONS(1998), [anon_sym_constexpr] = ACTIONS(1998), [anon_sym_signed] = ACTIONS(1998), [anon_sym_unsigned] = ACTIONS(1998), [anon_sym_long] = ACTIONS(1998), [anon_sym_short] = ACTIONS(1998), [sym_primitive_type] = ACTIONS(1998), [anon_sym_enum] = ACTIONS(1998), [anon_sym_class] = ACTIONS(1998), [anon_sym_struct] = ACTIONS(1998), [anon_sym_union] = ACTIONS(1998), [anon_sym_if] = ACTIONS(1998), [anon_sym_else] = ACTIONS(1998), [anon_sym_switch] = ACTIONS(1998), [anon_sym_while] = ACTIONS(1998), [anon_sym_do] = ACTIONS(1998), [anon_sym_for] = ACTIONS(1998), [anon_sym_return] = ACTIONS(1998), [anon_sym_break] = ACTIONS(1998), [anon_sym_continue] = ACTIONS(1998), [anon_sym_goto] = ACTIONS(1998), [anon_sym_DASH_DASH] = ACTIONS(2000), [anon_sym_PLUS_PLUS] = ACTIONS(2000), [anon_sym_sizeof] = ACTIONS(1998), [sym_number_literal] = ACTIONS(2000), [anon_sym_L_SQUOTE] = ACTIONS(2000), [anon_sym_u_SQUOTE] = ACTIONS(2000), [anon_sym_U_SQUOTE] = ACTIONS(2000), [anon_sym_u8_SQUOTE] = ACTIONS(2000), [anon_sym_SQUOTE] = ACTIONS(2000), [anon_sym_L_DQUOTE] = ACTIONS(2000), [anon_sym_u_DQUOTE] = ACTIONS(2000), [anon_sym_U_DQUOTE] = ACTIONS(2000), [anon_sym_u8_DQUOTE] = ACTIONS(2000), [anon_sym_DQUOTE] = ACTIONS(2000), [sym_true] = ACTIONS(1998), [sym_false] = ACTIONS(1998), [sym_null] = ACTIONS(1998), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1998), [anon_sym_virtual] = ACTIONS(1998), [sym_auto] = ACTIONS(1998), [anon_sym_typename] = ACTIONS(1998), [anon_sym_template] = ACTIONS(1998), [anon_sym_delete] = ACTIONS(1998), [anon_sym_throw] = ACTIONS(1998), [anon_sym_co_return] = ACTIONS(1998), [anon_sym_co_yield] = ACTIONS(1998), [anon_sym_try] = ACTIONS(1998), [anon_sym_co_await] = ACTIONS(1998), [anon_sym_new] = ACTIONS(1998), [sym_this] = ACTIONS(1998), [sym_nullptr] = ACTIONS(1998), [sym_raw_string_literal] = ACTIONS(2000), }, [868] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [869] = { [sym_identifier] = ACTIONS(2002), [anon_sym_LPAREN2] = ACTIONS(2004), [anon_sym_BANG] = ACTIONS(2004), [anon_sym_TILDE] = ACTIONS(2004), [anon_sym_DASH] = ACTIONS(2002), [anon_sym_PLUS] = ACTIONS(2002), [anon_sym_STAR] = ACTIONS(2004), [anon_sym_AMP] = ACTIONS(2004), [anon_sym_SEMI] = ACTIONS(2004), [anon_sym_typedef] = ACTIONS(2002), [anon_sym_extern] = ACTIONS(2002), [anon_sym___attribute__] = ACTIONS(2002), [anon_sym_COLON_COLON] = ACTIONS(2004), [anon_sym_LBRACK_LBRACK] = ACTIONS(2004), [anon_sym___declspec] = ACTIONS(2002), [anon_sym_LBRACE] = ACTIONS(2004), [anon_sym_LBRACK] = ACTIONS(2002), [anon_sym_static] = ACTIONS(2002), [anon_sym_register] = ACTIONS(2002), [anon_sym_inline] = ACTIONS(2002), [anon_sym_thread_local] = ACTIONS(2002), [anon_sym_const] = ACTIONS(2002), [anon_sym_volatile] = ACTIONS(2002), [anon_sym_restrict] = ACTIONS(2002), [anon_sym__Atomic] = ACTIONS(2002), [anon_sym_mutable] = ACTIONS(2002), [anon_sym_constexpr] = ACTIONS(2002), [anon_sym_signed] = ACTIONS(2002), [anon_sym_unsigned] = ACTIONS(2002), [anon_sym_long] = ACTIONS(2002), [anon_sym_short] = ACTIONS(2002), [sym_primitive_type] = ACTIONS(2002), [anon_sym_enum] = ACTIONS(2002), [anon_sym_class] = ACTIONS(2002), [anon_sym_struct] = ACTIONS(2002), [anon_sym_union] = ACTIONS(2002), [anon_sym_if] = ACTIONS(2002), [anon_sym_else] = ACTIONS(2002), [anon_sym_switch] = ACTIONS(2002), [anon_sym_while] = ACTIONS(2002), [anon_sym_do] = ACTIONS(2002), [anon_sym_for] = ACTIONS(2002), [anon_sym_return] = ACTIONS(2002), [anon_sym_break] = ACTIONS(2002), [anon_sym_continue] = ACTIONS(2002), [anon_sym_goto] = ACTIONS(2002), [anon_sym_DASH_DASH] = ACTIONS(2004), [anon_sym_PLUS_PLUS] = ACTIONS(2004), [anon_sym_sizeof] = ACTIONS(2002), [sym_number_literal] = ACTIONS(2004), [anon_sym_L_SQUOTE] = ACTIONS(2004), [anon_sym_u_SQUOTE] = ACTIONS(2004), [anon_sym_U_SQUOTE] = ACTIONS(2004), [anon_sym_u8_SQUOTE] = ACTIONS(2004), [anon_sym_SQUOTE] = ACTIONS(2004), [anon_sym_L_DQUOTE] = ACTIONS(2004), [anon_sym_u_DQUOTE] = ACTIONS(2004), [anon_sym_U_DQUOTE] = ACTIONS(2004), [anon_sym_u8_DQUOTE] = ACTIONS(2004), [anon_sym_DQUOTE] = ACTIONS(2004), [sym_true] = ACTIONS(2002), [sym_false] = ACTIONS(2002), [sym_null] = ACTIONS(2002), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2002), [anon_sym_virtual] = ACTIONS(2002), [sym_auto] = ACTIONS(2002), [anon_sym_typename] = ACTIONS(2002), [anon_sym_template] = ACTIONS(2002), [anon_sym_delete] = ACTIONS(2002), [anon_sym_throw] = ACTIONS(2002), [anon_sym_co_return] = ACTIONS(2002), [anon_sym_co_yield] = ACTIONS(2002), [anon_sym_try] = ACTIONS(2002), [anon_sym_co_await] = ACTIONS(2002), [anon_sym_new] = ACTIONS(2002), [sym_this] = ACTIONS(2002), [sym_nullptr] = ACTIONS(2002), [sym_raw_string_literal] = ACTIONS(2004), }, [870] = { [sym_identifier] = ACTIONS(1942), [anon_sym_LPAREN2] = ACTIONS(1944), [anon_sym_BANG] = ACTIONS(1944), [anon_sym_TILDE] = ACTIONS(1944), [anon_sym_DASH] = ACTIONS(1942), [anon_sym_PLUS] = ACTIONS(1942), [anon_sym_STAR] = ACTIONS(1944), [anon_sym_AMP] = ACTIONS(1944), [anon_sym_SEMI] = ACTIONS(1944), [anon_sym_typedef] = ACTIONS(1942), [anon_sym_extern] = ACTIONS(1942), [anon_sym___attribute__] = ACTIONS(1942), [anon_sym_COLON_COLON] = ACTIONS(1944), [anon_sym_LBRACK_LBRACK] = ACTIONS(1944), [anon_sym___declspec] = ACTIONS(1942), [anon_sym_LBRACE] = ACTIONS(1944), [anon_sym_LBRACK] = ACTIONS(1942), [anon_sym_static] = ACTIONS(1942), [anon_sym_register] = ACTIONS(1942), [anon_sym_inline] = ACTIONS(1942), [anon_sym_thread_local] = ACTIONS(1942), [anon_sym_const] = ACTIONS(1942), [anon_sym_volatile] = ACTIONS(1942), [anon_sym_restrict] = ACTIONS(1942), [anon_sym__Atomic] = ACTIONS(1942), [anon_sym_mutable] = ACTIONS(1942), [anon_sym_constexpr] = ACTIONS(1942), [anon_sym_signed] = ACTIONS(1942), [anon_sym_unsigned] = ACTIONS(1942), [anon_sym_long] = ACTIONS(1942), [anon_sym_short] = ACTIONS(1942), [sym_primitive_type] = ACTIONS(1942), [anon_sym_enum] = ACTIONS(1942), [anon_sym_class] = ACTIONS(1942), [anon_sym_struct] = ACTIONS(1942), [anon_sym_union] = ACTIONS(1942), [anon_sym_if] = ACTIONS(1942), [anon_sym_else] = ACTIONS(1942), [anon_sym_switch] = ACTIONS(1942), [anon_sym_while] = ACTIONS(1942), [anon_sym_do] = ACTIONS(1942), [anon_sym_for] = ACTIONS(1942), [anon_sym_return] = ACTIONS(1942), [anon_sym_break] = ACTIONS(1942), [anon_sym_continue] = ACTIONS(1942), [anon_sym_goto] = ACTIONS(1942), [anon_sym_DASH_DASH] = ACTIONS(1944), [anon_sym_PLUS_PLUS] = ACTIONS(1944), [anon_sym_sizeof] = ACTIONS(1942), [sym_number_literal] = ACTIONS(1944), [anon_sym_L_SQUOTE] = ACTIONS(1944), [anon_sym_u_SQUOTE] = ACTIONS(1944), [anon_sym_U_SQUOTE] = ACTIONS(1944), [anon_sym_u8_SQUOTE] = ACTIONS(1944), [anon_sym_SQUOTE] = ACTIONS(1944), [anon_sym_L_DQUOTE] = ACTIONS(1944), [anon_sym_u_DQUOTE] = ACTIONS(1944), [anon_sym_U_DQUOTE] = ACTIONS(1944), [anon_sym_u8_DQUOTE] = ACTIONS(1944), [anon_sym_DQUOTE] = ACTIONS(1944), [sym_true] = ACTIONS(1942), [sym_false] = ACTIONS(1942), [sym_null] = ACTIONS(1942), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1942), [anon_sym_virtual] = ACTIONS(1942), [sym_auto] = ACTIONS(1942), [anon_sym_typename] = ACTIONS(1942), [anon_sym_template] = ACTIONS(1942), [anon_sym_delete] = ACTIONS(1942), [anon_sym_throw] = ACTIONS(1942), [anon_sym_co_return] = ACTIONS(1942), [anon_sym_co_yield] = ACTIONS(1942), [anon_sym_try] = ACTIONS(1942), [anon_sym_co_await] = ACTIONS(1942), [anon_sym_new] = ACTIONS(1942), [sym_this] = ACTIONS(1942), [sym_nullptr] = ACTIONS(1942), [sym_raw_string_literal] = ACTIONS(1944), }, [871] = { [sym_identifier] = ACTIONS(1938), [anon_sym_LPAREN2] = ACTIONS(1940), [anon_sym_BANG] = ACTIONS(1940), [anon_sym_TILDE] = ACTIONS(1940), [anon_sym_DASH] = ACTIONS(1938), [anon_sym_PLUS] = ACTIONS(1938), [anon_sym_STAR] = ACTIONS(1940), [anon_sym_AMP] = ACTIONS(1940), [anon_sym_SEMI] = ACTIONS(1940), [anon_sym_typedef] = ACTIONS(1938), [anon_sym_extern] = ACTIONS(1938), [anon_sym___attribute__] = ACTIONS(1938), [anon_sym_COLON_COLON] = ACTIONS(1940), [anon_sym_LBRACK_LBRACK] = ACTIONS(1940), [anon_sym___declspec] = ACTIONS(1938), [anon_sym_LBRACE] = ACTIONS(1940), [anon_sym_LBRACK] = ACTIONS(1938), [anon_sym_static] = ACTIONS(1938), [anon_sym_register] = ACTIONS(1938), [anon_sym_inline] = ACTIONS(1938), [anon_sym_thread_local] = ACTIONS(1938), [anon_sym_const] = ACTIONS(1938), [anon_sym_volatile] = ACTIONS(1938), [anon_sym_restrict] = ACTIONS(1938), [anon_sym__Atomic] = ACTIONS(1938), [anon_sym_mutable] = ACTIONS(1938), [anon_sym_constexpr] = ACTIONS(1938), [anon_sym_signed] = ACTIONS(1938), [anon_sym_unsigned] = ACTIONS(1938), [anon_sym_long] = ACTIONS(1938), [anon_sym_short] = ACTIONS(1938), [sym_primitive_type] = ACTIONS(1938), [anon_sym_enum] = ACTIONS(1938), [anon_sym_class] = ACTIONS(1938), [anon_sym_struct] = ACTIONS(1938), [anon_sym_union] = ACTIONS(1938), [anon_sym_if] = ACTIONS(1938), [anon_sym_else] = ACTIONS(1938), [anon_sym_switch] = ACTIONS(1938), [anon_sym_while] = ACTIONS(1938), [anon_sym_do] = ACTIONS(1938), [anon_sym_for] = ACTIONS(1938), [anon_sym_return] = ACTIONS(1938), [anon_sym_break] = ACTIONS(1938), [anon_sym_continue] = ACTIONS(1938), [anon_sym_goto] = ACTIONS(1938), [anon_sym_DASH_DASH] = ACTIONS(1940), [anon_sym_PLUS_PLUS] = ACTIONS(1940), [anon_sym_sizeof] = ACTIONS(1938), [sym_number_literal] = ACTIONS(1940), [anon_sym_L_SQUOTE] = ACTIONS(1940), [anon_sym_u_SQUOTE] = ACTIONS(1940), [anon_sym_U_SQUOTE] = ACTIONS(1940), [anon_sym_u8_SQUOTE] = ACTIONS(1940), [anon_sym_SQUOTE] = ACTIONS(1940), [anon_sym_L_DQUOTE] = ACTIONS(1940), [anon_sym_u_DQUOTE] = ACTIONS(1940), [anon_sym_U_DQUOTE] = ACTIONS(1940), [anon_sym_u8_DQUOTE] = ACTIONS(1940), [anon_sym_DQUOTE] = ACTIONS(1940), [sym_true] = ACTIONS(1938), [sym_false] = ACTIONS(1938), [sym_null] = ACTIONS(1938), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1938), [anon_sym_virtual] = ACTIONS(1938), [sym_auto] = ACTIONS(1938), [anon_sym_typename] = ACTIONS(1938), [anon_sym_template] = ACTIONS(1938), [anon_sym_delete] = ACTIONS(1938), [anon_sym_throw] = ACTIONS(1938), [anon_sym_co_return] = ACTIONS(1938), [anon_sym_co_yield] = ACTIONS(1938), [anon_sym_try] = ACTIONS(1938), [anon_sym_co_await] = ACTIONS(1938), [anon_sym_new] = ACTIONS(1938), [sym_this] = ACTIONS(1938), [sym_nullptr] = ACTIONS(1938), [sym_raw_string_literal] = ACTIONS(1940), }, [872] = { [sym_identifier] = ACTIONS(1778), [anon_sym_LPAREN2] = ACTIONS(1780), [anon_sym_BANG] = ACTIONS(1780), [anon_sym_TILDE] = ACTIONS(1780), [anon_sym_DASH] = ACTIONS(1778), [anon_sym_PLUS] = ACTIONS(1778), [anon_sym_STAR] = ACTIONS(1780), [anon_sym_AMP] = ACTIONS(1780), [anon_sym_SEMI] = ACTIONS(1780), [anon_sym_typedef] = ACTIONS(1778), [anon_sym_extern] = ACTIONS(1778), [anon_sym___attribute__] = ACTIONS(1778), [anon_sym_COLON_COLON] = ACTIONS(1780), [anon_sym_LBRACK_LBRACK] = ACTIONS(1780), [anon_sym___declspec] = ACTIONS(1778), [anon_sym_LBRACE] = ACTIONS(1780), [anon_sym_LBRACK] = ACTIONS(1778), [anon_sym_static] = ACTIONS(1778), [anon_sym_register] = ACTIONS(1778), [anon_sym_inline] = ACTIONS(1778), [anon_sym_thread_local] = ACTIONS(1778), [anon_sym_const] = ACTIONS(1778), [anon_sym_volatile] = ACTIONS(1778), [anon_sym_restrict] = ACTIONS(1778), [anon_sym__Atomic] = ACTIONS(1778), [anon_sym_mutable] = ACTIONS(1778), [anon_sym_constexpr] = ACTIONS(1778), [anon_sym_signed] = ACTIONS(1778), [anon_sym_unsigned] = ACTIONS(1778), [anon_sym_long] = ACTIONS(1778), [anon_sym_short] = ACTIONS(1778), [sym_primitive_type] = ACTIONS(1778), [anon_sym_enum] = ACTIONS(1778), [anon_sym_class] = ACTIONS(1778), [anon_sym_struct] = ACTIONS(1778), [anon_sym_union] = ACTIONS(1778), [anon_sym_if] = ACTIONS(1778), [anon_sym_else] = ACTIONS(1778), [anon_sym_switch] = ACTIONS(1778), [anon_sym_while] = ACTIONS(1778), [anon_sym_do] = ACTIONS(1778), [anon_sym_for] = ACTIONS(1778), [anon_sym_return] = ACTIONS(1778), [anon_sym_break] = ACTIONS(1778), [anon_sym_continue] = ACTIONS(1778), [anon_sym_goto] = ACTIONS(1778), [anon_sym_DASH_DASH] = ACTIONS(1780), [anon_sym_PLUS_PLUS] = ACTIONS(1780), [anon_sym_sizeof] = ACTIONS(1778), [sym_number_literal] = ACTIONS(1780), [anon_sym_L_SQUOTE] = ACTIONS(1780), [anon_sym_u_SQUOTE] = ACTIONS(1780), [anon_sym_U_SQUOTE] = ACTIONS(1780), [anon_sym_u8_SQUOTE] = ACTIONS(1780), [anon_sym_SQUOTE] = ACTIONS(1780), [anon_sym_L_DQUOTE] = ACTIONS(1780), [anon_sym_u_DQUOTE] = ACTIONS(1780), [anon_sym_U_DQUOTE] = ACTIONS(1780), [anon_sym_u8_DQUOTE] = ACTIONS(1780), [anon_sym_DQUOTE] = ACTIONS(1780), [sym_true] = ACTIONS(1778), [sym_false] = ACTIONS(1778), [sym_null] = ACTIONS(1778), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1778), [anon_sym_virtual] = ACTIONS(1778), [sym_auto] = ACTIONS(1778), [anon_sym_typename] = ACTIONS(1778), [anon_sym_template] = ACTIONS(1778), [anon_sym_delete] = ACTIONS(1778), [anon_sym_throw] = ACTIONS(1778), [anon_sym_co_return] = ACTIONS(1778), [anon_sym_co_yield] = ACTIONS(1778), [anon_sym_try] = ACTIONS(1778), [anon_sym_co_await] = ACTIONS(1778), [anon_sym_new] = ACTIONS(1778), [sym_this] = ACTIONS(1778), [sym_nullptr] = ACTIONS(1778), [sym_raw_string_literal] = ACTIONS(1780), }, [873] = { [sym_identifier] = ACTIONS(2006), [anon_sym_LPAREN2] = ACTIONS(2008), [anon_sym_BANG] = ACTIONS(2008), [anon_sym_TILDE] = ACTIONS(2008), [anon_sym_DASH] = ACTIONS(2006), [anon_sym_PLUS] = ACTIONS(2006), [anon_sym_STAR] = ACTIONS(2008), [anon_sym_AMP] = ACTIONS(2008), [anon_sym_SEMI] = ACTIONS(2008), [anon_sym_typedef] = ACTIONS(2006), [anon_sym_extern] = ACTIONS(2006), [anon_sym___attribute__] = ACTIONS(2006), [anon_sym_COLON_COLON] = ACTIONS(2008), [anon_sym_LBRACK_LBRACK] = ACTIONS(2008), [anon_sym___declspec] = ACTIONS(2006), [anon_sym_LBRACE] = ACTIONS(2008), [anon_sym_LBRACK] = ACTIONS(2006), [anon_sym_static] = ACTIONS(2006), [anon_sym_register] = ACTIONS(2006), [anon_sym_inline] = ACTIONS(2006), [anon_sym_thread_local] = ACTIONS(2006), [anon_sym_const] = ACTIONS(2006), [anon_sym_volatile] = ACTIONS(2006), [anon_sym_restrict] = ACTIONS(2006), [anon_sym__Atomic] = ACTIONS(2006), [anon_sym_mutable] = ACTIONS(2006), [anon_sym_constexpr] = ACTIONS(2006), [anon_sym_signed] = ACTIONS(2006), [anon_sym_unsigned] = ACTIONS(2006), [anon_sym_long] = ACTIONS(2006), [anon_sym_short] = ACTIONS(2006), [sym_primitive_type] = ACTIONS(2006), [anon_sym_enum] = ACTIONS(2006), [anon_sym_class] = ACTIONS(2006), [anon_sym_struct] = ACTIONS(2006), [anon_sym_union] = ACTIONS(2006), [anon_sym_if] = ACTIONS(2006), [anon_sym_else] = ACTIONS(2006), [anon_sym_switch] = ACTIONS(2006), [anon_sym_while] = ACTIONS(2006), [anon_sym_do] = ACTIONS(2006), [anon_sym_for] = ACTIONS(2006), [anon_sym_return] = ACTIONS(2006), [anon_sym_break] = ACTIONS(2006), [anon_sym_continue] = ACTIONS(2006), [anon_sym_goto] = ACTIONS(2006), [anon_sym_DASH_DASH] = ACTIONS(2008), [anon_sym_PLUS_PLUS] = ACTIONS(2008), [anon_sym_sizeof] = ACTIONS(2006), [sym_number_literal] = ACTIONS(2008), [anon_sym_L_SQUOTE] = ACTIONS(2008), [anon_sym_u_SQUOTE] = ACTIONS(2008), [anon_sym_U_SQUOTE] = ACTIONS(2008), [anon_sym_u8_SQUOTE] = ACTIONS(2008), [anon_sym_SQUOTE] = ACTIONS(2008), [anon_sym_L_DQUOTE] = ACTIONS(2008), [anon_sym_u_DQUOTE] = ACTIONS(2008), [anon_sym_U_DQUOTE] = ACTIONS(2008), [anon_sym_u8_DQUOTE] = ACTIONS(2008), [anon_sym_DQUOTE] = ACTIONS(2008), [sym_true] = ACTIONS(2006), [sym_false] = ACTIONS(2006), [sym_null] = ACTIONS(2006), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2006), [anon_sym_virtual] = ACTIONS(2006), [sym_auto] = ACTIONS(2006), [anon_sym_typename] = ACTIONS(2006), [anon_sym_template] = ACTIONS(2006), [anon_sym_delete] = ACTIONS(2006), [anon_sym_throw] = ACTIONS(2006), [anon_sym_co_return] = ACTIONS(2006), [anon_sym_co_yield] = ACTIONS(2006), [anon_sym_try] = ACTIONS(2006), [anon_sym_co_await] = ACTIONS(2006), [anon_sym_new] = ACTIONS(2006), [sym_this] = ACTIONS(2006), [sym_nullptr] = ACTIONS(2006), [sym_raw_string_literal] = ACTIONS(2008), }, [874] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [875] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [876] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [877] = { [sym_identifier] = ACTIONS(2010), [anon_sym_LPAREN2] = ACTIONS(2012), [anon_sym_BANG] = ACTIONS(2012), [anon_sym_TILDE] = ACTIONS(2012), [anon_sym_DASH] = ACTIONS(2010), [anon_sym_PLUS] = ACTIONS(2010), [anon_sym_STAR] = ACTIONS(2012), [anon_sym_AMP] = ACTIONS(2012), [anon_sym_SEMI] = ACTIONS(2012), [anon_sym_typedef] = ACTIONS(2010), [anon_sym_extern] = ACTIONS(2010), [anon_sym___attribute__] = ACTIONS(2010), [anon_sym_COLON_COLON] = ACTIONS(2012), [anon_sym_LBRACK_LBRACK] = ACTIONS(2012), [anon_sym___declspec] = ACTIONS(2010), [anon_sym_LBRACE] = ACTIONS(2012), [anon_sym_LBRACK] = ACTIONS(2010), [anon_sym_static] = ACTIONS(2010), [anon_sym_register] = ACTIONS(2010), [anon_sym_inline] = ACTIONS(2010), [anon_sym_thread_local] = ACTIONS(2010), [anon_sym_const] = ACTIONS(2010), [anon_sym_volatile] = ACTIONS(2010), [anon_sym_restrict] = ACTIONS(2010), [anon_sym__Atomic] = ACTIONS(2010), [anon_sym_mutable] = ACTIONS(2010), [anon_sym_constexpr] = ACTIONS(2010), [anon_sym_signed] = ACTIONS(2010), [anon_sym_unsigned] = ACTIONS(2010), [anon_sym_long] = ACTIONS(2010), [anon_sym_short] = ACTIONS(2010), [sym_primitive_type] = ACTIONS(2010), [anon_sym_enum] = ACTIONS(2010), [anon_sym_class] = ACTIONS(2010), [anon_sym_struct] = ACTIONS(2010), [anon_sym_union] = ACTIONS(2010), [anon_sym_if] = ACTIONS(2010), [anon_sym_else] = ACTIONS(2010), [anon_sym_switch] = ACTIONS(2010), [anon_sym_while] = ACTIONS(2010), [anon_sym_do] = ACTIONS(2010), [anon_sym_for] = ACTIONS(2010), [anon_sym_return] = ACTIONS(2010), [anon_sym_break] = ACTIONS(2010), [anon_sym_continue] = ACTIONS(2010), [anon_sym_goto] = ACTIONS(2010), [anon_sym_DASH_DASH] = ACTIONS(2012), [anon_sym_PLUS_PLUS] = ACTIONS(2012), [anon_sym_sizeof] = ACTIONS(2010), [sym_number_literal] = ACTIONS(2012), [anon_sym_L_SQUOTE] = ACTIONS(2012), [anon_sym_u_SQUOTE] = ACTIONS(2012), [anon_sym_U_SQUOTE] = ACTIONS(2012), [anon_sym_u8_SQUOTE] = ACTIONS(2012), [anon_sym_SQUOTE] = ACTIONS(2012), [anon_sym_L_DQUOTE] = ACTIONS(2012), [anon_sym_u_DQUOTE] = ACTIONS(2012), [anon_sym_U_DQUOTE] = ACTIONS(2012), [anon_sym_u8_DQUOTE] = ACTIONS(2012), [anon_sym_DQUOTE] = ACTIONS(2012), [sym_true] = ACTIONS(2010), [sym_false] = ACTIONS(2010), [sym_null] = ACTIONS(2010), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2010), [anon_sym_virtual] = ACTIONS(2010), [sym_auto] = ACTIONS(2010), [anon_sym_typename] = ACTIONS(2010), [anon_sym_template] = ACTIONS(2010), [anon_sym_delete] = ACTIONS(2010), [anon_sym_throw] = ACTIONS(2010), [anon_sym_co_return] = ACTIONS(2010), [anon_sym_co_yield] = ACTIONS(2010), [anon_sym_try] = ACTIONS(2010), [anon_sym_co_await] = ACTIONS(2010), [anon_sym_new] = ACTIONS(2010), [sym_this] = ACTIONS(2010), [sym_nullptr] = ACTIONS(2010), [sym_raw_string_literal] = ACTIONS(2012), }, [878] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [879] = { [sym_identifier] = ACTIONS(1852), [anon_sym_LPAREN2] = ACTIONS(1854), [anon_sym_BANG] = ACTIONS(1854), [anon_sym_TILDE] = ACTIONS(1854), [anon_sym_DASH] = ACTIONS(1852), [anon_sym_PLUS] = ACTIONS(1852), [anon_sym_STAR] = ACTIONS(1854), [anon_sym_AMP] = ACTIONS(1854), [anon_sym_SEMI] = ACTIONS(1854), [anon_sym_typedef] = ACTIONS(1852), [anon_sym_extern] = ACTIONS(1852), [anon_sym___attribute__] = ACTIONS(1852), [anon_sym_COLON_COLON] = ACTIONS(1854), [anon_sym_LBRACK_LBRACK] = ACTIONS(1854), [anon_sym___declspec] = ACTIONS(1852), [anon_sym_LBRACE] = ACTIONS(1854), [anon_sym_LBRACK] = ACTIONS(1852), [anon_sym_static] = ACTIONS(1852), [anon_sym_register] = ACTIONS(1852), [anon_sym_inline] = ACTIONS(1852), [anon_sym_thread_local] = ACTIONS(1852), [anon_sym_const] = ACTIONS(1852), [anon_sym_volatile] = ACTIONS(1852), [anon_sym_restrict] = ACTIONS(1852), [anon_sym__Atomic] = ACTIONS(1852), [anon_sym_mutable] = ACTIONS(1852), [anon_sym_constexpr] = ACTIONS(1852), [anon_sym_signed] = ACTIONS(1852), [anon_sym_unsigned] = ACTIONS(1852), [anon_sym_long] = ACTIONS(1852), [anon_sym_short] = ACTIONS(1852), [sym_primitive_type] = ACTIONS(1852), [anon_sym_enum] = ACTIONS(1852), [anon_sym_class] = ACTIONS(1852), [anon_sym_struct] = ACTIONS(1852), [anon_sym_union] = ACTIONS(1852), [anon_sym_if] = ACTIONS(1852), [anon_sym_else] = ACTIONS(1852), [anon_sym_switch] = ACTIONS(1852), [anon_sym_while] = ACTIONS(1852), [anon_sym_do] = ACTIONS(1852), [anon_sym_for] = ACTIONS(1852), [anon_sym_return] = ACTIONS(1852), [anon_sym_break] = ACTIONS(1852), [anon_sym_continue] = ACTIONS(1852), [anon_sym_goto] = ACTIONS(1852), [anon_sym_DASH_DASH] = ACTIONS(1854), [anon_sym_PLUS_PLUS] = ACTIONS(1854), [anon_sym_sizeof] = ACTIONS(1852), [sym_number_literal] = ACTIONS(1854), [anon_sym_L_SQUOTE] = ACTIONS(1854), [anon_sym_u_SQUOTE] = ACTIONS(1854), [anon_sym_U_SQUOTE] = ACTIONS(1854), [anon_sym_u8_SQUOTE] = ACTIONS(1854), [anon_sym_SQUOTE] = ACTIONS(1854), [anon_sym_L_DQUOTE] = ACTIONS(1854), [anon_sym_u_DQUOTE] = ACTIONS(1854), [anon_sym_U_DQUOTE] = ACTIONS(1854), [anon_sym_u8_DQUOTE] = ACTIONS(1854), [anon_sym_DQUOTE] = ACTIONS(1854), [sym_true] = ACTIONS(1852), [sym_false] = ACTIONS(1852), [sym_null] = ACTIONS(1852), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1852), [anon_sym_virtual] = ACTIONS(1852), [sym_auto] = ACTIONS(1852), [anon_sym_typename] = ACTIONS(1852), [anon_sym_template] = ACTIONS(1852), [anon_sym_delete] = ACTIONS(1852), [anon_sym_throw] = ACTIONS(1852), [anon_sym_co_return] = ACTIONS(1852), [anon_sym_co_yield] = ACTIONS(1852), [anon_sym_try] = ACTIONS(1852), [anon_sym_co_await] = ACTIONS(1852), [anon_sym_new] = ACTIONS(1852), [sym_this] = ACTIONS(1852), [sym_nullptr] = ACTIONS(1852), [sym_raw_string_literal] = ACTIONS(1854), }, [880] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [881] = { [sym_identifier] = ACTIONS(1848), [anon_sym_LPAREN2] = ACTIONS(1850), [anon_sym_BANG] = ACTIONS(1850), [anon_sym_TILDE] = ACTIONS(1850), [anon_sym_DASH] = ACTIONS(1848), [anon_sym_PLUS] = ACTIONS(1848), [anon_sym_STAR] = ACTIONS(1850), [anon_sym_AMP] = ACTIONS(1850), [anon_sym_SEMI] = ACTIONS(1850), [anon_sym_typedef] = ACTIONS(1848), [anon_sym_extern] = ACTIONS(1848), [anon_sym___attribute__] = ACTIONS(1848), [anon_sym_COLON_COLON] = ACTIONS(1850), [anon_sym_LBRACK_LBRACK] = ACTIONS(1850), [anon_sym___declspec] = ACTIONS(1848), [anon_sym_LBRACE] = ACTIONS(1850), [anon_sym_LBRACK] = ACTIONS(1848), [anon_sym_static] = ACTIONS(1848), [anon_sym_register] = ACTIONS(1848), [anon_sym_inline] = ACTIONS(1848), [anon_sym_thread_local] = ACTIONS(1848), [anon_sym_const] = ACTIONS(1848), [anon_sym_volatile] = ACTIONS(1848), [anon_sym_restrict] = ACTIONS(1848), [anon_sym__Atomic] = ACTIONS(1848), [anon_sym_mutable] = ACTIONS(1848), [anon_sym_constexpr] = ACTIONS(1848), [anon_sym_signed] = ACTIONS(1848), [anon_sym_unsigned] = ACTIONS(1848), [anon_sym_long] = ACTIONS(1848), [anon_sym_short] = ACTIONS(1848), [sym_primitive_type] = ACTIONS(1848), [anon_sym_enum] = ACTIONS(1848), [anon_sym_class] = ACTIONS(1848), [anon_sym_struct] = ACTIONS(1848), [anon_sym_union] = ACTIONS(1848), [anon_sym_if] = ACTIONS(1848), [anon_sym_else] = ACTIONS(1848), [anon_sym_switch] = ACTIONS(1848), [anon_sym_while] = ACTIONS(1848), [anon_sym_do] = ACTIONS(1848), [anon_sym_for] = ACTIONS(1848), [anon_sym_return] = ACTIONS(1848), [anon_sym_break] = ACTIONS(1848), [anon_sym_continue] = ACTIONS(1848), [anon_sym_goto] = ACTIONS(1848), [anon_sym_DASH_DASH] = ACTIONS(1850), [anon_sym_PLUS_PLUS] = ACTIONS(1850), [anon_sym_sizeof] = ACTIONS(1848), [sym_number_literal] = ACTIONS(1850), [anon_sym_L_SQUOTE] = ACTIONS(1850), [anon_sym_u_SQUOTE] = ACTIONS(1850), [anon_sym_U_SQUOTE] = ACTIONS(1850), [anon_sym_u8_SQUOTE] = ACTIONS(1850), [anon_sym_SQUOTE] = ACTIONS(1850), [anon_sym_L_DQUOTE] = ACTIONS(1850), [anon_sym_u_DQUOTE] = ACTIONS(1850), [anon_sym_U_DQUOTE] = ACTIONS(1850), [anon_sym_u8_DQUOTE] = ACTIONS(1850), [anon_sym_DQUOTE] = ACTIONS(1850), [sym_true] = ACTIONS(1848), [sym_false] = ACTIONS(1848), [sym_null] = ACTIONS(1848), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1848), [anon_sym_virtual] = ACTIONS(1848), [sym_auto] = ACTIONS(1848), [anon_sym_typename] = ACTIONS(1848), [anon_sym_template] = ACTIONS(1848), [anon_sym_delete] = ACTIONS(1848), [anon_sym_throw] = ACTIONS(1848), [anon_sym_co_return] = ACTIONS(1848), [anon_sym_co_yield] = ACTIONS(1848), [anon_sym_try] = ACTIONS(1848), [anon_sym_co_await] = ACTIONS(1848), [anon_sym_new] = ACTIONS(1848), [sym_this] = ACTIONS(1848), [sym_nullptr] = ACTIONS(1848), [sym_raw_string_literal] = ACTIONS(1850), }, [882] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [883] = { [sym_identifier] = ACTIONS(2512), [anon_sym_LPAREN2] = ACTIONS(2514), [anon_sym_BANG] = ACTIONS(2514), [anon_sym_TILDE] = ACTIONS(2514), [anon_sym_DASH] = ACTIONS(2512), [anon_sym_PLUS] = ACTIONS(2512), [anon_sym_STAR] = ACTIONS(2514), [anon_sym_AMP] = ACTIONS(2514), [anon_sym_SEMI] = ACTIONS(2514), [anon_sym_extern] = ACTIONS(2512), [anon_sym___attribute__] = ACTIONS(2512), [anon_sym_COLON_COLON] = ACTIONS(2514), [anon_sym_LBRACK_LBRACK] = ACTIONS(2514), [anon_sym___declspec] = ACTIONS(2512), [anon_sym_LBRACE] = ACTIONS(2514), [anon_sym_LBRACK] = ACTIONS(2512), [anon_sym_static] = ACTIONS(2512), [anon_sym_register] = ACTIONS(2512), [anon_sym_inline] = ACTIONS(2512), [anon_sym_thread_local] = ACTIONS(2512), [anon_sym_const] = ACTIONS(2512), [anon_sym_volatile] = ACTIONS(2512), [anon_sym_restrict] = ACTIONS(2512), [anon_sym__Atomic] = ACTIONS(2512), [anon_sym_mutable] = ACTIONS(2512), [anon_sym_constexpr] = ACTIONS(2512), [anon_sym_signed] = ACTIONS(2512), [anon_sym_unsigned] = ACTIONS(2512), [anon_sym_long] = ACTIONS(2512), [anon_sym_short] = ACTIONS(2512), [sym_primitive_type] = ACTIONS(2512), [anon_sym_enum] = ACTIONS(2512), [anon_sym_class] = ACTIONS(2512), [anon_sym_struct] = ACTIONS(2512), [anon_sym_union] = ACTIONS(2512), [anon_sym_if] = ACTIONS(2512), [anon_sym_switch] = ACTIONS(2512), [anon_sym_case] = ACTIONS(2512), [anon_sym_default] = ACTIONS(2512), [anon_sym_while] = ACTIONS(2512), [anon_sym_do] = ACTIONS(2512), [anon_sym_for] = ACTIONS(2512), [anon_sym_return] = ACTIONS(2512), [anon_sym_break] = ACTIONS(2512), [anon_sym_continue] = ACTIONS(2512), [anon_sym_goto] = ACTIONS(2512), [anon_sym_DASH_DASH] = ACTIONS(2514), [anon_sym_PLUS_PLUS] = ACTIONS(2514), [anon_sym_sizeof] = ACTIONS(2512), [sym_number_literal] = ACTIONS(2514), [anon_sym_L_SQUOTE] = ACTIONS(2514), [anon_sym_u_SQUOTE] = ACTIONS(2514), [anon_sym_U_SQUOTE] = ACTIONS(2514), [anon_sym_u8_SQUOTE] = ACTIONS(2514), [anon_sym_SQUOTE] = ACTIONS(2514), [anon_sym_L_DQUOTE] = ACTIONS(2514), [anon_sym_u_DQUOTE] = ACTIONS(2514), [anon_sym_U_DQUOTE] = ACTIONS(2514), [anon_sym_u8_DQUOTE] = ACTIONS(2514), [anon_sym_DQUOTE] = ACTIONS(2514), [sym_true] = ACTIONS(2512), [sym_false] = ACTIONS(2512), [sym_null] = ACTIONS(2512), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2512), [anon_sym_virtual] = ACTIONS(2512), [sym_auto] = ACTIONS(2512), [anon_sym_typename] = ACTIONS(2512), [anon_sym_template] = ACTIONS(2512), [anon_sym_delete] = ACTIONS(2512), [anon_sym_throw] = ACTIONS(2512), [anon_sym_co_return] = ACTIONS(2512), [anon_sym_co_yield] = ACTIONS(2512), [anon_sym_try] = ACTIONS(2512), [anon_sym_co_await] = ACTIONS(2512), [anon_sym_new] = ACTIONS(2512), [sym_this] = ACTIONS(2512), [sym_nullptr] = ACTIONS(2512), [sym_raw_string_literal] = ACTIONS(2514), }, [884] = { [sym_identifier] = ACTIONS(1884), [anon_sym_LPAREN2] = ACTIONS(1886), [anon_sym_BANG] = ACTIONS(1886), [anon_sym_TILDE] = ACTIONS(1886), [anon_sym_DASH] = ACTIONS(1884), [anon_sym_PLUS] = ACTIONS(1884), [anon_sym_STAR] = ACTIONS(1886), [anon_sym_AMP] = ACTIONS(1886), [anon_sym_SEMI] = ACTIONS(1886), [anon_sym_typedef] = ACTIONS(1884), [anon_sym_extern] = ACTIONS(1884), [anon_sym___attribute__] = ACTIONS(1884), [anon_sym_COLON_COLON] = ACTIONS(1886), [anon_sym_LBRACK_LBRACK] = ACTIONS(1886), [anon_sym___declspec] = ACTIONS(1884), [anon_sym_LBRACE] = ACTIONS(1886), [anon_sym_LBRACK] = ACTIONS(1884), [anon_sym_static] = ACTIONS(1884), [anon_sym_register] = ACTIONS(1884), [anon_sym_inline] = ACTIONS(1884), [anon_sym_thread_local] = ACTIONS(1884), [anon_sym_const] = ACTIONS(1884), [anon_sym_volatile] = ACTIONS(1884), [anon_sym_restrict] = ACTIONS(1884), [anon_sym__Atomic] = ACTIONS(1884), [anon_sym_mutable] = ACTIONS(1884), [anon_sym_constexpr] = ACTIONS(1884), [anon_sym_signed] = ACTIONS(1884), [anon_sym_unsigned] = ACTIONS(1884), [anon_sym_long] = ACTIONS(1884), [anon_sym_short] = ACTIONS(1884), [sym_primitive_type] = ACTIONS(1884), [anon_sym_enum] = ACTIONS(1884), [anon_sym_class] = ACTIONS(1884), [anon_sym_struct] = ACTIONS(1884), [anon_sym_union] = ACTIONS(1884), [anon_sym_if] = ACTIONS(1884), [anon_sym_else] = ACTIONS(1884), [anon_sym_switch] = ACTIONS(1884), [anon_sym_while] = ACTIONS(1884), [anon_sym_do] = ACTIONS(1884), [anon_sym_for] = ACTIONS(1884), [anon_sym_return] = ACTIONS(1884), [anon_sym_break] = ACTIONS(1884), [anon_sym_continue] = ACTIONS(1884), [anon_sym_goto] = ACTIONS(1884), [anon_sym_DASH_DASH] = ACTIONS(1886), [anon_sym_PLUS_PLUS] = ACTIONS(1886), [anon_sym_sizeof] = ACTIONS(1884), [sym_number_literal] = ACTIONS(1886), [anon_sym_L_SQUOTE] = ACTIONS(1886), [anon_sym_u_SQUOTE] = ACTIONS(1886), [anon_sym_U_SQUOTE] = ACTIONS(1886), [anon_sym_u8_SQUOTE] = ACTIONS(1886), [anon_sym_SQUOTE] = ACTIONS(1886), [anon_sym_L_DQUOTE] = ACTIONS(1886), [anon_sym_u_DQUOTE] = ACTIONS(1886), [anon_sym_U_DQUOTE] = ACTIONS(1886), [anon_sym_u8_DQUOTE] = ACTIONS(1886), [anon_sym_DQUOTE] = ACTIONS(1886), [sym_true] = ACTIONS(1884), [sym_false] = ACTIONS(1884), [sym_null] = ACTIONS(1884), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1884), [anon_sym_virtual] = ACTIONS(1884), [sym_auto] = ACTIONS(1884), [anon_sym_typename] = ACTIONS(1884), [anon_sym_template] = ACTIONS(1884), [anon_sym_delete] = ACTIONS(1884), [anon_sym_throw] = ACTIONS(1884), [anon_sym_co_return] = ACTIONS(1884), [anon_sym_co_yield] = ACTIONS(1884), [anon_sym_try] = ACTIONS(1884), [anon_sym_co_await] = ACTIONS(1884), [anon_sym_new] = ACTIONS(1884), [sym_this] = ACTIONS(1884), [sym_nullptr] = ACTIONS(1884), [sym_raw_string_literal] = ACTIONS(1886), }, [885] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [886] = { [sym_identifier] = ACTIONS(1990), [anon_sym_LPAREN2] = ACTIONS(1992), [anon_sym_BANG] = ACTIONS(1992), [anon_sym_TILDE] = ACTIONS(1992), [anon_sym_DASH] = ACTIONS(1990), [anon_sym_PLUS] = ACTIONS(1990), [anon_sym_STAR] = ACTIONS(1992), [anon_sym_AMP] = ACTIONS(1992), [anon_sym_SEMI] = ACTIONS(1992), [anon_sym_typedef] = ACTIONS(1990), [anon_sym_extern] = ACTIONS(1990), [anon_sym___attribute__] = ACTIONS(1990), [anon_sym_COLON_COLON] = ACTIONS(1992), [anon_sym_LBRACK_LBRACK] = ACTIONS(1992), [anon_sym___declspec] = ACTIONS(1990), [anon_sym_LBRACE] = ACTIONS(1992), [anon_sym_LBRACK] = ACTIONS(1990), [anon_sym_static] = ACTIONS(1990), [anon_sym_register] = ACTIONS(1990), [anon_sym_inline] = ACTIONS(1990), [anon_sym_thread_local] = ACTIONS(1990), [anon_sym_const] = ACTIONS(1990), [anon_sym_volatile] = ACTIONS(1990), [anon_sym_restrict] = ACTIONS(1990), [anon_sym__Atomic] = ACTIONS(1990), [anon_sym_mutable] = ACTIONS(1990), [anon_sym_constexpr] = ACTIONS(1990), [anon_sym_signed] = ACTIONS(1990), [anon_sym_unsigned] = ACTIONS(1990), [anon_sym_long] = ACTIONS(1990), [anon_sym_short] = ACTIONS(1990), [sym_primitive_type] = ACTIONS(1990), [anon_sym_enum] = ACTIONS(1990), [anon_sym_class] = ACTIONS(1990), [anon_sym_struct] = ACTIONS(1990), [anon_sym_union] = ACTIONS(1990), [anon_sym_if] = ACTIONS(1990), [anon_sym_else] = ACTIONS(1990), [anon_sym_switch] = ACTIONS(1990), [anon_sym_while] = ACTIONS(1990), [anon_sym_do] = ACTIONS(1990), [anon_sym_for] = ACTIONS(1990), [anon_sym_return] = ACTIONS(1990), [anon_sym_break] = ACTIONS(1990), [anon_sym_continue] = ACTIONS(1990), [anon_sym_goto] = ACTIONS(1990), [anon_sym_DASH_DASH] = ACTIONS(1992), [anon_sym_PLUS_PLUS] = ACTIONS(1992), [anon_sym_sizeof] = ACTIONS(1990), [sym_number_literal] = ACTIONS(1992), [anon_sym_L_SQUOTE] = ACTIONS(1992), [anon_sym_u_SQUOTE] = ACTIONS(1992), [anon_sym_U_SQUOTE] = ACTIONS(1992), [anon_sym_u8_SQUOTE] = ACTIONS(1992), [anon_sym_SQUOTE] = ACTIONS(1992), [anon_sym_L_DQUOTE] = ACTIONS(1992), [anon_sym_u_DQUOTE] = ACTIONS(1992), [anon_sym_U_DQUOTE] = ACTIONS(1992), [anon_sym_u8_DQUOTE] = ACTIONS(1992), [anon_sym_DQUOTE] = ACTIONS(1992), [sym_true] = ACTIONS(1990), [sym_false] = ACTIONS(1990), [sym_null] = ACTIONS(1990), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1990), [anon_sym_virtual] = ACTIONS(1990), [sym_auto] = ACTIONS(1990), [anon_sym_typename] = ACTIONS(1990), [anon_sym_template] = ACTIONS(1990), [anon_sym_delete] = ACTIONS(1990), [anon_sym_throw] = ACTIONS(1990), [anon_sym_co_return] = ACTIONS(1990), [anon_sym_co_yield] = ACTIONS(1990), [anon_sym_try] = ACTIONS(1990), [anon_sym_co_await] = ACTIONS(1990), [anon_sym_new] = ACTIONS(1990), [sym_this] = ACTIONS(1990), [sym_nullptr] = ACTIONS(1990), [sym_raw_string_literal] = ACTIONS(1992), }, [887] = { [sym_identifier] = ACTIONS(1926), [anon_sym_LPAREN2] = ACTIONS(1928), [anon_sym_BANG] = ACTIONS(1928), [anon_sym_TILDE] = ACTIONS(1928), [anon_sym_DASH] = ACTIONS(1926), [anon_sym_PLUS] = ACTIONS(1926), [anon_sym_STAR] = ACTIONS(1928), [anon_sym_AMP] = ACTIONS(1928), [anon_sym_SEMI] = ACTIONS(1928), [anon_sym_typedef] = ACTIONS(1926), [anon_sym_extern] = ACTIONS(1926), [anon_sym___attribute__] = ACTIONS(1926), [anon_sym_COLON_COLON] = ACTIONS(1928), [anon_sym_LBRACK_LBRACK] = ACTIONS(1928), [anon_sym___declspec] = ACTIONS(1926), [anon_sym_LBRACE] = ACTIONS(1928), [anon_sym_LBRACK] = ACTIONS(1926), [anon_sym_static] = ACTIONS(1926), [anon_sym_register] = ACTIONS(1926), [anon_sym_inline] = ACTIONS(1926), [anon_sym_thread_local] = ACTIONS(1926), [anon_sym_const] = ACTIONS(1926), [anon_sym_volatile] = ACTIONS(1926), [anon_sym_restrict] = ACTIONS(1926), [anon_sym__Atomic] = ACTIONS(1926), [anon_sym_mutable] = ACTIONS(1926), [anon_sym_constexpr] = ACTIONS(1926), [anon_sym_signed] = ACTIONS(1926), [anon_sym_unsigned] = ACTIONS(1926), [anon_sym_long] = ACTIONS(1926), [anon_sym_short] = ACTIONS(1926), [sym_primitive_type] = ACTIONS(1926), [anon_sym_enum] = ACTIONS(1926), [anon_sym_class] = ACTIONS(1926), [anon_sym_struct] = ACTIONS(1926), [anon_sym_union] = ACTIONS(1926), [anon_sym_if] = ACTIONS(1926), [anon_sym_else] = ACTIONS(2525), [anon_sym_switch] = ACTIONS(1926), [anon_sym_while] = ACTIONS(1926), [anon_sym_do] = ACTIONS(1926), [anon_sym_for] = ACTIONS(1926), [anon_sym_return] = ACTIONS(1926), [anon_sym_break] = ACTIONS(1926), [anon_sym_continue] = ACTIONS(1926), [anon_sym_goto] = ACTIONS(1926), [anon_sym_DASH_DASH] = ACTIONS(1928), [anon_sym_PLUS_PLUS] = ACTIONS(1928), [anon_sym_sizeof] = ACTIONS(1926), [sym_number_literal] = ACTIONS(1928), [anon_sym_L_SQUOTE] = ACTIONS(1928), [anon_sym_u_SQUOTE] = ACTIONS(1928), [anon_sym_U_SQUOTE] = ACTIONS(1928), [anon_sym_u8_SQUOTE] = ACTIONS(1928), [anon_sym_SQUOTE] = ACTIONS(1928), [anon_sym_L_DQUOTE] = ACTIONS(1928), [anon_sym_u_DQUOTE] = ACTIONS(1928), [anon_sym_U_DQUOTE] = ACTIONS(1928), [anon_sym_u8_DQUOTE] = ACTIONS(1928), [anon_sym_DQUOTE] = ACTIONS(1928), [sym_true] = ACTIONS(1926), [sym_false] = ACTIONS(1926), [sym_null] = ACTIONS(1926), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1926), [anon_sym_virtual] = ACTIONS(1926), [sym_auto] = ACTIONS(1926), [anon_sym_typename] = ACTIONS(1926), [anon_sym_template] = ACTIONS(1926), [anon_sym_delete] = ACTIONS(1926), [anon_sym_throw] = ACTIONS(1926), [anon_sym_co_return] = ACTIONS(1926), [anon_sym_co_yield] = ACTIONS(1926), [anon_sym_try] = ACTIONS(1926), [anon_sym_co_await] = ACTIONS(1926), [anon_sym_new] = ACTIONS(1926), [sym_this] = ACTIONS(1926), [sym_nullptr] = ACTIONS(1926), [sym_raw_string_literal] = ACTIONS(1928), }, [888] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [889] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [890] = { [sym_identifier] = ACTIONS(1840), [anon_sym_LPAREN2] = ACTIONS(1842), [anon_sym_BANG] = ACTIONS(1842), [anon_sym_TILDE] = ACTIONS(1842), [anon_sym_DASH] = ACTIONS(1840), [anon_sym_PLUS] = ACTIONS(1840), [anon_sym_STAR] = ACTIONS(1842), [anon_sym_AMP] = ACTIONS(1842), [anon_sym_SEMI] = ACTIONS(1842), [anon_sym_typedef] = ACTIONS(1840), [anon_sym_extern] = ACTIONS(1840), [anon_sym___attribute__] = ACTIONS(1840), [anon_sym_COLON_COLON] = ACTIONS(1842), [anon_sym_LBRACK_LBRACK] = ACTIONS(1842), [anon_sym___declspec] = ACTIONS(1840), [anon_sym_LBRACE] = ACTIONS(1842), [anon_sym_LBRACK] = ACTIONS(1840), [anon_sym_static] = ACTIONS(1840), [anon_sym_register] = ACTIONS(1840), [anon_sym_inline] = ACTIONS(1840), [anon_sym_thread_local] = ACTIONS(1840), [anon_sym_const] = ACTIONS(1840), [anon_sym_volatile] = ACTIONS(1840), [anon_sym_restrict] = ACTIONS(1840), [anon_sym__Atomic] = ACTIONS(1840), [anon_sym_mutable] = ACTIONS(1840), [anon_sym_constexpr] = ACTIONS(1840), [anon_sym_signed] = ACTIONS(1840), [anon_sym_unsigned] = ACTIONS(1840), [anon_sym_long] = ACTIONS(1840), [anon_sym_short] = ACTIONS(1840), [sym_primitive_type] = ACTIONS(1840), [anon_sym_enum] = ACTIONS(1840), [anon_sym_class] = ACTIONS(1840), [anon_sym_struct] = ACTIONS(1840), [anon_sym_union] = ACTIONS(1840), [anon_sym_if] = ACTIONS(1840), [anon_sym_else] = ACTIONS(1840), [anon_sym_switch] = ACTIONS(1840), [anon_sym_while] = ACTIONS(1840), [anon_sym_do] = ACTIONS(1840), [anon_sym_for] = ACTIONS(1840), [anon_sym_return] = ACTIONS(1840), [anon_sym_break] = ACTIONS(1840), [anon_sym_continue] = ACTIONS(1840), [anon_sym_goto] = ACTIONS(1840), [anon_sym_DASH_DASH] = ACTIONS(1842), [anon_sym_PLUS_PLUS] = ACTIONS(1842), [anon_sym_sizeof] = ACTIONS(1840), [sym_number_literal] = ACTIONS(1842), [anon_sym_L_SQUOTE] = ACTIONS(1842), [anon_sym_u_SQUOTE] = ACTIONS(1842), [anon_sym_U_SQUOTE] = ACTIONS(1842), [anon_sym_u8_SQUOTE] = ACTIONS(1842), [anon_sym_SQUOTE] = ACTIONS(1842), [anon_sym_L_DQUOTE] = ACTIONS(1842), [anon_sym_u_DQUOTE] = ACTIONS(1842), [anon_sym_U_DQUOTE] = ACTIONS(1842), [anon_sym_u8_DQUOTE] = ACTIONS(1842), [anon_sym_DQUOTE] = ACTIONS(1842), [sym_true] = ACTIONS(1840), [sym_false] = ACTIONS(1840), [sym_null] = ACTIONS(1840), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1840), [anon_sym_virtual] = ACTIONS(1840), [sym_auto] = ACTIONS(1840), [anon_sym_typename] = ACTIONS(1840), [anon_sym_template] = ACTIONS(1840), [anon_sym_delete] = ACTIONS(1840), [anon_sym_throw] = ACTIONS(1840), [anon_sym_co_return] = ACTIONS(1840), [anon_sym_co_yield] = ACTIONS(1840), [anon_sym_try] = ACTIONS(1840), [anon_sym_co_await] = ACTIONS(1840), [anon_sym_new] = ACTIONS(1840), [sym_this] = ACTIONS(1840), [sym_nullptr] = ACTIONS(1840), [sym_raw_string_literal] = ACTIONS(1842), }, [891] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [892] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [893] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [894] = { [sym_identifier] = ACTIONS(1844), [anon_sym_LPAREN2] = ACTIONS(1846), [anon_sym_BANG] = ACTIONS(1846), [anon_sym_TILDE] = ACTIONS(1846), [anon_sym_DASH] = ACTIONS(1844), [anon_sym_PLUS] = ACTIONS(1844), [anon_sym_STAR] = ACTIONS(1846), [anon_sym_AMP] = ACTIONS(1846), [anon_sym_SEMI] = ACTIONS(1846), [anon_sym_typedef] = ACTIONS(1844), [anon_sym_extern] = ACTIONS(1844), [anon_sym___attribute__] = ACTIONS(1844), [anon_sym_COLON_COLON] = ACTIONS(1846), [anon_sym_LBRACK_LBRACK] = ACTIONS(1846), [anon_sym___declspec] = ACTIONS(1844), [anon_sym_LBRACE] = ACTIONS(1846), [anon_sym_LBRACK] = ACTIONS(1844), [anon_sym_static] = ACTIONS(1844), [anon_sym_register] = ACTIONS(1844), [anon_sym_inline] = ACTIONS(1844), [anon_sym_thread_local] = ACTIONS(1844), [anon_sym_const] = ACTIONS(1844), [anon_sym_volatile] = ACTIONS(1844), [anon_sym_restrict] = ACTIONS(1844), [anon_sym__Atomic] = ACTIONS(1844), [anon_sym_mutable] = ACTIONS(1844), [anon_sym_constexpr] = ACTIONS(1844), [anon_sym_signed] = ACTIONS(1844), [anon_sym_unsigned] = ACTIONS(1844), [anon_sym_long] = ACTIONS(1844), [anon_sym_short] = ACTIONS(1844), [sym_primitive_type] = ACTIONS(1844), [anon_sym_enum] = ACTIONS(1844), [anon_sym_class] = ACTIONS(1844), [anon_sym_struct] = ACTIONS(1844), [anon_sym_union] = ACTIONS(1844), [anon_sym_if] = ACTIONS(1844), [anon_sym_else] = ACTIONS(1844), [anon_sym_switch] = ACTIONS(1844), [anon_sym_while] = ACTIONS(1844), [anon_sym_do] = ACTIONS(1844), [anon_sym_for] = ACTIONS(1844), [anon_sym_return] = ACTIONS(1844), [anon_sym_break] = ACTIONS(1844), [anon_sym_continue] = ACTIONS(1844), [anon_sym_goto] = ACTIONS(1844), [anon_sym_DASH_DASH] = ACTIONS(1846), [anon_sym_PLUS_PLUS] = ACTIONS(1846), [anon_sym_sizeof] = ACTIONS(1844), [sym_number_literal] = ACTIONS(1846), [anon_sym_L_SQUOTE] = ACTIONS(1846), [anon_sym_u_SQUOTE] = ACTIONS(1846), [anon_sym_U_SQUOTE] = ACTIONS(1846), [anon_sym_u8_SQUOTE] = ACTIONS(1846), [anon_sym_SQUOTE] = ACTIONS(1846), [anon_sym_L_DQUOTE] = ACTIONS(1846), [anon_sym_u_DQUOTE] = ACTIONS(1846), [anon_sym_U_DQUOTE] = ACTIONS(1846), [anon_sym_u8_DQUOTE] = ACTIONS(1846), [anon_sym_DQUOTE] = ACTIONS(1846), [sym_true] = ACTIONS(1844), [sym_false] = ACTIONS(1844), [sym_null] = ACTIONS(1844), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1844), [anon_sym_virtual] = ACTIONS(1844), [sym_auto] = ACTIONS(1844), [anon_sym_typename] = ACTIONS(1844), [anon_sym_template] = ACTIONS(1844), [anon_sym_delete] = ACTIONS(1844), [anon_sym_throw] = ACTIONS(1844), [anon_sym_co_return] = ACTIONS(1844), [anon_sym_co_yield] = ACTIONS(1844), [anon_sym_try] = ACTIONS(1844), [anon_sym_co_await] = ACTIONS(1844), [anon_sym_new] = ACTIONS(1844), [sym_this] = ACTIONS(1844), [sym_nullptr] = ACTIONS(1844), [sym_raw_string_literal] = ACTIONS(1846), }, [895] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [896] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [897] = { [sym_identifier] = ACTIONS(1844), [anon_sym_LPAREN2] = ACTIONS(1846), [anon_sym_BANG] = ACTIONS(1846), [anon_sym_TILDE] = ACTIONS(1846), [anon_sym_DASH] = ACTIONS(1844), [anon_sym_PLUS] = ACTIONS(1844), [anon_sym_STAR] = ACTIONS(1846), [anon_sym_AMP] = ACTIONS(1846), [anon_sym_SEMI] = ACTIONS(1846), [anon_sym_typedef] = ACTIONS(1844), [anon_sym_extern] = ACTIONS(1844), [anon_sym___attribute__] = ACTIONS(1844), [anon_sym_COLON_COLON] = ACTIONS(1846), [anon_sym_LBRACK_LBRACK] = ACTIONS(1846), [anon_sym___declspec] = ACTIONS(1844), [anon_sym_LBRACE] = ACTIONS(1846), [anon_sym_LBRACK] = ACTIONS(1844), [anon_sym_static] = ACTIONS(1844), [anon_sym_register] = ACTIONS(1844), [anon_sym_inline] = ACTIONS(1844), [anon_sym_thread_local] = ACTIONS(1844), [anon_sym_const] = ACTIONS(1844), [anon_sym_volatile] = ACTIONS(1844), [anon_sym_restrict] = ACTIONS(1844), [anon_sym__Atomic] = ACTIONS(1844), [anon_sym_mutable] = ACTIONS(1844), [anon_sym_constexpr] = ACTIONS(1844), [anon_sym_signed] = ACTIONS(1844), [anon_sym_unsigned] = ACTIONS(1844), [anon_sym_long] = ACTIONS(1844), [anon_sym_short] = ACTIONS(1844), [sym_primitive_type] = ACTIONS(1844), [anon_sym_enum] = ACTIONS(1844), [anon_sym_class] = ACTIONS(1844), [anon_sym_struct] = ACTIONS(1844), [anon_sym_union] = ACTIONS(1844), [anon_sym_if] = ACTIONS(1844), [anon_sym_else] = ACTIONS(1844), [anon_sym_switch] = ACTIONS(1844), [anon_sym_while] = ACTIONS(1844), [anon_sym_do] = ACTIONS(1844), [anon_sym_for] = ACTIONS(1844), [anon_sym_return] = ACTIONS(1844), [anon_sym_break] = ACTIONS(1844), [anon_sym_continue] = ACTIONS(1844), [anon_sym_goto] = ACTIONS(1844), [anon_sym_DASH_DASH] = ACTIONS(1846), [anon_sym_PLUS_PLUS] = ACTIONS(1846), [anon_sym_sizeof] = ACTIONS(1844), [sym_number_literal] = ACTIONS(1846), [anon_sym_L_SQUOTE] = ACTIONS(1846), [anon_sym_u_SQUOTE] = ACTIONS(1846), [anon_sym_U_SQUOTE] = ACTIONS(1846), [anon_sym_u8_SQUOTE] = ACTIONS(1846), [anon_sym_SQUOTE] = ACTIONS(1846), [anon_sym_L_DQUOTE] = ACTIONS(1846), [anon_sym_u_DQUOTE] = ACTIONS(1846), [anon_sym_U_DQUOTE] = ACTIONS(1846), [anon_sym_u8_DQUOTE] = ACTIONS(1846), [anon_sym_DQUOTE] = ACTIONS(1846), [sym_true] = ACTIONS(1844), [sym_false] = ACTIONS(1844), [sym_null] = ACTIONS(1844), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1844), [anon_sym_virtual] = ACTIONS(1844), [sym_auto] = ACTIONS(1844), [anon_sym_typename] = ACTIONS(1844), [anon_sym_template] = ACTIONS(1844), [anon_sym_delete] = ACTIONS(1844), [anon_sym_throw] = ACTIONS(1844), [anon_sym_co_return] = ACTIONS(1844), [anon_sym_co_yield] = ACTIONS(1844), [anon_sym_try] = ACTIONS(1844), [anon_sym_co_await] = ACTIONS(1844), [anon_sym_new] = ACTIONS(1844), [sym_this] = ACTIONS(1844), [sym_nullptr] = ACTIONS(1844), [sym_raw_string_literal] = ACTIONS(1846), }, [898] = { [sym_identifier] = ACTIONS(1864), [anon_sym_LPAREN2] = ACTIONS(1866), [anon_sym_BANG] = ACTIONS(1866), [anon_sym_TILDE] = ACTIONS(1866), [anon_sym_DASH] = ACTIONS(1864), [anon_sym_PLUS] = ACTIONS(1864), [anon_sym_STAR] = ACTIONS(1866), [anon_sym_AMP] = ACTIONS(1866), [anon_sym_SEMI] = ACTIONS(1866), [anon_sym_typedef] = ACTIONS(1864), [anon_sym_extern] = ACTIONS(1864), [anon_sym___attribute__] = ACTIONS(1864), [anon_sym_COLON_COLON] = ACTIONS(1866), [anon_sym_LBRACK_LBRACK] = ACTIONS(1866), [anon_sym___declspec] = ACTIONS(1864), [anon_sym_LBRACE] = ACTIONS(1866), [anon_sym_LBRACK] = ACTIONS(1864), [anon_sym_static] = ACTIONS(1864), [anon_sym_register] = ACTIONS(1864), [anon_sym_inline] = ACTIONS(1864), [anon_sym_thread_local] = ACTIONS(1864), [anon_sym_const] = ACTIONS(1864), [anon_sym_volatile] = ACTIONS(1864), [anon_sym_restrict] = ACTIONS(1864), [anon_sym__Atomic] = ACTIONS(1864), [anon_sym_mutable] = ACTIONS(1864), [anon_sym_constexpr] = ACTIONS(1864), [anon_sym_signed] = ACTIONS(1864), [anon_sym_unsigned] = ACTIONS(1864), [anon_sym_long] = ACTIONS(1864), [anon_sym_short] = ACTIONS(1864), [sym_primitive_type] = ACTIONS(1864), [anon_sym_enum] = ACTIONS(1864), [anon_sym_class] = ACTIONS(1864), [anon_sym_struct] = ACTIONS(1864), [anon_sym_union] = ACTIONS(1864), [anon_sym_if] = ACTIONS(1864), [anon_sym_else] = ACTIONS(1864), [anon_sym_switch] = ACTIONS(1864), [anon_sym_while] = ACTIONS(1864), [anon_sym_do] = ACTIONS(1864), [anon_sym_for] = ACTIONS(1864), [anon_sym_return] = ACTIONS(1864), [anon_sym_break] = ACTIONS(1864), [anon_sym_continue] = ACTIONS(1864), [anon_sym_goto] = ACTIONS(1864), [anon_sym_DASH_DASH] = ACTIONS(1866), [anon_sym_PLUS_PLUS] = ACTIONS(1866), [anon_sym_sizeof] = ACTIONS(1864), [sym_number_literal] = ACTIONS(1866), [anon_sym_L_SQUOTE] = ACTIONS(1866), [anon_sym_u_SQUOTE] = ACTIONS(1866), [anon_sym_U_SQUOTE] = ACTIONS(1866), [anon_sym_u8_SQUOTE] = ACTIONS(1866), [anon_sym_SQUOTE] = ACTIONS(1866), [anon_sym_L_DQUOTE] = ACTIONS(1866), [anon_sym_u_DQUOTE] = ACTIONS(1866), [anon_sym_U_DQUOTE] = ACTIONS(1866), [anon_sym_u8_DQUOTE] = ACTIONS(1866), [anon_sym_DQUOTE] = ACTIONS(1866), [sym_true] = ACTIONS(1864), [sym_false] = ACTIONS(1864), [sym_null] = ACTIONS(1864), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1864), [anon_sym_virtual] = ACTIONS(1864), [sym_auto] = ACTIONS(1864), [anon_sym_typename] = ACTIONS(1864), [anon_sym_template] = ACTIONS(1864), [anon_sym_delete] = ACTIONS(1864), [anon_sym_throw] = ACTIONS(1864), [anon_sym_co_return] = ACTIONS(1864), [anon_sym_co_yield] = ACTIONS(1864), [anon_sym_try] = ACTIONS(1864), [anon_sym_co_await] = ACTIONS(1864), [anon_sym_new] = ACTIONS(1864), [sym_this] = ACTIONS(1864), [sym_nullptr] = ACTIONS(1864), [sym_raw_string_literal] = ACTIONS(1866), }, [899] = { [sym_identifier] = ACTIONS(1836), [anon_sym_LPAREN2] = ACTIONS(1838), [anon_sym_BANG] = ACTIONS(1838), [anon_sym_TILDE] = ACTIONS(1838), [anon_sym_DASH] = ACTIONS(1836), [anon_sym_PLUS] = ACTIONS(1836), [anon_sym_STAR] = ACTIONS(1838), [anon_sym_AMP] = ACTIONS(1838), [anon_sym_SEMI] = ACTIONS(1838), [anon_sym_typedef] = ACTIONS(1836), [anon_sym_extern] = ACTIONS(1836), [anon_sym___attribute__] = ACTIONS(1836), [anon_sym_COLON_COLON] = ACTIONS(1838), [anon_sym_LBRACK_LBRACK] = ACTIONS(1838), [anon_sym___declspec] = ACTIONS(1836), [anon_sym_LBRACE] = ACTIONS(1838), [anon_sym_LBRACK] = ACTIONS(1836), [anon_sym_static] = ACTIONS(1836), [anon_sym_register] = ACTIONS(1836), [anon_sym_inline] = ACTIONS(1836), [anon_sym_thread_local] = ACTIONS(1836), [anon_sym_const] = ACTIONS(1836), [anon_sym_volatile] = ACTIONS(1836), [anon_sym_restrict] = ACTIONS(1836), [anon_sym__Atomic] = ACTIONS(1836), [anon_sym_mutable] = ACTIONS(1836), [anon_sym_constexpr] = ACTIONS(1836), [anon_sym_signed] = ACTIONS(1836), [anon_sym_unsigned] = ACTIONS(1836), [anon_sym_long] = ACTIONS(1836), [anon_sym_short] = ACTIONS(1836), [sym_primitive_type] = ACTIONS(1836), [anon_sym_enum] = ACTIONS(1836), [anon_sym_class] = ACTIONS(1836), [anon_sym_struct] = ACTIONS(1836), [anon_sym_union] = ACTIONS(1836), [anon_sym_if] = ACTIONS(1836), [anon_sym_else] = ACTIONS(1836), [anon_sym_switch] = ACTIONS(1836), [anon_sym_while] = ACTIONS(1836), [anon_sym_do] = ACTIONS(1836), [anon_sym_for] = ACTIONS(1836), [anon_sym_return] = ACTIONS(1836), [anon_sym_break] = ACTIONS(1836), [anon_sym_continue] = ACTIONS(1836), [anon_sym_goto] = ACTIONS(1836), [anon_sym_DASH_DASH] = ACTIONS(1838), [anon_sym_PLUS_PLUS] = ACTIONS(1838), [anon_sym_sizeof] = ACTIONS(1836), [sym_number_literal] = ACTIONS(1838), [anon_sym_L_SQUOTE] = ACTIONS(1838), [anon_sym_u_SQUOTE] = ACTIONS(1838), [anon_sym_U_SQUOTE] = ACTIONS(1838), [anon_sym_u8_SQUOTE] = ACTIONS(1838), [anon_sym_SQUOTE] = ACTIONS(1838), [anon_sym_L_DQUOTE] = ACTIONS(1838), [anon_sym_u_DQUOTE] = ACTIONS(1838), [anon_sym_U_DQUOTE] = ACTIONS(1838), [anon_sym_u8_DQUOTE] = ACTIONS(1838), [anon_sym_DQUOTE] = ACTIONS(1838), [sym_true] = ACTIONS(1836), [sym_false] = ACTIONS(1836), [sym_null] = ACTIONS(1836), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1836), [anon_sym_virtual] = ACTIONS(1836), [sym_auto] = ACTIONS(1836), [anon_sym_typename] = ACTIONS(1836), [anon_sym_template] = ACTIONS(1836), [anon_sym_delete] = ACTIONS(1836), [anon_sym_throw] = ACTIONS(1836), [anon_sym_co_return] = ACTIONS(1836), [anon_sym_co_yield] = ACTIONS(1836), [anon_sym_try] = ACTIONS(1836), [anon_sym_co_await] = ACTIONS(1836), [anon_sym_new] = ACTIONS(1836), [sym_this] = ACTIONS(1836), [sym_nullptr] = ACTIONS(1836), [sym_raw_string_literal] = ACTIONS(1838), }, [900] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [901] = { [sym_identifier] = ACTIONS(1868), [anon_sym_LPAREN2] = ACTIONS(1870), [anon_sym_BANG] = ACTIONS(1870), [anon_sym_TILDE] = ACTIONS(1870), [anon_sym_DASH] = ACTIONS(1868), [anon_sym_PLUS] = ACTIONS(1868), [anon_sym_STAR] = ACTIONS(1870), [anon_sym_AMP] = ACTIONS(1870), [anon_sym_SEMI] = ACTIONS(1870), [anon_sym_typedef] = ACTIONS(1868), [anon_sym_extern] = ACTIONS(1868), [anon_sym___attribute__] = ACTIONS(1868), [anon_sym_COLON_COLON] = ACTIONS(1870), [anon_sym_LBRACK_LBRACK] = ACTIONS(1870), [anon_sym___declspec] = ACTIONS(1868), [anon_sym_LBRACE] = ACTIONS(1870), [anon_sym_LBRACK] = ACTIONS(1868), [anon_sym_static] = ACTIONS(1868), [anon_sym_register] = ACTIONS(1868), [anon_sym_inline] = ACTIONS(1868), [anon_sym_thread_local] = ACTIONS(1868), [anon_sym_const] = ACTIONS(1868), [anon_sym_volatile] = ACTIONS(1868), [anon_sym_restrict] = ACTIONS(1868), [anon_sym__Atomic] = ACTIONS(1868), [anon_sym_mutable] = ACTIONS(1868), [anon_sym_constexpr] = ACTIONS(1868), [anon_sym_signed] = ACTIONS(1868), [anon_sym_unsigned] = ACTIONS(1868), [anon_sym_long] = ACTIONS(1868), [anon_sym_short] = ACTIONS(1868), [sym_primitive_type] = ACTIONS(1868), [anon_sym_enum] = ACTIONS(1868), [anon_sym_class] = ACTIONS(1868), [anon_sym_struct] = ACTIONS(1868), [anon_sym_union] = ACTIONS(1868), [anon_sym_if] = ACTIONS(1868), [anon_sym_else] = ACTIONS(1868), [anon_sym_switch] = ACTIONS(1868), [anon_sym_while] = ACTIONS(1868), [anon_sym_do] = ACTIONS(1868), [anon_sym_for] = ACTIONS(1868), [anon_sym_return] = ACTIONS(1868), [anon_sym_break] = ACTIONS(1868), [anon_sym_continue] = ACTIONS(1868), [anon_sym_goto] = ACTIONS(1868), [anon_sym_DASH_DASH] = ACTIONS(1870), [anon_sym_PLUS_PLUS] = ACTIONS(1870), [anon_sym_sizeof] = ACTIONS(1868), [sym_number_literal] = ACTIONS(1870), [anon_sym_L_SQUOTE] = ACTIONS(1870), [anon_sym_u_SQUOTE] = ACTIONS(1870), [anon_sym_U_SQUOTE] = ACTIONS(1870), [anon_sym_u8_SQUOTE] = ACTIONS(1870), [anon_sym_SQUOTE] = ACTIONS(1870), [anon_sym_L_DQUOTE] = ACTIONS(1870), [anon_sym_u_DQUOTE] = ACTIONS(1870), [anon_sym_U_DQUOTE] = ACTIONS(1870), [anon_sym_u8_DQUOTE] = ACTIONS(1870), [anon_sym_DQUOTE] = ACTIONS(1870), [sym_true] = ACTIONS(1868), [sym_false] = ACTIONS(1868), [sym_null] = ACTIONS(1868), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1868), [anon_sym_virtual] = ACTIONS(1868), [sym_auto] = ACTIONS(1868), [anon_sym_typename] = ACTIONS(1868), [anon_sym_template] = ACTIONS(1868), [anon_sym_delete] = ACTIONS(1868), [anon_sym_throw] = ACTIONS(1868), [anon_sym_co_return] = ACTIONS(1868), [anon_sym_co_yield] = ACTIONS(1868), [anon_sym_try] = ACTIONS(1868), [anon_sym_co_await] = ACTIONS(1868), [anon_sym_new] = ACTIONS(1868), [sym_this] = ACTIONS(1868), [sym_nullptr] = ACTIONS(1868), [sym_raw_string_literal] = ACTIONS(1870), }, [902] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [903] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [904] = { [sym_identifier] = ACTIONS(2014), [anon_sym_LPAREN2] = ACTIONS(2016), [anon_sym_BANG] = ACTIONS(2016), [anon_sym_TILDE] = ACTIONS(2016), [anon_sym_DASH] = ACTIONS(2014), [anon_sym_PLUS] = ACTIONS(2014), [anon_sym_STAR] = ACTIONS(2016), [anon_sym_AMP] = ACTIONS(2016), [anon_sym_SEMI] = ACTIONS(2016), [anon_sym_typedef] = ACTIONS(2014), [anon_sym_extern] = ACTIONS(2014), [anon_sym___attribute__] = ACTIONS(2014), [anon_sym_COLON_COLON] = ACTIONS(2016), [anon_sym_LBRACK_LBRACK] = ACTIONS(2016), [anon_sym___declspec] = ACTIONS(2014), [anon_sym_LBRACE] = ACTIONS(2016), [anon_sym_LBRACK] = ACTIONS(2014), [anon_sym_static] = ACTIONS(2014), [anon_sym_register] = ACTIONS(2014), [anon_sym_inline] = ACTIONS(2014), [anon_sym_thread_local] = ACTIONS(2014), [anon_sym_const] = ACTIONS(2014), [anon_sym_volatile] = ACTIONS(2014), [anon_sym_restrict] = ACTIONS(2014), [anon_sym__Atomic] = ACTIONS(2014), [anon_sym_mutable] = ACTIONS(2014), [anon_sym_constexpr] = ACTIONS(2014), [anon_sym_signed] = ACTIONS(2014), [anon_sym_unsigned] = ACTIONS(2014), [anon_sym_long] = ACTIONS(2014), [anon_sym_short] = ACTIONS(2014), [sym_primitive_type] = ACTIONS(2014), [anon_sym_enum] = ACTIONS(2014), [anon_sym_class] = ACTIONS(2014), [anon_sym_struct] = ACTIONS(2014), [anon_sym_union] = ACTIONS(2014), [anon_sym_if] = ACTIONS(2014), [anon_sym_else] = ACTIONS(2014), [anon_sym_switch] = ACTIONS(2014), [anon_sym_while] = ACTIONS(2014), [anon_sym_do] = ACTIONS(2014), [anon_sym_for] = ACTIONS(2014), [anon_sym_return] = ACTIONS(2014), [anon_sym_break] = ACTIONS(2014), [anon_sym_continue] = ACTIONS(2014), [anon_sym_goto] = ACTIONS(2014), [anon_sym_DASH_DASH] = ACTIONS(2016), [anon_sym_PLUS_PLUS] = ACTIONS(2016), [anon_sym_sizeof] = ACTIONS(2014), [sym_number_literal] = ACTIONS(2016), [anon_sym_L_SQUOTE] = ACTIONS(2016), [anon_sym_u_SQUOTE] = ACTIONS(2016), [anon_sym_U_SQUOTE] = ACTIONS(2016), [anon_sym_u8_SQUOTE] = ACTIONS(2016), [anon_sym_SQUOTE] = ACTIONS(2016), [anon_sym_L_DQUOTE] = ACTIONS(2016), [anon_sym_u_DQUOTE] = ACTIONS(2016), [anon_sym_U_DQUOTE] = ACTIONS(2016), [anon_sym_u8_DQUOTE] = ACTIONS(2016), [anon_sym_DQUOTE] = ACTIONS(2016), [sym_true] = ACTIONS(2014), [sym_false] = ACTIONS(2014), [sym_null] = ACTIONS(2014), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2014), [anon_sym_virtual] = ACTIONS(2014), [sym_auto] = ACTIONS(2014), [anon_sym_typename] = ACTIONS(2014), [anon_sym_template] = ACTIONS(2014), [anon_sym_delete] = ACTIONS(2014), [anon_sym_throw] = ACTIONS(2014), [anon_sym_co_return] = ACTIONS(2014), [anon_sym_co_yield] = ACTIONS(2014), [anon_sym_try] = ACTIONS(2014), [anon_sym_co_await] = ACTIONS(2014), [anon_sym_new] = ACTIONS(2014), [sym_this] = ACTIONS(2014), [sym_nullptr] = ACTIONS(2014), [sym_raw_string_literal] = ACTIONS(2016), }, [905] = { [sym_identifier] = ACTIONS(1922), [anon_sym_LPAREN2] = ACTIONS(1924), [anon_sym_BANG] = ACTIONS(1924), [anon_sym_TILDE] = ACTIONS(1924), [anon_sym_DASH] = ACTIONS(1922), [anon_sym_PLUS] = ACTIONS(1922), [anon_sym_STAR] = ACTIONS(1924), [anon_sym_AMP] = ACTIONS(1924), [anon_sym_SEMI] = ACTIONS(1924), [anon_sym_typedef] = ACTIONS(1922), [anon_sym_extern] = ACTIONS(1922), [anon_sym___attribute__] = ACTIONS(1922), [anon_sym_COLON_COLON] = ACTIONS(1924), [anon_sym_LBRACK_LBRACK] = ACTIONS(1924), [anon_sym___declspec] = ACTIONS(1922), [anon_sym_LBRACE] = ACTIONS(1924), [anon_sym_LBRACK] = ACTIONS(1922), [anon_sym_static] = ACTIONS(1922), [anon_sym_register] = ACTIONS(1922), [anon_sym_inline] = ACTIONS(1922), [anon_sym_thread_local] = ACTIONS(1922), [anon_sym_const] = ACTIONS(1922), [anon_sym_volatile] = ACTIONS(1922), [anon_sym_restrict] = ACTIONS(1922), [anon_sym__Atomic] = ACTIONS(1922), [anon_sym_mutable] = ACTIONS(1922), [anon_sym_constexpr] = ACTIONS(1922), [anon_sym_signed] = ACTIONS(1922), [anon_sym_unsigned] = ACTIONS(1922), [anon_sym_long] = ACTIONS(1922), [anon_sym_short] = ACTIONS(1922), [sym_primitive_type] = ACTIONS(1922), [anon_sym_enum] = ACTIONS(1922), [anon_sym_class] = ACTIONS(1922), [anon_sym_struct] = ACTIONS(1922), [anon_sym_union] = ACTIONS(1922), [anon_sym_if] = ACTIONS(1922), [anon_sym_else] = ACTIONS(1922), [anon_sym_switch] = ACTIONS(1922), [anon_sym_while] = ACTIONS(1922), [anon_sym_do] = ACTIONS(1922), [anon_sym_for] = ACTIONS(1922), [anon_sym_return] = ACTIONS(1922), [anon_sym_break] = ACTIONS(1922), [anon_sym_continue] = ACTIONS(1922), [anon_sym_goto] = ACTIONS(1922), [anon_sym_DASH_DASH] = ACTIONS(1924), [anon_sym_PLUS_PLUS] = ACTIONS(1924), [anon_sym_sizeof] = ACTIONS(1922), [sym_number_literal] = ACTIONS(1924), [anon_sym_L_SQUOTE] = ACTIONS(1924), [anon_sym_u_SQUOTE] = ACTIONS(1924), [anon_sym_U_SQUOTE] = ACTIONS(1924), [anon_sym_u8_SQUOTE] = ACTIONS(1924), [anon_sym_SQUOTE] = ACTIONS(1924), [anon_sym_L_DQUOTE] = ACTIONS(1924), [anon_sym_u_DQUOTE] = ACTIONS(1924), [anon_sym_U_DQUOTE] = ACTIONS(1924), [anon_sym_u8_DQUOTE] = ACTIONS(1924), [anon_sym_DQUOTE] = ACTIONS(1924), [sym_true] = ACTIONS(1922), [sym_false] = ACTIONS(1922), [sym_null] = ACTIONS(1922), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1922), [anon_sym_virtual] = ACTIONS(1922), [sym_auto] = ACTIONS(1922), [anon_sym_typename] = ACTIONS(1922), [anon_sym_template] = ACTIONS(1922), [anon_sym_delete] = ACTIONS(1922), [anon_sym_throw] = ACTIONS(1922), [anon_sym_co_return] = ACTIONS(1922), [anon_sym_co_yield] = ACTIONS(1922), [anon_sym_try] = ACTIONS(1922), [anon_sym_co_await] = ACTIONS(1922), [anon_sym_new] = ACTIONS(1922), [sym_this] = ACTIONS(1922), [sym_nullptr] = ACTIONS(1922), [sym_raw_string_literal] = ACTIONS(1924), }, [906] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [907] = { [sym_identifier] = ACTIONS(1824), [anon_sym_LPAREN2] = ACTIONS(1826), [anon_sym_BANG] = ACTIONS(1826), [anon_sym_TILDE] = ACTIONS(1826), [anon_sym_DASH] = ACTIONS(1824), [anon_sym_PLUS] = ACTIONS(1824), [anon_sym_STAR] = ACTIONS(1826), [anon_sym_AMP] = ACTIONS(1826), [anon_sym_SEMI] = ACTIONS(1826), [anon_sym_typedef] = ACTIONS(1824), [anon_sym_extern] = ACTIONS(1824), [anon_sym___attribute__] = ACTIONS(1824), [anon_sym_COLON_COLON] = ACTIONS(1826), [anon_sym_LBRACK_LBRACK] = ACTIONS(1826), [anon_sym___declspec] = ACTIONS(1824), [anon_sym_LBRACE] = ACTIONS(1826), [anon_sym_LBRACK] = ACTIONS(1824), [anon_sym_static] = ACTIONS(1824), [anon_sym_register] = ACTIONS(1824), [anon_sym_inline] = ACTIONS(1824), [anon_sym_thread_local] = ACTIONS(1824), [anon_sym_const] = ACTIONS(1824), [anon_sym_volatile] = ACTIONS(1824), [anon_sym_restrict] = ACTIONS(1824), [anon_sym__Atomic] = ACTIONS(1824), [anon_sym_mutable] = ACTIONS(1824), [anon_sym_constexpr] = ACTIONS(1824), [anon_sym_signed] = ACTIONS(1824), [anon_sym_unsigned] = ACTIONS(1824), [anon_sym_long] = ACTIONS(1824), [anon_sym_short] = ACTIONS(1824), [sym_primitive_type] = ACTIONS(1824), [anon_sym_enum] = ACTIONS(1824), [anon_sym_class] = ACTIONS(1824), [anon_sym_struct] = ACTIONS(1824), [anon_sym_union] = ACTIONS(1824), [anon_sym_if] = ACTIONS(1824), [anon_sym_else] = ACTIONS(1824), [anon_sym_switch] = ACTIONS(1824), [anon_sym_while] = ACTIONS(1824), [anon_sym_do] = ACTIONS(1824), [anon_sym_for] = ACTIONS(1824), [anon_sym_return] = ACTIONS(1824), [anon_sym_break] = ACTIONS(1824), [anon_sym_continue] = ACTIONS(1824), [anon_sym_goto] = ACTIONS(1824), [anon_sym_DASH_DASH] = ACTIONS(1826), [anon_sym_PLUS_PLUS] = ACTIONS(1826), [anon_sym_sizeof] = ACTIONS(1824), [sym_number_literal] = ACTIONS(1826), [anon_sym_L_SQUOTE] = ACTIONS(1826), [anon_sym_u_SQUOTE] = ACTIONS(1826), [anon_sym_U_SQUOTE] = ACTIONS(1826), [anon_sym_u8_SQUOTE] = ACTIONS(1826), [anon_sym_SQUOTE] = ACTIONS(1826), [anon_sym_L_DQUOTE] = ACTIONS(1826), [anon_sym_u_DQUOTE] = ACTIONS(1826), [anon_sym_U_DQUOTE] = ACTIONS(1826), [anon_sym_u8_DQUOTE] = ACTIONS(1826), [anon_sym_DQUOTE] = ACTIONS(1826), [sym_true] = ACTIONS(1824), [sym_false] = ACTIONS(1824), [sym_null] = ACTIONS(1824), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1824), [anon_sym_virtual] = ACTIONS(1824), [sym_auto] = ACTIONS(1824), [anon_sym_typename] = ACTIONS(1824), [anon_sym_template] = ACTIONS(1824), [anon_sym_delete] = ACTIONS(1824), [anon_sym_throw] = ACTIONS(1824), [anon_sym_co_return] = ACTIONS(1824), [anon_sym_co_yield] = ACTIONS(1824), [anon_sym_try] = ACTIONS(1824), [anon_sym_co_await] = ACTIONS(1824), [anon_sym_new] = ACTIONS(1824), [sym_this] = ACTIONS(1824), [sym_nullptr] = ACTIONS(1824), [sym_raw_string_literal] = ACTIONS(1826), }, [908] = { [sym_identifier] = ACTIONS(1918), [anon_sym_LPAREN2] = ACTIONS(1920), [anon_sym_BANG] = ACTIONS(1920), [anon_sym_TILDE] = ACTIONS(1920), [anon_sym_DASH] = ACTIONS(1918), [anon_sym_PLUS] = ACTIONS(1918), [anon_sym_STAR] = ACTIONS(1920), [anon_sym_AMP] = ACTIONS(1920), [anon_sym_SEMI] = ACTIONS(1920), [anon_sym_typedef] = ACTIONS(1918), [anon_sym_extern] = ACTIONS(1918), [anon_sym___attribute__] = ACTIONS(1918), [anon_sym_COLON_COLON] = ACTIONS(1920), [anon_sym_LBRACK_LBRACK] = ACTIONS(1920), [anon_sym___declspec] = ACTIONS(1918), [anon_sym_LBRACE] = ACTIONS(1920), [anon_sym_LBRACK] = ACTIONS(1918), [anon_sym_static] = ACTIONS(1918), [anon_sym_register] = ACTIONS(1918), [anon_sym_inline] = ACTIONS(1918), [anon_sym_thread_local] = ACTIONS(1918), [anon_sym_const] = ACTIONS(1918), [anon_sym_volatile] = ACTIONS(1918), [anon_sym_restrict] = ACTIONS(1918), [anon_sym__Atomic] = ACTIONS(1918), [anon_sym_mutable] = ACTIONS(1918), [anon_sym_constexpr] = ACTIONS(1918), [anon_sym_signed] = ACTIONS(1918), [anon_sym_unsigned] = ACTIONS(1918), [anon_sym_long] = ACTIONS(1918), [anon_sym_short] = ACTIONS(1918), [sym_primitive_type] = ACTIONS(1918), [anon_sym_enum] = ACTIONS(1918), [anon_sym_class] = ACTIONS(1918), [anon_sym_struct] = ACTIONS(1918), [anon_sym_union] = ACTIONS(1918), [anon_sym_if] = ACTIONS(1918), [anon_sym_else] = ACTIONS(1918), [anon_sym_switch] = ACTIONS(1918), [anon_sym_while] = ACTIONS(1918), [anon_sym_do] = ACTIONS(1918), [anon_sym_for] = ACTIONS(1918), [anon_sym_return] = ACTIONS(1918), [anon_sym_break] = ACTIONS(1918), [anon_sym_continue] = ACTIONS(1918), [anon_sym_goto] = ACTIONS(1918), [anon_sym_DASH_DASH] = ACTIONS(1920), [anon_sym_PLUS_PLUS] = ACTIONS(1920), [anon_sym_sizeof] = ACTIONS(1918), [sym_number_literal] = ACTIONS(1920), [anon_sym_L_SQUOTE] = ACTIONS(1920), [anon_sym_u_SQUOTE] = ACTIONS(1920), [anon_sym_U_SQUOTE] = ACTIONS(1920), [anon_sym_u8_SQUOTE] = ACTIONS(1920), [anon_sym_SQUOTE] = ACTIONS(1920), [anon_sym_L_DQUOTE] = ACTIONS(1920), [anon_sym_u_DQUOTE] = ACTIONS(1920), [anon_sym_U_DQUOTE] = ACTIONS(1920), [anon_sym_u8_DQUOTE] = ACTIONS(1920), [anon_sym_DQUOTE] = ACTIONS(1920), [sym_true] = ACTIONS(1918), [sym_false] = ACTIONS(1918), [sym_null] = ACTIONS(1918), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1918), [anon_sym_virtual] = ACTIONS(1918), [sym_auto] = ACTIONS(1918), [anon_sym_typename] = ACTIONS(1918), [anon_sym_template] = ACTIONS(1918), [anon_sym_delete] = ACTIONS(1918), [anon_sym_throw] = ACTIONS(1918), [anon_sym_co_return] = ACTIONS(1918), [anon_sym_co_yield] = ACTIONS(1918), [anon_sym_try] = ACTIONS(1918), [anon_sym_co_await] = ACTIONS(1918), [anon_sym_new] = ACTIONS(1918), [sym_this] = ACTIONS(1918), [sym_nullptr] = ACTIONS(1918), [sym_raw_string_literal] = ACTIONS(1920), }, [909] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [910] = { [sym_identifier] = ACTIONS(2516), [anon_sym_LPAREN2] = ACTIONS(2518), [anon_sym_BANG] = ACTIONS(2518), [anon_sym_TILDE] = ACTIONS(2518), [anon_sym_DASH] = ACTIONS(2516), [anon_sym_PLUS] = ACTIONS(2516), [anon_sym_STAR] = ACTIONS(2518), [anon_sym_AMP] = ACTIONS(2518), [anon_sym_SEMI] = ACTIONS(2518), [anon_sym_extern] = ACTIONS(2516), [anon_sym___attribute__] = ACTIONS(2516), [anon_sym_COLON_COLON] = ACTIONS(2518), [anon_sym_LBRACK_LBRACK] = ACTIONS(2518), [anon_sym___declspec] = ACTIONS(2516), [anon_sym_LBRACE] = ACTIONS(2518), [anon_sym_LBRACK] = ACTIONS(2516), [anon_sym_static] = ACTIONS(2516), [anon_sym_register] = ACTIONS(2516), [anon_sym_inline] = ACTIONS(2516), [anon_sym_thread_local] = ACTIONS(2516), [anon_sym_const] = ACTIONS(2516), [anon_sym_volatile] = ACTIONS(2516), [anon_sym_restrict] = ACTIONS(2516), [anon_sym__Atomic] = ACTIONS(2516), [anon_sym_mutable] = ACTIONS(2516), [anon_sym_constexpr] = ACTIONS(2516), [anon_sym_signed] = ACTIONS(2516), [anon_sym_unsigned] = ACTIONS(2516), [anon_sym_long] = ACTIONS(2516), [anon_sym_short] = ACTIONS(2516), [sym_primitive_type] = ACTIONS(2516), [anon_sym_enum] = ACTIONS(2516), [anon_sym_class] = ACTIONS(2516), [anon_sym_struct] = ACTIONS(2516), [anon_sym_union] = ACTIONS(2516), [anon_sym_if] = ACTIONS(2516), [anon_sym_switch] = ACTIONS(2516), [anon_sym_case] = ACTIONS(2516), [anon_sym_default] = ACTIONS(2516), [anon_sym_while] = ACTIONS(2516), [anon_sym_do] = ACTIONS(2516), [anon_sym_for] = ACTIONS(2516), [anon_sym_return] = ACTIONS(2516), [anon_sym_break] = ACTIONS(2516), [anon_sym_continue] = ACTIONS(2516), [anon_sym_goto] = ACTIONS(2516), [anon_sym_DASH_DASH] = ACTIONS(2518), [anon_sym_PLUS_PLUS] = ACTIONS(2518), [anon_sym_sizeof] = ACTIONS(2516), [sym_number_literal] = ACTIONS(2518), [anon_sym_L_SQUOTE] = ACTIONS(2518), [anon_sym_u_SQUOTE] = ACTIONS(2518), [anon_sym_U_SQUOTE] = ACTIONS(2518), [anon_sym_u8_SQUOTE] = ACTIONS(2518), [anon_sym_SQUOTE] = ACTIONS(2518), [anon_sym_L_DQUOTE] = ACTIONS(2518), [anon_sym_u_DQUOTE] = ACTIONS(2518), [anon_sym_U_DQUOTE] = ACTIONS(2518), [anon_sym_u8_DQUOTE] = ACTIONS(2518), [anon_sym_DQUOTE] = ACTIONS(2518), [sym_true] = ACTIONS(2516), [sym_false] = ACTIONS(2516), [sym_null] = ACTIONS(2516), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2516), [anon_sym_virtual] = ACTIONS(2516), [sym_auto] = ACTIONS(2516), [anon_sym_typename] = ACTIONS(2516), [anon_sym_template] = ACTIONS(2516), [anon_sym_delete] = ACTIONS(2516), [anon_sym_throw] = ACTIONS(2516), [anon_sym_co_return] = ACTIONS(2516), [anon_sym_co_yield] = ACTIONS(2516), [anon_sym_try] = ACTIONS(2516), [anon_sym_co_await] = ACTIONS(2516), [anon_sym_new] = ACTIONS(2516), [sym_this] = ACTIONS(2516), [sym_nullptr] = ACTIONS(2516), [sym_raw_string_literal] = ACTIONS(2518), }, [911] = { [sym_identifier] = ACTIONS(1914), [anon_sym_LPAREN2] = ACTIONS(1916), [anon_sym_BANG] = ACTIONS(1916), [anon_sym_TILDE] = ACTIONS(1916), [anon_sym_DASH] = ACTIONS(1914), [anon_sym_PLUS] = ACTIONS(1914), [anon_sym_STAR] = ACTIONS(1916), [anon_sym_AMP] = ACTIONS(1916), [anon_sym_SEMI] = ACTIONS(1916), [anon_sym_typedef] = ACTIONS(1914), [anon_sym_extern] = ACTIONS(1914), [anon_sym___attribute__] = ACTIONS(1914), [anon_sym_COLON_COLON] = ACTIONS(1916), [anon_sym_LBRACK_LBRACK] = ACTIONS(1916), [anon_sym___declspec] = ACTIONS(1914), [anon_sym_LBRACE] = ACTIONS(1916), [anon_sym_LBRACK] = ACTIONS(1914), [anon_sym_static] = ACTIONS(1914), [anon_sym_register] = ACTIONS(1914), [anon_sym_inline] = ACTIONS(1914), [anon_sym_thread_local] = ACTIONS(1914), [anon_sym_const] = ACTIONS(1914), [anon_sym_volatile] = ACTIONS(1914), [anon_sym_restrict] = ACTIONS(1914), [anon_sym__Atomic] = ACTIONS(1914), [anon_sym_mutable] = ACTIONS(1914), [anon_sym_constexpr] = ACTIONS(1914), [anon_sym_signed] = ACTIONS(1914), [anon_sym_unsigned] = ACTIONS(1914), [anon_sym_long] = ACTIONS(1914), [anon_sym_short] = ACTIONS(1914), [sym_primitive_type] = ACTIONS(1914), [anon_sym_enum] = ACTIONS(1914), [anon_sym_class] = ACTIONS(1914), [anon_sym_struct] = ACTIONS(1914), [anon_sym_union] = ACTIONS(1914), [anon_sym_if] = ACTIONS(1914), [anon_sym_else] = ACTIONS(1914), [anon_sym_switch] = ACTIONS(1914), [anon_sym_while] = ACTIONS(1914), [anon_sym_do] = ACTIONS(1914), [anon_sym_for] = ACTIONS(1914), [anon_sym_return] = ACTIONS(1914), [anon_sym_break] = ACTIONS(1914), [anon_sym_continue] = ACTIONS(1914), [anon_sym_goto] = ACTIONS(1914), [anon_sym_DASH_DASH] = ACTIONS(1916), [anon_sym_PLUS_PLUS] = ACTIONS(1916), [anon_sym_sizeof] = ACTIONS(1914), [sym_number_literal] = ACTIONS(1916), [anon_sym_L_SQUOTE] = ACTIONS(1916), [anon_sym_u_SQUOTE] = ACTIONS(1916), [anon_sym_U_SQUOTE] = ACTIONS(1916), [anon_sym_u8_SQUOTE] = ACTIONS(1916), [anon_sym_SQUOTE] = ACTIONS(1916), [anon_sym_L_DQUOTE] = ACTIONS(1916), [anon_sym_u_DQUOTE] = ACTIONS(1916), [anon_sym_U_DQUOTE] = ACTIONS(1916), [anon_sym_u8_DQUOTE] = ACTIONS(1916), [anon_sym_DQUOTE] = ACTIONS(1916), [sym_true] = ACTIONS(1914), [sym_false] = ACTIONS(1914), [sym_null] = ACTIONS(1914), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1914), [anon_sym_virtual] = ACTIONS(1914), [sym_auto] = ACTIONS(1914), [anon_sym_typename] = ACTIONS(1914), [anon_sym_template] = ACTIONS(1914), [anon_sym_delete] = ACTIONS(1914), [anon_sym_throw] = ACTIONS(1914), [anon_sym_co_return] = ACTIONS(1914), [anon_sym_co_yield] = ACTIONS(1914), [anon_sym_try] = ACTIONS(1914), [anon_sym_co_await] = ACTIONS(1914), [anon_sym_new] = ACTIONS(1914), [sym_this] = ACTIONS(1914), [sym_nullptr] = ACTIONS(1914), [sym_raw_string_literal] = ACTIONS(1916), }, [912] = { [sym_identifier] = ACTIONS(1932), [anon_sym_LPAREN2] = ACTIONS(1934), [anon_sym_BANG] = ACTIONS(1934), [anon_sym_TILDE] = ACTIONS(1934), [anon_sym_DASH] = ACTIONS(1932), [anon_sym_PLUS] = ACTIONS(1932), [anon_sym_STAR] = ACTIONS(1934), [anon_sym_AMP] = ACTIONS(1934), [anon_sym_SEMI] = ACTIONS(1934), [anon_sym_typedef] = ACTIONS(1932), [anon_sym_extern] = ACTIONS(1932), [anon_sym___attribute__] = ACTIONS(1932), [anon_sym_COLON_COLON] = ACTIONS(1934), [anon_sym_LBRACK_LBRACK] = ACTIONS(1934), [anon_sym___declspec] = ACTIONS(1932), [anon_sym_LBRACE] = ACTIONS(1934), [anon_sym_LBRACK] = ACTIONS(1932), [anon_sym_static] = ACTIONS(1932), [anon_sym_register] = ACTIONS(1932), [anon_sym_inline] = ACTIONS(1932), [anon_sym_thread_local] = ACTIONS(1932), [anon_sym_const] = ACTIONS(1932), [anon_sym_volatile] = ACTIONS(1932), [anon_sym_restrict] = ACTIONS(1932), [anon_sym__Atomic] = ACTIONS(1932), [anon_sym_mutable] = ACTIONS(1932), [anon_sym_constexpr] = ACTIONS(1932), [anon_sym_signed] = ACTIONS(1932), [anon_sym_unsigned] = ACTIONS(1932), [anon_sym_long] = ACTIONS(1932), [anon_sym_short] = ACTIONS(1932), [sym_primitive_type] = ACTIONS(1932), [anon_sym_enum] = ACTIONS(1932), [anon_sym_class] = ACTIONS(1932), [anon_sym_struct] = ACTIONS(1932), [anon_sym_union] = ACTIONS(1932), [anon_sym_if] = ACTIONS(1932), [anon_sym_else] = ACTIONS(1932), [anon_sym_switch] = ACTIONS(1932), [anon_sym_while] = ACTIONS(1932), [anon_sym_do] = ACTIONS(1932), [anon_sym_for] = ACTIONS(1932), [anon_sym_return] = ACTIONS(1932), [anon_sym_break] = ACTIONS(1932), [anon_sym_continue] = ACTIONS(1932), [anon_sym_goto] = ACTIONS(1932), [anon_sym_DASH_DASH] = ACTIONS(1934), [anon_sym_PLUS_PLUS] = ACTIONS(1934), [anon_sym_sizeof] = ACTIONS(1932), [sym_number_literal] = ACTIONS(1934), [anon_sym_L_SQUOTE] = ACTIONS(1934), [anon_sym_u_SQUOTE] = ACTIONS(1934), [anon_sym_U_SQUOTE] = ACTIONS(1934), [anon_sym_u8_SQUOTE] = ACTIONS(1934), [anon_sym_SQUOTE] = ACTIONS(1934), [anon_sym_L_DQUOTE] = ACTIONS(1934), [anon_sym_u_DQUOTE] = ACTIONS(1934), [anon_sym_U_DQUOTE] = ACTIONS(1934), [anon_sym_u8_DQUOTE] = ACTIONS(1934), [anon_sym_DQUOTE] = ACTIONS(1934), [sym_true] = ACTIONS(1932), [sym_false] = ACTIONS(1932), [sym_null] = ACTIONS(1932), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1932), [anon_sym_virtual] = ACTIONS(1932), [sym_auto] = ACTIONS(1932), [anon_sym_typename] = ACTIONS(1932), [anon_sym_template] = ACTIONS(1932), [anon_sym_delete] = ACTIONS(1932), [anon_sym_throw] = ACTIONS(1932), [anon_sym_co_return] = ACTIONS(1932), [anon_sym_co_yield] = ACTIONS(1932), [anon_sym_try] = ACTIONS(1932), [anon_sym_co_await] = ACTIONS(1932), [anon_sym_new] = ACTIONS(1932), [sym_this] = ACTIONS(1932), [sym_nullptr] = ACTIONS(1932), [sym_raw_string_literal] = ACTIONS(1934), }, [913] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [914] = { [sym_identifier] = ACTIONS(1910), [anon_sym_LPAREN2] = ACTIONS(1912), [anon_sym_BANG] = ACTIONS(1912), [anon_sym_TILDE] = ACTIONS(1912), [anon_sym_DASH] = ACTIONS(1910), [anon_sym_PLUS] = ACTIONS(1910), [anon_sym_STAR] = ACTIONS(1912), [anon_sym_AMP] = ACTIONS(1912), [anon_sym_SEMI] = ACTIONS(1912), [anon_sym_typedef] = ACTIONS(1910), [anon_sym_extern] = ACTIONS(1910), [anon_sym___attribute__] = ACTIONS(1910), [anon_sym_COLON_COLON] = ACTIONS(1912), [anon_sym_LBRACK_LBRACK] = ACTIONS(1912), [anon_sym___declspec] = ACTIONS(1910), [anon_sym_LBRACE] = ACTIONS(1912), [anon_sym_LBRACK] = ACTIONS(1910), [anon_sym_static] = ACTIONS(1910), [anon_sym_register] = ACTIONS(1910), [anon_sym_inline] = ACTIONS(1910), [anon_sym_thread_local] = ACTIONS(1910), [anon_sym_const] = ACTIONS(1910), [anon_sym_volatile] = ACTIONS(1910), [anon_sym_restrict] = ACTIONS(1910), [anon_sym__Atomic] = ACTIONS(1910), [anon_sym_mutable] = ACTIONS(1910), [anon_sym_constexpr] = ACTIONS(1910), [anon_sym_signed] = ACTIONS(1910), [anon_sym_unsigned] = ACTIONS(1910), [anon_sym_long] = ACTIONS(1910), [anon_sym_short] = ACTIONS(1910), [sym_primitive_type] = ACTIONS(1910), [anon_sym_enum] = ACTIONS(1910), [anon_sym_class] = ACTIONS(1910), [anon_sym_struct] = ACTIONS(1910), [anon_sym_union] = ACTIONS(1910), [anon_sym_if] = ACTIONS(1910), [anon_sym_else] = ACTIONS(1910), [anon_sym_switch] = ACTIONS(1910), [anon_sym_while] = ACTIONS(1910), [anon_sym_do] = ACTIONS(1910), [anon_sym_for] = ACTIONS(1910), [anon_sym_return] = ACTIONS(1910), [anon_sym_break] = ACTIONS(1910), [anon_sym_continue] = ACTIONS(1910), [anon_sym_goto] = ACTIONS(1910), [anon_sym_DASH_DASH] = ACTIONS(1912), [anon_sym_PLUS_PLUS] = ACTIONS(1912), [anon_sym_sizeof] = ACTIONS(1910), [sym_number_literal] = ACTIONS(1912), [anon_sym_L_SQUOTE] = ACTIONS(1912), [anon_sym_u_SQUOTE] = ACTIONS(1912), [anon_sym_U_SQUOTE] = ACTIONS(1912), [anon_sym_u8_SQUOTE] = ACTIONS(1912), [anon_sym_SQUOTE] = ACTIONS(1912), [anon_sym_L_DQUOTE] = ACTIONS(1912), [anon_sym_u_DQUOTE] = ACTIONS(1912), [anon_sym_U_DQUOTE] = ACTIONS(1912), [anon_sym_u8_DQUOTE] = ACTIONS(1912), [anon_sym_DQUOTE] = ACTIONS(1912), [sym_true] = ACTIONS(1910), [sym_false] = ACTIONS(1910), [sym_null] = ACTIONS(1910), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1910), [anon_sym_virtual] = ACTIONS(1910), [sym_auto] = ACTIONS(1910), [anon_sym_typename] = ACTIONS(1910), [anon_sym_template] = ACTIONS(1910), [anon_sym_delete] = ACTIONS(1910), [anon_sym_throw] = ACTIONS(1910), [anon_sym_co_return] = ACTIONS(1910), [anon_sym_co_yield] = ACTIONS(1910), [anon_sym_try] = ACTIONS(1910), [anon_sym_co_await] = ACTIONS(1910), [anon_sym_new] = ACTIONS(1910), [sym_this] = ACTIONS(1910), [sym_nullptr] = ACTIONS(1910), [sym_raw_string_literal] = ACTIONS(1912), }, [915] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [916] = { [sym_identifier] = ACTIONS(1906), [anon_sym_LPAREN2] = ACTIONS(1908), [anon_sym_BANG] = ACTIONS(1908), [anon_sym_TILDE] = ACTIONS(1908), [anon_sym_DASH] = ACTIONS(1906), [anon_sym_PLUS] = ACTIONS(1906), [anon_sym_STAR] = ACTIONS(1908), [anon_sym_AMP] = ACTIONS(1908), [anon_sym_SEMI] = ACTIONS(1908), [anon_sym_typedef] = ACTIONS(1906), [anon_sym_extern] = ACTIONS(1906), [anon_sym___attribute__] = ACTIONS(1906), [anon_sym_COLON_COLON] = ACTIONS(1908), [anon_sym_LBRACK_LBRACK] = ACTIONS(1908), [anon_sym___declspec] = ACTIONS(1906), [anon_sym_LBRACE] = ACTIONS(1908), [anon_sym_LBRACK] = ACTIONS(1906), [anon_sym_static] = ACTIONS(1906), [anon_sym_register] = ACTIONS(1906), [anon_sym_inline] = ACTIONS(1906), [anon_sym_thread_local] = ACTIONS(1906), [anon_sym_const] = ACTIONS(1906), [anon_sym_volatile] = ACTIONS(1906), [anon_sym_restrict] = ACTIONS(1906), [anon_sym__Atomic] = ACTIONS(1906), [anon_sym_mutable] = ACTIONS(1906), [anon_sym_constexpr] = ACTIONS(1906), [anon_sym_signed] = ACTIONS(1906), [anon_sym_unsigned] = ACTIONS(1906), [anon_sym_long] = ACTIONS(1906), [anon_sym_short] = ACTIONS(1906), [sym_primitive_type] = ACTIONS(1906), [anon_sym_enum] = ACTIONS(1906), [anon_sym_class] = ACTIONS(1906), [anon_sym_struct] = ACTIONS(1906), [anon_sym_union] = ACTIONS(1906), [anon_sym_if] = ACTIONS(1906), [anon_sym_else] = ACTIONS(1906), [anon_sym_switch] = ACTIONS(1906), [anon_sym_while] = ACTIONS(1906), [anon_sym_do] = ACTIONS(1906), [anon_sym_for] = ACTIONS(1906), [anon_sym_return] = ACTIONS(1906), [anon_sym_break] = ACTIONS(1906), [anon_sym_continue] = ACTIONS(1906), [anon_sym_goto] = ACTIONS(1906), [anon_sym_DASH_DASH] = ACTIONS(1908), [anon_sym_PLUS_PLUS] = ACTIONS(1908), [anon_sym_sizeof] = ACTIONS(1906), [sym_number_literal] = ACTIONS(1908), [anon_sym_L_SQUOTE] = ACTIONS(1908), [anon_sym_u_SQUOTE] = ACTIONS(1908), [anon_sym_U_SQUOTE] = ACTIONS(1908), [anon_sym_u8_SQUOTE] = ACTIONS(1908), [anon_sym_SQUOTE] = ACTIONS(1908), [anon_sym_L_DQUOTE] = ACTIONS(1908), [anon_sym_u_DQUOTE] = ACTIONS(1908), [anon_sym_U_DQUOTE] = ACTIONS(1908), [anon_sym_u8_DQUOTE] = ACTIONS(1908), [anon_sym_DQUOTE] = ACTIONS(1908), [sym_true] = ACTIONS(1906), [sym_false] = ACTIONS(1906), [sym_null] = ACTIONS(1906), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1906), [anon_sym_virtual] = ACTIONS(1906), [sym_auto] = ACTIONS(1906), [anon_sym_typename] = ACTIONS(1906), [anon_sym_template] = ACTIONS(1906), [anon_sym_delete] = ACTIONS(1906), [anon_sym_throw] = ACTIONS(1906), [anon_sym_co_return] = ACTIONS(1906), [anon_sym_co_yield] = ACTIONS(1906), [anon_sym_try] = ACTIONS(1906), [anon_sym_co_await] = ACTIONS(1906), [anon_sym_new] = ACTIONS(1906), [sym_this] = ACTIONS(1906), [sym_nullptr] = ACTIONS(1906), [sym_raw_string_literal] = ACTIONS(1908), }, [917] = { [sym_identifier] = ACTIONS(1836), [anon_sym_LPAREN2] = ACTIONS(1838), [anon_sym_BANG] = ACTIONS(1838), [anon_sym_TILDE] = ACTIONS(1838), [anon_sym_DASH] = ACTIONS(1836), [anon_sym_PLUS] = ACTIONS(1836), [anon_sym_STAR] = ACTIONS(1838), [anon_sym_AMP] = ACTIONS(1838), [anon_sym_SEMI] = ACTIONS(1838), [anon_sym_typedef] = ACTIONS(1836), [anon_sym_extern] = ACTIONS(1836), [anon_sym___attribute__] = ACTIONS(1836), [anon_sym_COLON_COLON] = ACTIONS(1838), [anon_sym_LBRACK_LBRACK] = ACTIONS(1838), [anon_sym___declspec] = ACTIONS(1836), [anon_sym_LBRACE] = ACTIONS(1838), [anon_sym_LBRACK] = ACTIONS(1836), [anon_sym_static] = ACTIONS(1836), [anon_sym_register] = ACTIONS(1836), [anon_sym_inline] = ACTIONS(1836), [anon_sym_thread_local] = ACTIONS(1836), [anon_sym_const] = ACTIONS(1836), [anon_sym_volatile] = ACTIONS(1836), [anon_sym_restrict] = ACTIONS(1836), [anon_sym__Atomic] = ACTIONS(1836), [anon_sym_mutable] = ACTIONS(1836), [anon_sym_constexpr] = ACTIONS(1836), [anon_sym_signed] = ACTIONS(1836), [anon_sym_unsigned] = ACTIONS(1836), [anon_sym_long] = ACTIONS(1836), [anon_sym_short] = ACTIONS(1836), [sym_primitive_type] = ACTIONS(1836), [anon_sym_enum] = ACTIONS(1836), [anon_sym_class] = ACTIONS(1836), [anon_sym_struct] = ACTIONS(1836), [anon_sym_union] = ACTIONS(1836), [anon_sym_if] = ACTIONS(1836), [anon_sym_else] = ACTIONS(1836), [anon_sym_switch] = ACTIONS(1836), [anon_sym_while] = ACTIONS(1836), [anon_sym_do] = ACTIONS(1836), [anon_sym_for] = ACTIONS(1836), [anon_sym_return] = ACTIONS(1836), [anon_sym_break] = ACTIONS(1836), [anon_sym_continue] = ACTIONS(1836), [anon_sym_goto] = ACTIONS(1836), [anon_sym_DASH_DASH] = ACTIONS(1838), [anon_sym_PLUS_PLUS] = ACTIONS(1838), [anon_sym_sizeof] = ACTIONS(1836), [sym_number_literal] = ACTIONS(1838), [anon_sym_L_SQUOTE] = ACTIONS(1838), [anon_sym_u_SQUOTE] = ACTIONS(1838), [anon_sym_U_SQUOTE] = ACTIONS(1838), [anon_sym_u8_SQUOTE] = ACTIONS(1838), [anon_sym_SQUOTE] = ACTIONS(1838), [anon_sym_L_DQUOTE] = ACTIONS(1838), [anon_sym_u_DQUOTE] = ACTIONS(1838), [anon_sym_U_DQUOTE] = ACTIONS(1838), [anon_sym_u8_DQUOTE] = ACTIONS(1838), [anon_sym_DQUOTE] = ACTIONS(1838), [sym_true] = ACTIONS(1836), [sym_false] = ACTIONS(1836), [sym_null] = ACTIONS(1836), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1836), [anon_sym_virtual] = ACTIONS(1836), [sym_auto] = ACTIONS(1836), [anon_sym_typename] = ACTIONS(1836), [anon_sym_template] = ACTIONS(1836), [anon_sym_delete] = ACTIONS(1836), [anon_sym_throw] = ACTIONS(1836), [anon_sym_co_return] = ACTIONS(1836), [anon_sym_co_yield] = ACTIONS(1836), [anon_sym_try] = ACTIONS(1836), [anon_sym_co_await] = ACTIONS(1836), [anon_sym_new] = ACTIONS(1836), [sym_this] = ACTIONS(1836), [sym_nullptr] = ACTIONS(1836), [sym_raw_string_literal] = ACTIONS(1838), }, [918] = { [sym_identifier] = ACTIONS(1872), [anon_sym_LPAREN2] = ACTIONS(1874), [anon_sym_BANG] = ACTIONS(1874), [anon_sym_TILDE] = ACTIONS(1874), [anon_sym_DASH] = ACTIONS(1872), [anon_sym_PLUS] = ACTIONS(1872), [anon_sym_STAR] = ACTIONS(1874), [anon_sym_AMP] = ACTIONS(1874), [anon_sym_SEMI] = ACTIONS(1874), [anon_sym_typedef] = ACTIONS(1872), [anon_sym_extern] = ACTIONS(1872), [anon_sym___attribute__] = ACTIONS(1872), [anon_sym_COLON_COLON] = ACTIONS(1874), [anon_sym_LBRACK_LBRACK] = ACTIONS(1874), [anon_sym___declspec] = ACTIONS(1872), [anon_sym_LBRACE] = ACTIONS(1874), [anon_sym_LBRACK] = ACTIONS(1872), [anon_sym_static] = ACTIONS(1872), [anon_sym_register] = ACTIONS(1872), [anon_sym_inline] = ACTIONS(1872), [anon_sym_thread_local] = ACTIONS(1872), [anon_sym_const] = ACTIONS(1872), [anon_sym_volatile] = ACTIONS(1872), [anon_sym_restrict] = ACTIONS(1872), [anon_sym__Atomic] = ACTIONS(1872), [anon_sym_mutable] = ACTIONS(1872), [anon_sym_constexpr] = ACTIONS(1872), [anon_sym_signed] = ACTIONS(1872), [anon_sym_unsigned] = ACTIONS(1872), [anon_sym_long] = ACTIONS(1872), [anon_sym_short] = ACTIONS(1872), [sym_primitive_type] = ACTIONS(1872), [anon_sym_enum] = ACTIONS(1872), [anon_sym_class] = ACTIONS(1872), [anon_sym_struct] = ACTIONS(1872), [anon_sym_union] = ACTIONS(1872), [anon_sym_if] = ACTIONS(1872), [anon_sym_else] = ACTIONS(1872), [anon_sym_switch] = ACTIONS(1872), [anon_sym_while] = ACTIONS(1872), [anon_sym_do] = ACTIONS(1872), [anon_sym_for] = ACTIONS(1872), [anon_sym_return] = ACTIONS(1872), [anon_sym_break] = ACTIONS(1872), [anon_sym_continue] = ACTIONS(1872), [anon_sym_goto] = ACTIONS(1872), [anon_sym_DASH_DASH] = ACTIONS(1874), [anon_sym_PLUS_PLUS] = ACTIONS(1874), [anon_sym_sizeof] = ACTIONS(1872), [sym_number_literal] = ACTIONS(1874), [anon_sym_L_SQUOTE] = ACTIONS(1874), [anon_sym_u_SQUOTE] = ACTIONS(1874), [anon_sym_U_SQUOTE] = ACTIONS(1874), [anon_sym_u8_SQUOTE] = ACTIONS(1874), [anon_sym_SQUOTE] = ACTIONS(1874), [anon_sym_L_DQUOTE] = ACTIONS(1874), [anon_sym_u_DQUOTE] = ACTIONS(1874), [anon_sym_U_DQUOTE] = ACTIONS(1874), [anon_sym_u8_DQUOTE] = ACTIONS(1874), [anon_sym_DQUOTE] = ACTIONS(1874), [sym_true] = ACTIONS(1872), [sym_false] = ACTIONS(1872), [sym_null] = ACTIONS(1872), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1872), [anon_sym_virtual] = ACTIONS(1872), [sym_auto] = ACTIONS(1872), [anon_sym_typename] = ACTIONS(1872), [anon_sym_template] = ACTIONS(1872), [anon_sym_delete] = ACTIONS(1872), [anon_sym_throw] = ACTIONS(1872), [anon_sym_co_return] = ACTIONS(1872), [anon_sym_co_yield] = ACTIONS(1872), [anon_sym_try] = ACTIONS(1872), [anon_sym_co_await] = ACTIONS(1872), [anon_sym_new] = ACTIONS(1872), [sym_this] = ACTIONS(1872), [sym_nullptr] = ACTIONS(1872), [sym_raw_string_literal] = ACTIONS(1874), }, [919] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [920] = { [sym_identifier] = ACTIONS(1820), [anon_sym_LPAREN2] = ACTIONS(1822), [anon_sym_BANG] = ACTIONS(1822), [anon_sym_TILDE] = ACTIONS(1822), [anon_sym_DASH] = ACTIONS(1820), [anon_sym_PLUS] = ACTIONS(1820), [anon_sym_STAR] = ACTIONS(1822), [anon_sym_AMP] = ACTIONS(1822), [anon_sym_SEMI] = ACTIONS(1822), [anon_sym_typedef] = ACTIONS(1820), [anon_sym_extern] = ACTIONS(1820), [anon_sym___attribute__] = ACTIONS(1820), [anon_sym_COLON_COLON] = ACTIONS(1822), [anon_sym_LBRACK_LBRACK] = ACTIONS(1822), [anon_sym___declspec] = ACTIONS(1820), [anon_sym_LBRACE] = ACTIONS(1822), [anon_sym_LBRACK] = ACTIONS(1820), [anon_sym_static] = ACTIONS(1820), [anon_sym_register] = ACTIONS(1820), [anon_sym_inline] = ACTIONS(1820), [anon_sym_thread_local] = ACTIONS(1820), [anon_sym_const] = ACTIONS(1820), [anon_sym_volatile] = ACTIONS(1820), [anon_sym_restrict] = ACTIONS(1820), [anon_sym__Atomic] = ACTIONS(1820), [anon_sym_mutable] = ACTIONS(1820), [anon_sym_constexpr] = ACTIONS(1820), [anon_sym_signed] = ACTIONS(1820), [anon_sym_unsigned] = ACTIONS(1820), [anon_sym_long] = ACTIONS(1820), [anon_sym_short] = ACTIONS(1820), [sym_primitive_type] = ACTIONS(1820), [anon_sym_enum] = ACTIONS(1820), [anon_sym_class] = ACTIONS(1820), [anon_sym_struct] = ACTIONS(1820), [anon_sym_union] = ACTIONS(1820), [anon_sym_if] = ACTIONS(1820), [anon_sym_else] = ACTIONS(1820), [anon_sym_switch] = ACTIONS(1820), [anon_sym_while] = ACTIONS(1820), [anon_sym_do] = ACTIONS(1820), [anon_sym_for] = ACTIONS(1820), [anon_sym_return] = ACTIONS(1820), [anon_sym_break] = ACTIONS(1820), [anon_sym_continue] = ACTIONS(1820), [anon_sym_goto] = ACTIONS(1820), [anon_sym_DASH_DASH] = ACTIONS(1822), [anon_sym_PLUS_PLUS] = ACTIONS(1822), [anon_sym_sizeof] = ACTIONS(1820), [sym_number_literal] = ACTIONS(1822), [anon_sym_L_SQUOTE] = ACTIONS(1822), [anon_sym_u_SQUOTE] = ACTIONS(1822), [anon_sym_U_SQUOTE] = ACTIONS(1822), [anon_sym_u8_SQUOTE] = ACTIONS(1822), [anon_sym_SQUOTE] = ACTIONS(1822), [anon_sym_L_DQUOTE] = ACTIONS(1822), [anon_sym_u_DQUOTE] = ACTIONS(1822), [anon_sym_U_DQUOTE] = ACTIONS(1822), [anon_sym_u8_DQUOTE] = ACTIONS(1822), [anon_sym_DQUOTE] = ACTIONS(1822), [sym_true] = ACTIONS(1820), [sym_false] = ACTIONS(1820), [sym_null] = ACTIONS(1820), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1820), [anon_sym_virtual] = ACTIONS(1820), [sym_auto] = ACTIONS(1820), [anon_sym_typename] = ACTIONS(1820), [anon_sym_template] = ACTIONS(1820), [anon_sym_delete] = ACTIONS(1820), [anon_sym_throw] = ACTIONS(1820), [anon_sym_co_return] = ACTIONS(1820), [anon_sym_co_yield] = ACTIONS(1820), [anon_sym_try] = ACTIONS(1820), [anon_sym_co_await] = ACTIONS(1820), [anon_sym_new] = ACTIONS(1820), [sym_this] = ACTIONS(1820), [sym_nullptr] = ACTIONS(1820), [sym_raw_string_literal] = ACTIONS(1822), }, [921] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [922] = { [sym_identifier] = ACTIONS(1876), [anon_sym_LPAREN2] = ACTIONS(1878), [anon_sym_BANG] = ACTIONS(1878), [anon_sym_TILDE] = ACTIONS(1878), [anon_sym_DASH] = ACTIONS(1876), [anon_sym_PLUS] = ACTIONS(1876), [anon_sym_STAR] = ACTIONS(1878), [anon_sym_AMP] = ACTIONS(1878), [anon_sym_SEMI] = ACTIONS(1878), [anon_sym_typedef] = ACTIONS(1876), [anon_sym_extern] = ACTIONS(1876), [anon_sym___attribute__] = ACTIONS(1876), [anon_sym_COLON_COLON] = ACTIONS(1878), [anon_sym_LBRACK_LBRACK] = ACTIONS(1878), [anon_sym___declspec] = ACTIONS(1876), [anon_sym_LBRACE] = ACTIONS(1878), [anon_sym_LBRACK] = ACTIONS(1876), [anon_sym_static] = ACTIONS(1876), [anon_sym_register] = ACTIONS(1876), [anon_sym_inline] = ACTIONS(1876), [anon_sym_thread_local] = ACTIONS(1876), [anon_sym_const] = ACTIONS(1876), [anon_sym_volatile] = ACTIONS(1876), [anon_sym_restrict] = ACTIONS(1876), [anon_sym__Atomic] = ACTIONS(1876), [anon_sym_mutable] = ACTIONS(1876), [anon_sym_constexpr] = ACTIONS(1876), [anon_sym_signed] = ACTIONS(1876), [anon_sym_unsigned] = ACTIONS(1876), [anon_sym_long] = ACTIONS(1876), [anon_sym_short] = ACTIONS(1876), [sym_primitive_type] = ACTIONS(1876), [anon_sym_enum] = ACTIONS(1876), [anon_sym_class] = ACTIONS(1876), [anon_sym_struct] = ACTIONS(1876), [anon_sym_union] = ACTIONS(1876), [anon_sym_if] = ACTIONS(1876), [anon_sym_else] = ACTIONS(1876), [anon_sym_switch] = ACTIONS(1876), [anon_sym_while] = ACTIONS(1876), [anon_sym_do] = ACTIONS(1876), [anon_sym_for] = ACTIONS(1876), [anon_sym_return] = ACTIONS(1876), [anon_sym_break] = ACTIONS(1876), [anon_sym_continue] = ACTIONS(1876), [anon_sym_goto] = ACTIONS(1876), [anon_sym_DASH_DASH] = ACTIONS(1878), [anon_sym_PLUS_PLUS] = ACTIONS(1878), [anon_sym_sizeof] = ACTIONS(1876), [sym_number_literal] = ACTIONS(1878), [anon_sym_L_SQUOTE] = ACTIONS(1878), [anon_sym_u_SQUOTE] = ACTIONS(1878), [anon_sym_U_SQUOTE] = ACTIONS(1878), [anon_sym_u8_SQUOTE] = ACTIONS(1878), [anon_sym_SQUOTE] = ACTIONS(1878), [anon_sym_L_DQUOTE] = ACTIONS(1878), [anon_sym_u_DQUOTE] = ACTIONS(1878), [anon_sym_U_DQUOTE] = ACTIONS(1878), [anon_sym_u8_DQUOTE] = ACTIONS(1878), [anon_sym_DQUOTE] = ACTIONS(1878), [sym_true] = ACTIONS(1876), [sym_false] = ACTIONS(1876), [sym_null] = ACTIONS(1876), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1876), [anon_sym_virtual] = ACTIONS(1876), [sym_auto] = ACTIONS(1876), [anon_sym_typename] = ACTIONS(1876), [anon_sym_template] = ACTIONS(1876), [anon_sym_delete] = ACTIONS(1876), [anon_sym_throw] = ACTIONS(1876), [anon_sym_co_return] = ACTIONS(1876), [anon_sym_co_yield] = ACTIONS(1876), [anon_sym_try] = ACTIONS(1876), [anon_sym_co_await] = ACTIONS(1876), [anon_sym_new] = ACTIONS(1876), [sym_this] = ACTIONS(1876), [sym_nullptr] = ACTIONS(1876), [sym_raw_string_literal] = ACTIONS(1878), }, [923] = { [sym_identifier] = ACTIONS(1880), [anon_sym_LPAREN2] = ACTIONS(1882), [anon_sym_BANG] = ACTIONS(1882), [anon_sym_TILDE] = ACTIONS(1882), [anon_sym_DASH] = ACTIONS(1880), [anon_sym_PLUS] = ACTIONS(1880), [anon_sym_STAR] = ACTIONS(1882), [anon_sym_AMP] = ACTIONS(1882), [anon_sym_SEMI] = ACTIONS(1882), [anon_sym_typedef] = ACTIONS(1880), [anon_sym_extern] = ACTIONS(1880), [anon_sym___attribute__] = ACTIONS(1880), [anon_sym_COLON_COLON] = ACTIONS(1882), [anon_sym_LBRACK_LBRACK] = ACTIONS(1882), [anon_sym___declspec] = ACTIONS(1880), [anon_sym_LBRACE] = ACTIONS(1882), [anon_sym_LBRACK] = ACTIONS(1880), [anon_sym_static] = ACTIONS(1880), [anon_sym_register] = ACTIONS(1880), [anon_sym_inline] = ACTIONS(1880), [anon_sym_thread_local] = ACTIONS(1880), [anon_sym_const] = ACTIONS(1880), [anon_sym_volatile] = ACTIONS(1880), [anon_sym_restrict] = ACTIONS(1880), [anon_sym__Atomic] = ACTIONS(1880), [anon_sym_mutable] = ACTIONS(1880), [anon_sym_constexpr] = ACTIONS(1880), [anon_sym_signed] = ACTIONS(1880), [anon_sym_unsigned] = ACTIONS(1880), [anon_sym_long] = ACTIONS(1880), [anon_sym_short] = ACTIONS(1880), [sym_primitive_type] = ACTIONS(1880), [anon_sym_enum] = ACTIONS(1880), [anon_sym_class] = ACTIONS(1880), [anon_sym_struct] = ACTIONS(1880), [anon_sym_union] = ACTIONS(1880), [anon_sym_if] = ACTIONS(1880), [anon_sym_else] = ACTIONS(1880), [anon_sym_switch] = ACTIONS(1880), [anon_sym_while] = ACTIONS(1880), [anon_sym_do] = ACTIONS(1880), [anon_sym_for] = ACTIONS(1880), [anon_sym_return] = ACTIONS(1880), [anon_sym_break] = ACTIONS(1880), [anon_sym_continue] = ACTIONS(1880), [anon_sym_goto] = ACTIONS(1880), [anon_sym_DASH_DASH] = ACTIONS(1882), [anon_sym_PLUS_PLUS] = ACTIONS(1882), [anon_sym_sizeof] = ACTIONS(1880), [sym_number_literal] = ACTIONS(1882), [anon_sym_L_SQUOTE] = ACTIONS(1882), [anon_sym_u_SQUOTE] = ACTIONS(1882), [anon_sym_U_SQUOTE] = ACTIONS(1882), [anon_sym_u8_SQUOTE] = ACTIONS(1882), [anon_sym_SQUOTE] = ACTIONS(1882), [anon_sym_L_DQUOTE] = ACTIONS(1882), [anon_sym_u_DQUOTE] = ACTIONS(1882), [anon_sym_U_DQUOTE] = ACTIONS(1882), [anon_sym_u8_DQUOTE] = ACTIONS(1882), [anon_sym_DQUOTE] = ACTIONS(1882), [sym_true] = ACTIONS(1880), [sym_false] = ACTIONS(1880), [sym_null] = ACTIONS(1880), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1880), [anon_sym_virtual] = ACTIONS(1880), [sym_auto] = ACTIONS(1880), [anon_sym_typename] = ACTIONS(1880), [anon_sym_template] = ACTIONS(1880), [anon_sym_delete] = ACTIONS(1880), [anon_sym_throw] = ACTIONS(1880), [anon_sym_co_return] = ACTIONS(1880), [anon_sym_co_yield] = ACTIONS(1880), [anon_sym_try] = ACTIONS(1880), [anon_sym_co_await] = ACTIONS(1880), [anon_sym_new] = ACTIONS(1880), [sym_this] = ACTIONS(1880), [sym_nullptr] = ACTIONS(1880), [sym_raw_string_literal] = ACTIONS(1882), }, [924] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [925] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [926] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [927] = { [sym_identifier] = ACTIONS(1828), [anon_sym_LPAREN2] = ACTIONS(1830), [anon_sym_BANG] = ACTIONS(1830), [anon_sym_TILDE] = ACTIONS(1830), [anon_sym_DASH] = ACTIONS(1828), [anon_sym_PLUS] = ACTIONS(1828), [anon_sym_STAR] = ACTIONS(1830), [anon_sym_AMP] = ACTIONS(1830), [anon_sym_SEMI] = ACTIONS(1830), [anon_sym_typedef] = ACTIONS(1828), [anon_sym_extern] = ACTIONS(1828), [anon_sym___attribute__] = ACTIONS(1828), [anon_sym_COLON_COLON] = ACTIONS(1830), [anon_sym_LBRACK_LBRACK] = ACTIONS(1830), [anon_sym___declspec] = ACTIONS(1828), [anon_sym_LBRACE] = ACTIONS(1830), [anon_sym_LBRACK] = ACTIONS(1828), [anon_sym_static] = ACTIONS(1828), [anon_sym_register] = ACTIONS(1828), [anon_sym_inline] = ACTIONS(1828), [anon_sym_thread_local] = ACTIONS(1828), [anon_sym_const] = ACTIONS(1828), [anon_sym_volatile] = ACTIONS(1828), [anon_sym_restrict] = ACTIONS(1828), [anon_sym__Atomic] = ACTIONS(1828), [anon_sym_mutable] = ACTIONS(1828), [anon_sym_constexpr] = ACTIONS(1828), [anon_sym_signed] = ACTIONS(1828), [anon_sym_unsigned] = ACTIONS(1828), [anon_sym_long] = ACTIONS(1828), [anon_sym_short] = ACTIONS(1828), [sym_primitive_type] = ACTIONS(1828), [anon_sym_enum] = ACTIONS(1828), [anon_sym_class] = ACTIONS(1828), [anon_sym_struct] = ACTIONS(1828), [anon_sym_union] = ACTIONS(1828), [anon_sym_if] = ACTIONS(1828), [anon_sym_else] = ACTIONS(1828), [anon_sym_switch] = ACTIONS(1828), [anon_sym_while] = ACTIONS(1828), [anon_sym_do] = ACTIONS(1828), [anon_sym_for] = ACTIONS(1828), [anon_sym_return] = ACTIONS(1828), [anon_sym_break] = ACTIONS(1828), [anon_sym_continue] = ACTIONS(1828), [anon_sym_goto] = ACTIONS(1828), [anon_sym_DASH_DASH] = ACTIONS(1830), [anon_sym_PLUS_PLUS] = ACTIONS(1830), [anon_sym_sizeof] = ACTIONS(1828), [sym_number_literal] = ACTIONS(1830), [anon_sym_L_SQUOTE] = ACTIONS(1830), [anon_sym_u_SQUOTE] = ACTIONS(1830), [anon_sym_U_SQUOTE] = ACTIONS(1830), [anon_sym_u8_SQUOTE] = ACTIONS(1830), [anon_sym_SQUOTE] = ACTIONS(1830), [anon_sym_L_DQUOTE] = ACTIONS(1830), [anon_sym_u_DQUOTE] = ACTIONS(1830), [anon_sym_U_DQUOTE] = ACTIONS(1830), [anon_sym_u8_DQUOTE] = ACTIONS(1830), [anon_sym_DQUOTE] = ACTIONS(1830), [sym_true] = ACTIONS(1828), [sym_false] = ACTIONS(1828), [sym_null] = ACTIONS(1828), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1828), [anon_sym_virtual] = ACTIONS(1828), [sym_auto] = ACTIONS(1828), [anon_sym_typename] = ACTIONS(1828), [anon_sym_template] = ACTIONS(1828), [anon_sym_delete] = ACTIONS(1828), [anon_sym_throw] = ACTIONS(1828), [anon_sym_co_return] = ACTIONS(1828), [anon_sym_co_yield] = ACTIONS(1828), [anon_sym_try] = ACTIONS(1828), [anon_sym_co_await] = ACTIONS(1828), [anon_sym_new] = ACTIONS(1828), [sym_this] = ACTIONS(1828), [sym_nullptr] = ACTIONS(1828), [sym_raw_string_literal] = ACTIONS(1830), }, [928] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [929] = { [sym_identifier] = ACTIONS(1902), [anon_sym_LPAREN2] = ACTIONS(1904), [anon_sym_BANG] = ACTIONS(1904), [anon_sym_TILDE] = ACTIONS(1904), [anon_sym_DASH] = ACTIONS(1902), [anon_sym_PLUS] = ACTIONS(1902), [anon_sym_STAR] = ACTIONS(1904), [anon_sym_AMP] = ACTIONS(1904), [anon_sym_SEMI] = ACTIONS(1904), [anon_sym_typedef] = ACTIONS(1902), [anon_sym_extern] = ACTIONS(1902), [anon_sym___attribute__] = ACTIONS(1902), [anon_sym_COLON_COLON] = ACTIONS(1904), [anon_sym_LBRACK_LBRACK] = ACTIONS(1904), [anon_sym___declspec] = ACTIONS(1902), [anon_sym_LBRACE] = ACTIONS(1904), [anon_sym_LBRACK] = ACTIONS(1902), [anon_sym_static] = ACTIONS(1902), [anon_sym_register] = ACTIONS(1902), [anon_sym_inline] = ACTIONS(1902), [anon_sym_thread_local] = ACTIONS(1902), [anon_sym_const] = ACTIONS(1902), [anon_sym_volatile] = ACTIONS(1902), [anon_sym_restrict] = ACTIONS(1902), [anon_sym__Atomic] = ACTIONS(1902), [anon_sym_mutable] = ACTIONS(1902), [anon_sym_constexpr] = ACTIONS(1902), [anon_sym_signed] = ACTIONS(1902), [anon_sym_unsigned] = ACTIONS(1902), [anon_sym_long] = ACTIONS(1902), [anon_sym_short] = ACTIONS(1902), [sym_primitive_type] = ACTIONS(1902), [anon_sym_enum] = ACTIONS(1902), [anon_sym_class] = ACTIONS(1902), [anon_sym_struct] = ACTIONS(1902), [anon_sym_union] = ACTIONS(1902), [anon_sym_if] = ACTIONS(1902), [anon_sym_else] = ACTIONS(1902), [anon_sym_switch] = ACTIONS(1902), [anon_sym_while] = ACTIONS(1902), [anon_sym_do] = ACTIONS(1902), [anon_sym_for] = ACTIONS(1902), [anon_sym_return] = ACTIONS(1902), [anon_sym_break] = ACTIONS(1902), [anon_sym_continue] = ACTIONS(1902), [anon_sym_goto] = ACTIONS(1902), [anon_sym_DASH_DASH] = ACTIONS(1904), [anon_sym_PLUS_PLUS] = ACTIONS(1904), [anon_sym_sizeof] = ACTIONS(1902), [sym_number_literal] = ACTIONS(1904), [anon_sym_L_SQUOTE] = ACTIONS(1904), [anon_sym_u_SQUOTE] = ACTIONS(1904), [anon_sym_U_SQUOTE] = ACTIONS(1904), [anon_sym_u8_SQUOTE] = ACTIONS(1904), [anon_sym_SQUOTE] = ACTIONS(1904), [anon_sym_L_DQUOTE] = ACTIONS(1904), [anon_sym_u_DQUOTE] = ACTIONS(1904), [anon_sym_U_DQUOTE] = ACTIONS(1904), [anon_sym_u8_DQUOTE] = ACTIONS(1904), [anon_sym_DQUOTE] = ACTIONS(1904), [sym_true] = ACTIONS(1902), [sym_false] = ACTIONS(1902), [sym_null] = ACTIONS(1902), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1902), [anon_sym_virtual] = ACTIONS(1902), [sym_auto] = ACTIONS(1902), [anon_sym_typename] = ACTIONS(1902), [anon_sym_template] = ACTIONS(1902), [anon_sym_delete] = ACTIONS(1902), [anon_sym_throw] = ACTIONS(1902), [anon_sym_co_return] = ACTIONS(1902), [anon_sym_co_yield] = ACTIONS(1902), [anon_sym_try] = ACTIONS(1902), [anon_sym_co_await] = ACTIONS(1902), [anon_sym_new] = ACTIONS(1902), [sym_this] = ACTIONS(1902), [sym_nullptr] = ACTIONS(1902), [sym_raw_string_literal] = ACTIONS(1904), }, [930] = { [sym_identifier] = ACTIONS(1898), [anon_sym_LPAREN2] = ACTIONS(1900), [anon_sym_BANG] = ACTIONS(1900), [anon_sym_TILDE] = ACTIONS(1900), [anon_sym_DASH] = ACTIONS(1898), [anon_sym_PLUS] = ACTIONS(1898), [anon_sym_STAR] = ACTIONS(1900), [anon_sym_AMP] = ACTIONS(1900), [anon_sym_SEMI] = ACTIONS(1900), [anon_sym_typedef] = ACTIONS(1898), [anon_sym_extern] = ACTIONS(1898), [anon_sym___attribute__] = ACTIONS(1898), [anon_sym_COLON_COLON] = ACTIONS(1900), [anon_sym_LBRACK_LBRACK] = ACTIONS(1900), [anon_sym___declspec] = ACTIONS(1898), [anon_sym_LBRACE] = ACTIONS(1900), [anon_sym_LBRACK] = ACTIONS(1898), [anon_sym_static] = ACTIONS(1898), [anon_sym_register] = ACTIONS(1898), [anon_sym_inline] = ACTIONS(1898), [anon_sym_thread_local] = ACTIONS(1898), [anon_sym_const] = ACTIONS(1898), [anon_sym_volatile] = ACTIONS(1898), [anon_sym_restrict] = ACTIONS(1898), [anon_sym__Atomic] = ACTIONS(1898), [anon_sym_mutable] = ACTIONS(1898), [anon_sym_constexpr] = ACTIONS(1898), [anon_sym_signed] = ACTIONS(1898), [anon_sym_unsigned] = ACTIONS(1898), [anon_sym_long] = ACTIONS(1898), [anon_sym_short] = ACTIONS(1898), [sym_primitive_type] = ACTIONS(1898), [anon_sym_enum] = ACTIONS(1898), [anon_sym_class] = ACTIONS(1898), [anon_sym_struct] = ACTIONS(1898), [anon_sym_union] = ACTIONS(1898), [anon_sym_if] = ACTIONS(1898), [anon_sym_else] = ACTIONS(1898), [anon_sym_switch] = ACTIONS(1898), [anon_sym_while] = ACTIONS(1898), [anon_sym_do] = ACTIONS(1898), [anon_sym_for] = ACTIONS(1898), [anon_sym_return] = ACTIONS(1898), [anon_sym_break] = ACTIONS(1898), [anon_sym_continue] = ACTIONS(1898), [anon_sym_goto] = ACTIONS(1898), [anon_sym_DASH_DASH] = ACTIONS(1900), [anon_sym_PLUS_PLUS] = ACTIONS(1900), [anon_sym_sizeof] = ACTIONS(1898), [sym_number_literal] = ACTIONS(1900), [anon_sym_L_SQUOTE] = ACTIONS(1900), [anon_sym_u_SQUOTE] = ACTIONS(1900), [anon_sym_U_SQUOTE] = ACTIONS(1900), [anon_sym_u8_SQUOTE] = ACTIONS(1900), [anon_sym_SQUOTE] = ACTIONS(1900), [anon_sym_L_DQUOTE] = ACTIONS(1900), [anon_sym_u_DQUOTE] = ACTIONS(1900), [anon_sym_U_DQUOTE] = ACTIONS(1900), [anon_sym_u8_DQUOTE] = ACTIONS(1900), [anon_sym_DQUOTE] = ACTIONS(1900), [sym_true] = ACTIONS(1898), [sym_false] = ACTIONS(1898), [sym_null] = ACTIONS(1898), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1898), [anon_sym_virtual] = ACTIONS(1898), [sym_auto] = ACTIONS(1898), [anon_sym_typename] = ACTIONS(1898), [anon_sym_template] = ACTIONS(1898), [anon_sym_delete] = ACTIONS(1898), [anon_sym_throw] = ACTIONS(1898), [anon_sym_co_return] = ACTIONS(1898), [anon_sym_co_yield] = ACTIONS(1898), [anon_sym_try] = ACTIONS(1898), [anon_sym_co_await] = ACTIONS(1898), [anon_sym_new] = ACTIONS(1898), [sym_this] = ACTIONS(1898), [sym_nullptr] = ACTIONS(1898), [sym_raw_string_literal] = ACTIONS(1900), }, [931] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [932] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [933] = { [sym_identifier] = ACTIONS(1860), [anon_sym_LPAREN2] = ACTIONS(1862), [anon_sym_BANG] = ACTIONS(1862), [anon_sym_TILDE] = ACTIONS(1862), [anon_sym_DASH] = ACTIONS(1860), [anon_sym_PLUS] = ACTIONS(1860), [anon_sym_STAR] = ACTIONS(1862), [anon_sym_AMP] = ACTIONS(1862), [anon_sym_SEMI] = ACTIONS(1862), [anon_sym_typedef] = ACTIONS(1860), [anon_sym_extern] = ACTIONS(1860), [anon_sym___attribute__] = ACTIONS(1860), [anon_sym_COLON_COLON] = ACTIONS(1862), [anon_sym_LBRACK_LBRACK] = ACTIONS(1862), [anon_sym___declspec] = ACTIONS(1860), [anon_sym_LBRACE] = ACTIONS(1862), [anon_sym_LBRACK] = ACTIONS(1860), [anon_sym_static] = ACTIONS(1860), [anon_sym_register] = ACTIONS(1860), [anon_sym_inline] = ACTIONS(1860), [anon_sym_thread_local] = ACTIONS(1860), [anon_sym_const] = ACTIONS(1860), [anon_sym_volatile] = ACTIONS(1860), [anon_sym_restrict] = ACTIONS(1860), [anon_sym__Atomic] = ACTIONS(1860), [anon_sym_mutable] = ACTIONS(1860), [anon_sym_constexpr] = ACTIONS(1860), [anon_sym_signed] = ACTIONS(1860), [anon_sym_unsigned] = ACTIONS(1860), [anon_sym_long] = ACTIONS(1860), [anon_sym_short] = ACTIONS(1860), [sym_primitive_type] = ACTIONS(1860), [anon_sym_enum] = ACTIONS(1860), [anon_sym_class] = ACTIONS(1860), [anon_sym_struct] = ACTIONS(1860), [anon_sym_union] = ACTIONS(1860), [anon_sym_if] = ACTIONS(1860), [anon_sym_else] = ACTIONS(1860), [anon_sym_switch] = ACTIONS(1860), [anon_sym_while] = ACTIONS(1860), [anon_sym_do] = ACTIONS(1860), [anon_sym_for] = ACTIONS(1860), [anon_sym_return] = ACTIONS(1860), [anon_sym_break] = ACTIONS(1860), [anon_sym_continue] = ACTIONS(1860), [anon_sym_goto] = ACTIONS(1860), [anon_sym_DASH_DASH] = ACTIONS(1862), [anon_sym_PLUS_PLUS] = ACTIONS(1862), [anon_sym_sizeof] = ACTIONS(1860), [sym_number_literal] = ACTIONS(1862), [anon_sym_L_SQUOTE] = ACTIONS(1862), [anon_sym_u_SQUOTE] = ACTIONS(1862), [anon_sym_U_SQUOTE] = ACTIONS(1862), [anon_sym_u8_SQUOTE] = ACTIONS(1862), [anon_sym_SQUOTE] = ACTIONS(1862), [anon_sym_L_DQUOTE] = ACTIONS(1862), [anon_sym_u_DQUOTE] = ACTIONS(1862), [anon_sym_U_DQUOTE] = ACTIONS(1862), [anon_sym_u8_DQUOTE] = ACTIONS(1862), [anon_sym_DQUOTE] = ACTIONS(1862), [sym_true] = ACTIONS(1860), [sym_false] = ACTIONS(1860), [sym_null] = ACTIONS(1860), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1860), [anon_sym_virtual] = ACTIONS(1860), [sym_auto] = ACTIONS(1860), [anon_sym_typename] = ACTIONS(1860), [anon_sym_template] = ACTIONS(1860), [anon_sym_delete] = ACTIONS(1860), [anon_sym_throw] = ACTIONS(1860), [anon_sym_co_return] = ACTIONS(1860), [anon_sym_co_yield] = ACTIONS(1860), [anon_sym_try] = ACTIONS(1860), [anon_sym_co_await] = ACTIONS(1860), [anon_sym_new] = ACTIONS(1860), [sym_this] = ACTIONS(1860), [sym_nullptr] = ACTIONS(1860), [sym_raw_string_literal] = ACTIONS(1862), }, [934] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [935] = { [sym_identifier] = ACTIONS(1894), [anon_sym_LPAREN2] = ACTIONS(1896), [anon_sym_BANG] = ACTIONS(1896), [anon_sym_TILDE] = ACTIONS(1896), [anon_sym_DASH] = ACTIONS(1894), [anon_sym_PLUS] = ACTIONS(1894), [anon_sym_STAR] = ACTIONS(1896), [anon_sym_AMP] = ACTIONS(1896), [anon_sym_SEMI] = ACTIONS(1896), [anon_sym_typedef] = ACTIONS(1894), [anon_sym_extern] = ACTIONS(1894), [anon_sym___attribute__] = ACTIONS(1894), [anon_sym_COLON_COLON] = ACTIONS(1896), [anon_sym_LBRACK_LBRACK] = ACTIONS(1896), [anon_sym___declspec] = ACTIONS(1894), [anon_sym_LBRACE] = ACTIONS(1896), [anon_sym_LBRACK] = ACTIONS(1894), [anon_sym_static] = ACTIONS(1894), [anon_sym_register] = ACTIONS(1894), [anon_sym_inline] = ACTIONS(1894), [anon_sym_thread_local] = ACTIONS(1894), [anon_sym_const] = ACTIONS(1894), [anon_sym_volatile] = ACTIONS(1894), [anon_sym_restrict] = ACTIONS(1894), [anon_sym__Atomic] = ACTIONS(1894), [anon_sym_mutable] = ACTIONS(1894), [anon_sym_constexpr] = ACTIONS(1894), [anon_sym_signed] = ACTIONS(1894), [anon_sym_unsigned] = ACTIONS(1894), [anon_sym_long] = ACTIONS(1894), [anon_sym_short] = ACTIONS(1894), [sym_primitive_type] = ACTIONS(1894), [anon_sym_enum] = ACTIONS(1894), [anon_sym_class] = ACTIONS(1894), [anon_sym_struct] = ACTIONS(1894), [anon_sym_union] = ACTIONS(1894), [anon_sym_if] = ACTIONS(1894), [anon_sym_else] = ACTIONS(1894), [anon_sym_switch] = ACTIONS(1894), [anon_sym_while] = ACTIONS(1894), [anon_sym_do] = ACTIONS(1894), [anon_sym_for] = ACTIONS(1894), [anon_sym_return] = ACTIONS(1894), [anon_sym_break] = ACTIONS(1894), [anon_sym_continue] = ACTIONS(1894), [anon_sym_goto] = ACTIONS(1894), [anon_sym_DASH_DASH] = ACTIONS(1896), [anon_sym_PLUS_PLUS] = ACTIONS(1896), [anon_sym_sizeof] = ACTIONS(1894), [sym_number_literal] = ACTIONS(1896), [anon_sym_L_SQUOTE] = ACTIONS(1896), [anon_sym_u_SQUOTE] = ACTIONS(1896), [anon_sym_U_SQUOTE] = ACTIONS(1896), [anon_sym_u8_SQUOTE] = ACTIONS(1896), [anon_sym_SQUOTE] = ACTIONS(1896), [anon_sym_L_DQUOTE] = ACTIONS(1896), [anon_sym_u_DQUOTE] = ACTIONS(1896), [anon_sym_U_DQUOTE] = ACTIONS(1896), [anon_sym_u8_DQUOTE] = ACTIONS(1896), [anon_sym_DQUOTE] = ACTIONS(1896), [sym_true] = ACTIONS(1894), [sym_false] = ACTIONS(1894), [sym_null] = ACTIONS(1894), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1894), [anon_sym_virtual] = ACTIONS(1894), [sym_auto] = ACTIONS(1894), [anon_sym_typename] = ACTIONS(1894), [anon_sym_template] = ACTIONS(1894), [anon_sym_delete] = ACTIONS(1894), [anon_sym_throw] = ACTIONS(1894), [anon_sym_co_return] = ACTIONS(1894), [anon_sym_co_yield] = ACTIONS(1894), [anon_sym_try] = ACTIONS(1894), [anon_sym_co_await] = ACTIONS(1894), [anon_sym_new] = ACTIONS(1894), [sym_this] = ACTIONS(1894), [sym_nullptr] = ACTIONS(1894), [sym_raw_string_literal] = ACTIONS(1896), }, [936] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [937] = { [sym_identifier] = ACTIONS(1832), [anon_sym_LPAREN2] = ACTIONS(1834), [anon_sym_BANG] = ACTIONS(1834), [anon_sym_TILDE] = ACTIONS(1834), [anon_sym_DASH] = ACTIONS(1832), [anon_sym_PLUS] = ACTIONS(1832), [anon_sym_STAR] = ACTIONS(1834), [anon_sym_AMP] = ACTIONS(1834), [anon_sym_SEMI] = ACTIONS(1834), [anon_sym_typedef] = ACTIONS(1832), [anon_sym_extern] = ACTIONS(1832), [anon_sym___attribute__] = ACTIONS(1832), [anon_sym_COLON_COLON] = ACTIONS(1834), [anon_sym_LBRACK_LBRACK] = ACTIONS(1834), [anon_sym___declspec] = ACTIONS(1832), [anon_sym_LBRACE] = ACTIONS(1834), [anon_sym_LBRACK] = ACTIONS(1832), [anon_sym_static] = ACTIONS(1832), [anon_sym_register] = ACTIONS(1832), [anon_sym_inline] = ACTIONS(1832), [anon_sym_thread_local] = ACTIONS(1832), [anon_sym_const] = ACTIONS(1832), [anon_sym_volatile] = ACTIONS(1832), [anon_sym_restrict] = ACTIONS(1832), [anon_sym__Atomic] = ACTIONS(1832), [anon_sym_mutable] = ACTIONS(1832), [anon_sym_constexpr] = ACTIONS(1832), [anon_sym_signed] = ACTIONS(1832), [anon_sym_unsigned] = ACTIONS(1832), [anon_sym_long] = ACTIONS(1832), [anon_sym_short] = ACTIONS(1832), [sym_primitive_type] = ACTIONS(1832), [anon_sym_enum] = ACTIONS(1832), [anon_sym_class] = ACTIONS(1832), [anon_sym_struct] = ACTIONS(1832), [anon_sym_union] = ACTIONS(1832), [anon_sym_if] = ACTIONS(1832), [anon_sym_else] = ACTIONS(1832), [anon_sym_switch] = ACTIONS(1832), [anon_sym_while] = ACTIONS(1832), [anon_sym_do] = ACTIONS(1832), [anon_sym_for] = ACTIONS(1832), [anon_sym_return] = ACTIONS(1832), [anon_sym_break] = ACTIONS(1832), [anon_sym_continue] = ACTIONS(1832), [anon_sym_goto] = ACTIONS(1832), [anon_sym_DASH_DASH] = ACTIONS(1834), [anon_sym_PLUS_PLUS] = ACTIONS(1834), [anon_sym_sizeof] = ACTIONS(1832), [sym_number_literal] = ACTIONS(1834), [anon_sym_L_SQUOTE] = ACTIONS(1834), [anon_sym_u_SQUOTE] = ACTIONS(1834), [anon_sym_U_SQUOTE] = ACTIONS(1834), [anon_sym_u8_SQUOTE] = ACTIONS(1834), [anon_sym_SQUOTE] = ACTIONS(1834), [anon_sym_L_DQUOTE] = ACTIONS(1834), [anon_sym_u_DQUOTE] = ACTIONS(1834), [anon_sym_U_DQUOTE] = ACTIONS(1834), [anon_sym_u8_DQUOTE] = ACTIONS(1834), [anon_sym_DQUOTE] = ACTIONS(1834), [sym_true] = ACTIONS(1832), [sym_false] = ACTIONS(1832), [sym_null] = ACTIONS(1832), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1832), [anon_sym_virtual] = ACTIONS(1832), [sym_auto] = ACTIONS(1832), [anon_sym_typename] = ACTIONS(1832), [anon_sym_template] = ACTIONS(1832), [anon_sym_delete] = ACTIONS(1832), [anon_sym_throw] = ACTIONS(1832), [anon_sym_co_return] = ACTIONS(1832), [anon_sym_co_yield] = ACTIONS(1832), [anon_sym_try] = ACTIONS(1832), [anon_sym_co_await] = ACTIONS(1832), [anon_sym_new] = ACTIONS(1832), [sym_this] = ACTIONS(1832), [sym_nullptr] = ACTIONS(1832), [sym_raw_string_literal] = ACTIONS(1834), }, [938] = { [sym_identifier] = ACTIONS(1888), [anon_sym_LPAREN2] = ACTIONS(1890), [anon_sym_BANG] = ACTIONS(1890), [anon_sym_TILDE] = ACTIONS(1890), [anon_sym_DASH] = ACTIONS(1888), [anon_sym_PLUS] = ACTIONS(1888), [anon_sym_STAR] = ACTIONS(1890), [anon_sym_AMP] = ACTIONS(1890), [anon_sym_SEMI] = ACTIONS(1890), [anon_sym_typedef] = ACTIONS(1888), [anon_sym_extern] = ACTIONS(1888), [anon_sym___attribute__] = ACTIONS(1888), [anon_sym_COLON_COLON] = ACTIONS(1890), [anon_sym_LBRACK_LBRACK] = ACTIONS(1890), [anon_sym___declspec] = ACTIONS(1888), [anon_sym_LBRACE] = ACTIONS(1890), [anon_sym_LBRACK] = ACTIONS(1888), [anon_sym_static] = ACTIONS(1888), [anon_sym_register] = ACTIONS(1888), [anon_sym_inline] = ACTIONS(1888), [anon_sym_thread_local] = ACTIONS(1888), [anon_sym_const] = ACTIONS(1888), [anon_sym_volatile] = ACTIONS(1888), [anon_sym_restrict] = ACTIONS(1888), [anon_sym__Atomic] = ACTIONS(1888), [anon_sym_mutable] = ACTIONS(1888), [anon_sym_constexpr] = ACTIONS(1888), [anon_sym_signed] = ACTIONS(1888), [anon_sym_unsigned] = ACTIONS(1888), [anon_sym_long] = ACTIONS(1888), [anon_sym_short] = ACTIONS(1888), [sym_primitive_type] = ACTIONS(1888), [anon_sym_enum] = ACTIONS(1888), [anon_sym_class] = ACTIONS(1888), [anon_sym_struct] = ACTIONS(1888), [anon_sym_union] = ACTIONS(1888), [anon_sym_if] = ACTIONS(1888), [anon_sym_else] = ACTIONS(2527), [anon_sym_switch] = ACTIONS(1888), [anon_sym_while] = ACTIONS(1888), [anon_sym_do] = ACTIONS(1888), [anon_sym_for] = ACTIONS(1888), [anon_sym_return] = ACTIONS(1888), [anon_sym_break] = ACTIONS(1888), [anon_sym_continue] = ACTIONS(1888), [anon_sym_goto] = ACTIONS(1888), [anon_sym_DASH_DASH] = ACTIONS(1890), [anon_sym_PLUS_PLUS] = ACTIONS(1890), [anon_sym_sizeof] = ACTIONS(1888), [sym_number_literal] = ACTIONS(1890), [anon_sym_L_SQUOTE] = ACTIONS(1890), [anon_sym_u_SQUOTE] = ACTIONS(1890), [anon_sym_U_SQUOTE] = ACTIONS(1890), [anon_sym_u8_SQUOTE] = ACTIONS(1890), [anon_sym_SQUOTE] = ACTIONS(1890), [anon_sym_L_DQUOTE] = ACTIONS(1890), [anon_sym_u_DQUOTE] = ACTIONS(1890), [anon_sym_U_DQUOTE] = ACTIONS(1890), [anon_sym_u8_DQUOTE] = ACTIONS(1890), [anon_sym_DQUOTE] = ACTIONS(1890), [sym_true] = ACTIONS(1888), [sym_false] = ACTIONS(1888), [sym_null] = ACTIONS(1888), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(1888), [anon_sym_virtual] = ACTIONS(1888), [sym_auto] = ACTIONS(1888), [anon_sym_typename] = ACTIONS(1888), [anon_sym_template] = ACTIONS(1888), [anon_sym_delete] = ACTIONS(1888), [anon_sym_throw] = ACTIONS(1888), [anon_sym_co_return] = ACTIONS(1888), [anon_sym_co_yield] = ACTIONS(1888), [anon_sym_try] = ACTIONS(1888), [anon_sym_co_await] = ACTIONS(1888), [anon_sym_new] = ACTIONS(1888), [sym_this] = ACTIONS(1888), [sym_nullptr] = ACTIONS(1888), [sym_raw_string_literal] = ACTIONS(1890), }, [939] = { [sym_identifier] = ACTIONS(2498), [anon_sym_LPAREN2] = ACTIONS(2504), [anon_sym_BANG] = ACTIONS(2504), [anon_sym_TILDE] = ACTIONS(2504), [anon_sym_DASH] = ACTIONS(2506), [anon_sym_PLUS] = ACTIONS(2506), [anon_sym_STAR] = ACTIONS(2504), [anon_sym_AMP] = ACTIONS(2504), [anon_sym_SEMI] = ACTIONS(2504), [anon_sym_extern] = ACTIONS(2510), [anon_sym___attribute__] = ACTIONS(2510), [anon_sym_COLON_COLON] = ACTIONS(2501), [anon_sym_LBRACK_LBRACK] = ACTIONS(2501), [anon_sym___declspec] = ACTIONS(2510), [anon_sym_LBRACE] = ACTIONS(2504), [anon_sym_LBRACK] = ACTIONS(2506), [anon_sym_static] = ACTIONS(2510), [anon_sym_register] = ACTIONS(2510), [anon_sym_inline] = ACTIONS(2510), [anon_sym_thread_local] = ACTIONS(2510), [anon_sym_const] = ACTIONS(2510), [anon_sym_volatile] = ACTIONS(2510), [anon_sym_restrict] = ACTIONS(2510), [anon_sym__Atomic] = ACTIONS(2510), [anon_sym_mutable] = ACTIONS(2510), [anon_sym_constexpr] = ACTIONS(2510), [anon_sym_signed] = ACTIONS(2510), [anon_sym_unsigned] = ACTIONS(2510), [anon_sym_long] = ACTIONS(2510), [anon_sym_short] = ACTIONS(2510), [sym_primitive_type] = ACTIONS(2498), [anon_sym_enum] = ACTIONS(2510), [anon_sym_class] = ACTIONS(2510), [anon_sym_struct] = ACTIONS(2510), [anon_sym_union] = ACTIONS(2510), [anon_sym_if] = ACTIONS(2506), [anon_sym_switch] = ACTIONS(2506), [anon_sym_while] = ACTIONS(2506), [anon_sym_do] = ACTIONS(2506), [anon_sym_for] = ACTIONS(2506), [anon_sym_return] = ACTIONS(2506), [anon_sym_break] = ACTIONS(2506), [anon_sym_continue] = ACTIONS(2506), [anon_sym_goto] = ACTIONS(2506), [anon_sym_DASH_DASH] = ACTIONS(2504), [anon_sym_PLUS_PLUS] = ACTIONS(2504), [anon_sym_sizeof] = ACTIONS(2506), [sym_number_literal] = ACTIONS(2504), [anon_sym_L_SQUOTE] = ACTIONS(2504), [anon_sym_u_SQUOTE] = ACTIONS(2504), [anon_sym_U_SQUOTE] = ACTIONS(2504), [anon_sym_u8_SQUOTE] = ACTIONS(2504), [anon_sym_SQUOTE] = ACTIONS(2504), [anon_sym_L_DQUOTE] = ACTIONS(2504), [anon_sym_u_DQUOTE] = ACTIONS(2504), [anon_sym_U_DQUOTE] = ACTIONS(2504), [anon_sym_u8_DQUOTE] = ACTIONS(2504), [anon_sym_DQUOTE] = ACTIONS(2504), [sym_true] = ACTIONS(2506), [sym_false] = ACTIONS(2506), [sym_null] = ACTIONS(2506), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(2510), [anon_sym_virtual] = ACTIONS(2510), [sym_auto] = ACTIONS(2510), [anon_sym_typename] = ACTIONS(2510), [anon_sym_template] = ACTIONS(2498), [anon_sym_delete] = ACTIONS(2506), [anon_sym_throw] = ACTIONS(2506), [anon_sym_co_return] = ACTIONS(2506), [anon_sym_co_yield] = ACTIONS(2506), [anon_sym_try] = ACTIONS(2506), [anon_sym_co_await] = ACTIONS(2506), [anon_sym_new] = ACTIONS(2506), [sym_this] = ACTIONS(2506), [sym_nullptr] = ACTIONS(2506), [sym_raw_string_literal] = ACTIONS(2504), }, [940] = { [sym_type_qualifier] = STATE(1726), [sym__expression] = STATE(3100), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(1726), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(2529), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2531), [anon_sym_const] = ACTIONS(2533), [anon_sym_volatile] = ACTIONS(2533), [anon_sym_restrict] = ACTIONS(2533), [anon_sym__Atomic] = ACTIONS(2533), [anon_sym_mutable] = ACTIONS(2533), [anon_sym_constexpr] = ACTIONS(2533), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [941] = { [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3130), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(1634), [sym_ms_declspec_modifier] = STATE(1634), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4010), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3782), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_parameter_list] = STATE(821), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(3182), [sym_template_function] = STATE(3782), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3637), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2306), [sym_operator_name] = STATE(3782), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [sym_identifier] = ACTIONS(2535), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_LT] = ACTIONS(2537), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(2539), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(111), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(1724), }, [942] = { [sym__expression] = STATE(2746), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4409), [sym_initializer_pair] = STATE(4409), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_initializer_pair_repeat1] = STATE(4093), [sym_identifier] = ACTIONS(2432), [anon_sym_COMMA] = ACTIONS(2541), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_RBRACE] = ACTIONS(2543), [anon_sym_LBRACK] = ACTIONS(2545), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [943] = { [sym_type_qualifier] = STATE(1726), [sym__expression] = STATE(3057), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(1726), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(2547), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2549), [anon_sym_const] = ACTIONS(2533), [anon_sym_volatile] = ACTIONS(2533), [anon_sym_restrict] = ACTIONS(2533), [anon_sym__Atomic] = ACTIONS(2533), [anon_sym_mutable] = ACTIONS(2533), [anon_sym_constexpr] = ACTIONS(2533), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [944] = { [sym_type_qualifier] = STATE(952), [sym__expression] = STATE(3061), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(952), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(2551), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2553), [anon_sym_const] = ACTIONS(2533), [anon_sym_volatile] = ACTIONS(2533), [anon_sym_restrict] = ACTIONS(2533), [anon_sym__Atomic] = ACTIONS(2533), [anon_sym_mutable] = ACTIONS(2533), [anon_sym_constexpr] = ACTIONS(2533), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [945] = { [sym_type_qualifier] = STATE(1726), [sym__expression] = STATE(2922), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(1726), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(2555), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2557), [anon_sym_const] = ACTIONS(2533), [anon_sym_volatile] = ACTIONS(2533), [anon_sym_restrict] = ACTIONS(2533), [anon_sym__Atomic] = ACTIONS(2533), [anon_sym_mutable] = ACTIONS(2533), [anon_sym_constexpr] = ACTIONS(2533), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [946] = { [sym__expression] = STATE(2741), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4452), [sym_initializer_pair] = STATE(4452), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_initializer_pair_repeat1] = STATE(4093), [sym_identifier] = ACTIONS(2432), [anon_sym_COMMA] = ACTIONS(2559), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_RBRACE] = ACTIONS(2561), [anon_sym_LBRACK] = ACTIONS(2545), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [947] = { [sym_type_qualifier] = STATE(1726), [sym__expression] = STATE(2980), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(1726), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(2563), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2565), [anon_sym_const] = ACTIONS(2533), [anon_sym_volatile] = ACTIONS(2533), [anon_sym_restrict] = ACTIONS(2533), [anon_sym__Atomic] = ACTIONS(2533), [anon_sym_mutable] = ACTIONS(2533), [anon_sym_constexpr] = ACTIONS(2533), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [948] = { [sym_type_qualifier] = STATE(1726), [sym__expression] = STATE(3107), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(1726), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(2567), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2569), [anon_sym_const] = ACTIONS(2533), [anon_sym_volatile] = ACTIONS(2533), [anon_sym_restrict] = ACTIONS(2533), [anon_sym__Atomic] = ACTIONS(2533), [anon_sym_mutable] = ACTIONS(2533), [anon_sym_constexpr] = ACTIONS(2533), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [949] = { [sym__expression] = STATE(2710), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4568), [sym_initializer_pair] = STATE(4568), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_initializer_pair_repeat1] = STATE(4093), [sym_identifier] = ACTIONS(2432), [anon_sym_COMMA] = ACTIONS(2571), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_RBRACE] = ACTIONS(2573), [anon_sym_LBRACK] = ACTIONS(2545), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [950] = { [sym__expression] = STATE(2754), [sym_comma_expression] = STATE(5046), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4755), [sym_initializer_pair] = STATE(4755), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_initializer_pair_repeat1] = STATE(4093), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_RBRACE] = ACTIONS(2575), [anon_sym_LBRACK] = ACTIONS(2545), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [951] = { [sym_type_qualifier] = STATE(948), [sym__expression] = STATE(3047), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(948), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(2577), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2579), [anon_sym_const] = ACTIONS(2533), [anon_sym_volatile] = ACTIONS(2533), [anon_sym_restrict] = ACTIONS(2533), [anon_sym__Atomic] = ACTIONS(2533), [anon_sym_mutable] = ACTIONS(2533), [anon_sym_constexpr] = ACTIONS(2533), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [952] = { [sym_type_qualifier] = STATE(1726), [sym__expression] = STATE(2924), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(1726), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(2581), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2583), [anon_sym_const] = ACTIONS(2533), [anon_sym_volatile] = ACTIONS(2533), [anon_sym_restrict] = ACTIONS(2533), [anon_sym__Atomic] = ACTIONS(2533), [anon_sym_mutable] = ACTIONS(2533), [anon_sym_constexpr] = ACTIONS(2533), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [953] = { [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3146), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(1634), [sym_ms_declspec_modifier] = STATE(1634), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4038), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3782), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_parameter_list] = STATE(837), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(3182), [sym_template_function] = STATE(3782), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3637), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2306), [sym_operator_name] = STATE(3782), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [sym_identifier] = ACTIONS(2535), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_LT] = ACTIONS(2537), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(2539), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(111), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(1724), }, [954] = { [sym_type_qualifier] = STATE(947), [sym__expression] = STATE(2987), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(947), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(2585), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2587), [anon_sym_const] = ACTIONS(2533), [anon_sym_volatile] = ACTIONS(2533), [anon_sym_restrict] = ACTIONS(2533), [anon_sym__Atomic] = ACTIONS(2533), [anon_sym_mutable] = ACTIONS(2533), [anon_sym_constexpr] = ACTIONS(2533), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [955] = { [sym_type_qualifier] = STATE(1726), [sym__expression] = STATE(2903), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(1726), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(2589), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2591), [anon_sym_const] = ACTIONS(2533), [anon_sym_volatile] = ACTIONS(2533), [anon_sym_restrict] = ACTIONS(2533), [anon_sym__Atomic] = ACTIONS(2533), [anon_sym_mutable] = ACTIONS(2533), [anon_sym_constexpr] = ACTIONS(2533), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [956] = { [sym__expression] = STATE(2718), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4449), [sym_initializer_pair] = STATE(4449), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_initializer_pair_repeat1] = STATE(4093), [sym_identifier] = ACTIONS(2432), [anon_sym_COMMA] = ACTIONS(147), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_RBRACE] = ACTIONS(2593), [anon_sym_LBRACK] = ACTIONS(2545), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [957] = { [sym_type_qualifier] = STATE(943), [sym__expression] = STATE(3091), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(943), [sym_identifier] = ACTIONS(2595), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(2597), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2599), [anon_sym_const] = ACTIONS(2533), [anon_sym_volatile] = ACTIONS(2533), [anon_sym_restrict] = ACTIONS(2533), [anon_sym__Atomic] = ACTIONS(2533), [anon_sym_mutable] = ACTIONS(2533), [anon_sym_constexpr] = ACTIONS(2533), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [958] = { [sym__expression] = STATE(2723), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4462), [sym_initializer_pair] = STATE(4462), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_initializer_pair_repeat1] = STATE(4093), [sym_identifier] = ACTIONS(2432), [anon_sym_COMMA] = ACTIONS(2601), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_RBRACE] = ACTIONS(2603), [anon_sym_LBRACK] = ACTIONS(2545), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [959] = { [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3165), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(1634), [sym_ms_declspec_modifier] = STATE(1634), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4051), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3782), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_parameter_list] = STATE(842), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(3182), [sym_template_function] = STATE(3782), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3637), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2306), [sym_operator_name] = STATE(3782), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [sym_identifier] = ACTIONS(2535), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_LT] = ACTIONS(2537), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(2539), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(111), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(1724), }, [960] = { [sym_type_qualifier] = STATE(945), [sym__expression] = STATE(3048), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(945), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(2605), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2607), [anon_sym_const] = ACTIONS(2533), [anon_sym_volatile] = ACTIONS(2533), [anon_sym_restrict] = ACTIONS(2533), [anon_sym__Atomic] = ACTIONS(2533), [anon_sym_mutable] = ACTIONS(2533), [anon_sym_constexpr] = ACTIONS(2533), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [961] = { [sym_type_qualifier] = STATE(943), [sym__expression] = STATE(3091), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(943), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(2597), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2599), [anon_sym_const] = ACTIONS(2533), [anon_sym_volatile] = ACTIONS(2533), [anon_sym_restrict] = ACTIONS(2533), [anon_sym__Atomic] = ACTIONS(2533), [anon_sym_mutable] = ACTIONS(2533), [anon_sym_constexpr] = ACTIONS(2533), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [962] = { [sym__declaration_modifiers] = STATE(1634), [sym__declaration_specifiers] = STATE(3152), [sym_attribute_specifier] = STATE(1634), [sym_attribute_declaration] = STATE(1634), [sym_ms_declspec_modifier] = STATE(1634), [sym_ms_based_modifier] = STATE(5398), [sym__declarator] = STATE(4056), [sym_parenthesized_declarator] = STATE(3782), [sym_attributed_declarator] = STATE(3782), [sym_pointer_declarator] = STATE(3782), [sym_function_declarator] = STATE(3782), [sym_array_declarator] = STATE(3782), [sym_storage_class_specifier] = STATE(1634), [sym_type_qualifier] = STATE(1634), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym_virtual_function_specifier] = STATE(1634), [sym_dependent_type] = STATE(2326), [sym_template_parameter_list] = STATE(827), [sym_reference_declarator] = STATE(3782), [sym_structured_binding_declarator] = STATE(3782), [sym_template_type] = STATE(3182), [sym_template_function] = STATE(3782), [sym_destructor_name] = STATE(3782), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3637), [sym_qualified_identifier] = STATE(3782), [sym_qualified_type_identifier] = STATE(2306), [sym_operator_name] = STATE(3782), [aux_sym__declaration_specifiers_repeat1] = STATE(1634), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [sym_identifier] = ACTIONS(2535), [anon_sym_LPAREN2] = ACTIONS(1379), [anon_sym_TILDE] = ACTIONS(1381), [anon_sym_STAR] = ACTIONS(1383), [anon_sym_AMP_AMP] = ACTIONS(29), [anon_sym_AMP] = ACTIONS(1385), [anon_sym_LT] = ACTIONS(2537), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(2539), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym___based] = ACTIONS(47), [anon_sym_LBRACK] = ACTIONS(1391), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(111), [anon_sym_enum] = ACTIONS(63), [anon_sym_class] = ACTIONS(65), [anon_sym_struct] = ACTIONS(67), [anon_sym_union] = ACTIONS(69), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(113), [anon_sym_template] = ACTIONS(931), [anon_sym_operator] = ACTIONS(1724), }, [963] = { [sym_type_qualifier] = STATE(940), [sym__expression] = STATE(3117), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(940), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(2609), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2611), [anon_sym_const] = ACTIONS(2533), [anon_sym_volatile] = ACTIONS(2533), [anon_sym_restrict] = ACTIONS(2533), [anon_sym__Atomic] = ACTIONS(2533), [anon_sym_mutable] = ACTIONS(2533), [anon_sym_constexpr] = ACTIONS(2533), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [964] = { [sym_type_qualifier] = STATE(955), [sym__expression] = STATE(2891), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_type_definition_repeat1] = STATE(955), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(2613), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2615), [anon_sym_const] = ACTIONS(2533), [anon_sym_volatile] = ACTIONS(2533), [anon_sym_restrict] = ACTIONS(2533), [anon_sym__Atomic] = ACTIONS(2533), [anon_sym_mutable] = ACTIONS(2533), [anon_sym_constexpr] = ACTIONS(2533), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [965] = { [sym__expression] = STATE(2766), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4755), [sym_initializer_pair] = STATE(4755), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_initializer_pair_repeat1] = STATE(4093), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_RBRACE] = ACTIONS(2617), [anon_sym_LBRACK] = ACTIONS(2545), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [966] = { [sym__expression] = STATE(2766), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4755), [sym_initializer_pair] = STATE(4755), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_initializer_pair_repeat1] = STATE(4093), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_RBRACE] = ACTIONS(2619), [anon_sym_LBRACK] = ACTIONS(2545), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [967] = { [sym__expression] = STATE(2766), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4755), [sym_initializer_pair] = STATE(4755), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_initializer_pair_repeat1] = STATE(4093), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_RBRACE] = ACTIONS(2621), [anon_sym_LBRACK] = ACTIONS(2545), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [968] = { [sym__expression] = STATE(2766), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4755), [sym_initializer_pair] = STATE(4755), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_initializer_pair_repeat1] = STATE(4093), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_RBRACE] = ACTIONS(2623), [anon_sym_LBRACK] = ACTIONS(2545), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [969] = { [sym__expression] = STATE(2766), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4755), [sym_initializer_pair] = STATE(4755), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_initializer_pair_repeat1] = STATE(4093), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_RBRACE] = ACTIONS(2625), [anon_sym_LBRACK] = ACTIONS(2545), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [970] = { [sym__expression] = STATE(2766), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4755), [sym_initializer_pair] = STATE(4755), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_initializer_pair_repeat1] = STATE(4093), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_RBRACE] = ACTIONS(2627), [anon_sym_LBRACK] = ACTIONS(2545), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [971] = { [sym__expression] = STATE(2766), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4755), [sym_initializer_pair] = STATE(4755), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_initializer_pair_repeat1] = STATE(4093), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_RBRACE] = ACTIONS(2629), [anon_sym_LBRACK] = ACTIONS(2545), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [972] = { [sym__expression] = STATE(2766), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4755), [sym_initializer_pair] = STATE(4755), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_initializer_pair_repeat1] = STATE(4093), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_RBRACE] = ACTIONS(2631), [anon_sym_LBRACK] = ACTIONS(2545), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [973] = { [sym__expression] = STATE(2766), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4755), [sym_initializer_pair] = STATE(4755), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_initializer_pair_repeat1] = STATE(4093), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_RBRACE] = ACTIONS(2633), [anon_sym_LBRACK] = ACTIONS(2545), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [974] = { [sym__expression] = STATE(2766), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4755), [sym_initializer_pair] = STATE(4755), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_initializer_pair_repeat1] = STATE(4093), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_RBRACE] = ACTIONS(2575), [anon_sym_LBRACK] = ACTIONS(2545), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [975] = { [sym__expression] = STATE(2766), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4755), [sym_initializer_pair] = STATE(4755), [sym_subscript_designator] = STATE(4093), [sym_field_designator] = STATE(4093), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [aux_sym_initializer_pair_repeat1] = STATE(4093), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(2545), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [anon_sym_DOT] = ACTIONS(189), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [976] = { [sym__expression] = STATE(2757), [sym_comma_expression] = STATE(5439), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(5439), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2635), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [977] = { [sym__expression] = STATE(2832), [sym_comma_expression] = STATE(5213), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(5213), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2637), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [978] = { [sym__expression] = STATE(2770), [sym_comma_expression] = STATE(5129), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(5129), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2639), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [979] = { [sym__expression] = STATE(2878), [sym_comma_expression] = STATE(5207), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(5207), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2641), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [980] = { [sym__expression] = STATE(2866), [sym_comma_expression] = STATE(5310), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(5310), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2643), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [981] = { [sym__expression] = STATE(2860), [sym_comma_expression] = STATE(5245), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(5245), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2645), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [982] = { [sym__expression] = STATE(3080), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(5074), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_default] = ACTIONS(2647), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2649), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [983] = { [sym__declaration_modifiers] = STATE(1629), [sym__declaration_specifiers] = STATE(2000), [sym_attribute_specifier] = STATE(1629), [sym_attribute_declaration] = STATE(1629), [sym_ms_declspec_modifier] = STATE(1629), [sym__abstract_declarator] = STATE(4341), [sym_abstract_parenthesized_declarator] = STATE(3890), [sym_abstract_pointer_declarator] = STATE(3890), [sym_abstract_function_declarator] = STATE(3890), [sym_abstract_array_declarator] = STATE(3890), [sym_storage_class_specifier] = STATE(1629), [sym_type_qualifier] = STATE(1629), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_parameter_list] = STATE(3264), [sym_parameter_declaration] = STATE(4522), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym_virtual_function_specifier] = STATE(1629), [sym_dependent_type] = STATE(2326), [sym_optional_parameter_declaration] = STATE(4522), [sym_variadic_parameter_declaration] = STATE(4522), [sym_abstract_reference_declarator] = STATE(3890), [sym_template_type] = STATE(2092), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(4015), [sym_qualified_type_identifier] = STATE(2306), [aux_sym__declaration_specifiers_repeat1] = STATE(1629), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [sym_identifier] = ACTIONS(2651), [anon_sym_DOT_DOT_DOT] = ACTIONS(2482), [anon_sym_RPAREN] = ACTIONS(2484), [anon_sym_LPAREN2] = ACTIONS(2653), [anon_sym_STAR] = ACTIONS(2655), [anon_sym_AMP_AMP] = ACTIONS(2657), [anon_sym_AMP] = ACTIONS(2659), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(2661), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym_LBRACK] = ACTIONS(2663), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(111), [anon_sym_enum] = ACTIONS(1353), [anon_sym_class] = ACTIONS(1355), [anon_sym_struct] = ACTIONS(1357), [anon_sym_union] = ACTIONS(1359), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(1361), [anon_sym_template] = ACTIONS(931), }, [984] = { [sym__expression] = STATE(2727), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_lambda_default_capture] = STATE(4745), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(2665), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2667), [anon_sym_EQ] = ACTIONS(2669), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [985] = { [sym__expression] = STATE(2707), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4584), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2671), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [986] = { [sym__expression] = STATE(2739), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4463), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2673), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [987] = { [sym__expression] = STATE(2727), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_lambda_default_capture] = STATE(4745), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(2665), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2675), [anon_sym_EQ] = ACTIONS(2669), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [988] = { [sym__expression] = STATE(2727), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_lambda_default_capture] = STATE(4745), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(2665), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2677), [anon_sym_EQ] = ACTIONS(2669), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [989] = { [sym__expression] = STATE(2727), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_lambda_default_capture] = STATE(4745), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(2665), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2679), [anon_sym_EQ] = ACTIONS(2669), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [990] = { [sym__expression] = STATE(2727), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_lambda_default_capture] = STATE(4745), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(2665), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2681), [anon_sym_EQ] = ACTIONS(2669), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [991] = { [sym__expression] = STATE(2735), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4582), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2683), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [992] = { [sym__expression] = STATE(3011), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(5373), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_default] = ACTIONS(2685), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2687), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [993] = { [sym__expression] = STATE(2717), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4509), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2689), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [994] = { [sym__expression] = STATE(2727), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_lambda_default_capture] = STATE(4745), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2691), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(2665), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2693), [anon_sym_EQ] = ACTIONS(2669), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [995] = { [sym__expression] = STATE(2727), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_lambda_default_capture] = STATE(4745), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(2665), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2695), [anon_sym_EQ] = ACTIONS(2669), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [996] = { [sym__expression] = STATE(2706), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_lambda_default_capture] = STATE(4745), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2691), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(2665), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2693), [anon_sym_EQ] = ACTIONS(2669), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [997] = { [sym__expression] = STATE(2716), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4442), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2697), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [998] = { [sym__expression] = STATE(2727), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_lambda_default_capture] = STATE(4745), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(2665), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2699), [anon_sym_EQ] = ACTIONS(2669), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [999] = { [sym__declaration_modifiers] = STATE(1629), [sym__declaration_specifiers] = STATE(2000), [sym_attribute_specifier] = STATE(1629), [sym_attribute_declaration] = STATE(1629), [sym_ms_declspec_modifier] = STATE(1629), [sym__abstract_declarator] = STATE(4228), [sym_abstract_parenthesized_declarator] = STATE(3890), [sym_abstract_pointer_declarator] = STATE(3890), [sym_abstract_function_declarator] = STATE(3890), [sym_abstract_array_declarator] = STATE(3890), [sym_storage_class_specifier] = STATE(1629), [sym_type_qualifier] = STATE(1629), [sym__type_specifier] = STATE(2147), [sym_sized_type_specifier] = STATE(2326), [sym_enum_specifier] = STATE(2326), [sym_struct_specifier] = STATE(2326), [sym_union_specifier] = STATE(2326), [sym_parameter_list] = STATE(3264), [sym_parameter_declaration] = STATE(4410), [sym_decltype] = STATE(2326), [sym_class_specifier] = STATE(2326), [sym_virtual_function_specifier] = STATE(1629), [sym_dependent_type] = STATE(2326), [sym_optional_parameter_declaration] = STATE(4410), [sym_variadic_parameter_declaration] = STATE(4410), [sym_abstract_reference_declarator] = STATE(3890), [sym_template_type] = STATE(2092), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(4015), [sym_qualified_type_identifier] = STATE(2306), [aux_sym__declaration_specifiers_repeat1] = STATE(1629), [aux_sym_sized_type_specifier_repeat1] = STATE(2210), [sym_identifier] = ACTIONS(2651), [anon_sym_DOT_DOT_DOT] = ACTIONS(1345), [anon_sym_RPAREN] = ACTIONS(2701), [anon_sym_LPAREN2] = ACTIONS(2653), [anon_sym_STAR] = ACTIONS(2655), [anon_sym_AMP_AMP] = ACTIONS(2657), [anon_sym_AMP] = ACTIONS(2659), [anon_sym_extern] = ACTIONS(55), [anon_sym___attribute__] = ACTIONS(39), [anon_sym_COLON_COLON] = ACTIONS(2661), [anon_sym_LBRACK_LBRACK] = ACTIONS(1349), [anon_sym___declspec] = ACTIONS(45), [anon_sym_LBRACK] = ACTIONS(2663), [anon_sym_static] = ACTIONS(55), [anon_sym_register] = ACTIONS(55), [anon_sym_inline] = ACTIONS(55), [anon_sym_thread_local] = ACTIONS(55), [anon_sym_const] = ACTIONS(57), [anon_sym_volatile] = ACTIONS(57), [anon_sym_restrict] = ACTIONS(57), [anon_sym__Atomic] = ACTIONS(57), [anon_sym_mutable] = ACTIONS(57), [anon_sym_constexpr] = ACTIONS(57), [anon_sym_signed] = ACTIONS(59), [anon_sym_unsigned] = ACTIONS(59), [anon_sym_long] = ACTIONS(59), [anon_sym_short] = ACTIONS(59), [sym_primitive_type] = ACTIONS(111), [anon_sym_enum] = ACTIONS(1353), [anon_sym_class] = ACTIONS(1355), [anon_sym_struct] = ACTIONS(1357), [anon_sym_union] = ACTIONS(1359), [sym_comment] = ACTIONS(3), [anon_sym_decltype] = ACTIONS(105), [anon_sym_virtual] = ACTIONS(107), [sym_auto] = ACTIONS(111), [anon_sym_typename] = ACTIONS(1361), [anon_sym_template] = ACTIONS(931), }, [1000] = { [sym__expression] = STATE(2727), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_lambda_default_capture] = STATE(4745), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(2665), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2703), [anon_sym_EQ] = ACTIONS(2669), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1001] = { [sym__expression] = STATE(2727), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_lambda_default_capture] = STATE(4745), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(2665), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2705), [anon_sym_EQ] = ACTIONS(2669), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1002] = { [sym__expression] = STATE(2727), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_lambda_default_capture] = STATE(4745), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(2665), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2707), [anon_sym_EQ] = ACTIONS(2669), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1003] = { [sym__expression] = STATE(2730), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4422), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2709), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1004] = { [sym__expression] = STATE(2995), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(5251), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_default] = ACTIONS(2711), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2713), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1005] = { [sym__expression] = STATE(2727), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_lambda_default_capture] = STATE(4745), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(2665), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2715), [anon_sym_EQ] = ACTIONS(2669), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1006] = { [sym__expression] = STATE(2727), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_lambda_default_capture] = STATE(4745), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(2665), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2693), [anon_sym_EQ] = ACTIONS(2669), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1007] = { [sym__expression] = STATE(2727), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_lambda_default_capture] = STATE(4745), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(2665), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2717), [anon_sym_EQ] = ACTIONS(2669), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1008] = { [sym__expression] = STATE(2727), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_lambda_default_capture] = STATE(4745), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(2665), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2719), [anon_sym_EQ] = ACTIONS(2669), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1009] = { [sym__expression] = STATE(2706), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_lambda_default_capture] = STATE(4745), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(2665), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2693), [anon_sym_EQ] = ACTIONS(2669), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1010] = { [sym__expression] = STATE(2727), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_lambda_default_capture] = STATE(4745), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(2665), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2721), [anon_sym_EQ] = ACTIONS(2669), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1011] = { [sym__expression] = STATE(2855), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_initializer_list] = STATE(3106), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACE] = ACTIONS(2456), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1012] = { [sym__expression] = STATE(1986), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_initializer_list] = STATE(2095), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_LPAREN2] = ACTIONS(2236), [anon_sym_BANG] = ACTIONS(2240), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACE] = ACTIONS(2246), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [1013] = { [sym__expression] = STATE(2918), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(5276), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1014] = { [sym__expression] = STATE(2843), [sym_comma_expression] = STATE(5277), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2723), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1015] = { [sym__expression] = STATE(2831), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2725), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(2725), [anon_sym_AMP_AMP] = ACTIONS(2725), [anon_sym_AMP] = ACTIONS(2727), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACE] = ACTIONS(2725), [anon_sym_LBRACK] = ACTIONS(2725), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1016] = { [sym__expression] = STATE(3007), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(5125), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1017] = { [sym__expression] = STATE(2872), [sym_comma_expression] = STATE(5120), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2729), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1018] = { [sym__expression] = STATE(2880), [sym_comma_expression] = STATE(5275), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2731), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1019] = { [sym__expression] = STATE(2761), [sym_comma_expression] = STATE(5062), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2733), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1020] = { [sym__expression] = STATE(2830), [sym_comma_expression] = STATE(5226), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2735), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1021] = { [sym__expression] = STATE(2664), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(2725), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(2725), [anon_sym_AMP_AMP] = ACTIONS(2725), [anon_sym_AMP] = ACTIONS(2727), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(2725), [anon_sym_LBRACK] = ACTIONS(2725), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1022] = { [sym__expression] = STATE(2826), [sym_comma_expression] = STATE(5279), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2737), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1023] = { [sym__expression] = STATE(2785), [sym_comma_expression] = STATE(5126), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2739), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1024] = { [sym__expression] = STATE(2806), [sym_comma_expression] = STATE(5115), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2741), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1025] = { [sym__expression] = STATE(2798), [sym_comma_expression] = STATE(5427), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2743), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1026] = { [sym__expression] = STATE(3119), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2725), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2725), [anon_sym_AMP_AMP] = ACTIONS(2725), [anon_sym_AMP] = ACTIONS(2727), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACE] = ACTIONS(2725), [anon_sym_LBRACK] = ACTIONS(2725), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1027] = { [sym__expression] = STATE(2660), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_initializer_list] = STATE(2657), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1028] = { [sym__expression] = STATE(1866), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2725), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(2725), [anon_sym_AMP_AMP] = ACTIONS(2725), [anon_sym_AMP] = ACTIONS(2727), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACE] = ACTIONS(2725), [anon_sym_LBRACK] = ACTIONS(2725), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1029] = { [sym__expression] = STATE(2759), [sym_comma_expression] = STATE(5085), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2745), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1030] = { [sym__expression] = STATE(2765), [sym_comma_expression] = STATE(5412), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2747), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1031] = { [sym__expression] = STATE(2794), [sym_comma_expression] = STATE(5266), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2749), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1032] = { [sym__expression] = STATE(2844), [sym_comma_expression] = STATE(5106), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2751), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1033] = { [sym__expression] = STATE(2875), [sym_comma_expression] = STATE(5104), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2753), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1034] = { [sym__expression] = STATE(2898), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(5312), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1035] = { [sym__expression] = STATE(2801), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2725), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(2725), [anon_sym_AMP_AMP] = ACTIONS(2725), [anon_sym_AMP] = ACTIONS(2727), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACE] = ACTIONS(2725), [anon_sym_LBRACK] = ACTIONS(2725), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1036] = { [sym__expression] = STATE(1874), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_COMMA] = ACTIONS(2755), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2755), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1037] = { [sym__expression] = STATE(2816), [sym_comma_expression] = STATE(5298), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2757), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1038] = { [sym__expression] = STATE(1983), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_LPAREN2] = ACTIONS(2725), [anon_sym_BANG] = ACTIONS(2240), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2725), [anon_sym_AMP_AMP] = ACTIONS(2725), [anon_sym_AMP] = ACTIONS(2727), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACE] = ACTIONS(2725), [anon_sym_LBRACK] = ACTIONS(2725), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [1039] = { [sym__expression] = STATE(2783), [sym_comma_expression] = STATE(5301), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2759), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1040] = { [sym__expression] = STATE(2792), [sym_comma_expression] = STATE(5096), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2761), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1041] = { [sym__expression] = STATE(2890), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(5382), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1042] = { [sym__expression] = STATE(2787), [sym_comma_expression] = STATE(5093), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2763), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1043] = { [sym__expression] = STATE(2883), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(5153), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1044] = { [sym__expression] = STATE(2784), [sym_comma_expression] = STATE(5135), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2765), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1045] = { [sym__expression] = STATE(2764), [sym_comma_expression] = STATE(5069), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2767), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1046] = { [sym__expression] = STATE(1985), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_LPAREN2] = ACTIONS(2725), [anon_sym_BANG] = ACTIONS(2240), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2725), [anon_sym_AMP_AMP] = ACTIONS(2725), [anon_sym_AMP] = ACTIONS(2727), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACE] = ACTIONS(2725), [anon_sym_LBRACK] = ACTIONS(2725), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [1047] = { [sym__expression] = STATE(2827), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4882), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1048] = { [sym__expression] = STATE(3102), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_initializer_list] = STATE(2657), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1049] = { [sym__expression] = STATE(2762), [sym_comma_expression] = STATE(5066), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2769), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1050] = { [sym__expression] = STATE(2850), [sym_comma_expression] = STATE(5406), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2771), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1051] = { [sym__expression] = STATE(1880), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2725), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(2725), [anon_sym_AMP_AMP] = ACTIONS(2725), [anon_sym_AMP] = ACTIONS(2727), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACE] = ACTIONS(2725), [anon_sym_LBRACK] = ACTIONS(2725), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1052] = { [sym__expression] = STATE(2820), [sym_comma_expression] = STATE(5185), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2773), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1053] = { [sym__expression] = STATE(3122), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(5186), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1054] = { [sym__expression] = STATE(2852), [sym_comma_expression] = STATE(5189), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2775), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1055] = { [sym__expression] = STATE(2853), [sym_comma_expression] = STATE(5105), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2777), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1056] = { [sym__expression] = STATE(2660), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(2657), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1057] = { [sym__expression] = STATE(2809), [sym_comma_expression] = STATE(5387), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2779), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1058] = { [sym__expression] = STATE(2986), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2725), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2725), [anon_sym_AMP_AMP] = ACTIONS(2725), [anon_sym_AMP] = ACTIONS(2727), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACE] = ACTIONS(2725), [anon_sym_LBRACK] = ACTIONS(2725), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1059] = { [sym__expression] = STATE(2861), [sym_comma_expression] = STATE(5376), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2781), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1060] = { [sym__expression] = STATE(2854), [sym_comma_expression] = STATE(5194), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2783), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1061] = { [sym__expression] = STATE(2791), [sym_comma_expression] = STATE(5282), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2785), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1062] = { [sym__expression] = STATE(2993), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(5440), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1063] = { [sym__expression] = STATE(2823), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4825), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1064] = { [sym__expression] = STATE(1833), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_initializer_list] = STATE(1834), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACE] = ACTIONS(1960), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1065] = { [sym__expression] = STATE(2786), [sym_comma_expression] = STATE(5375), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2787), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1066] = { [sym__expression] = STATE(2683), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(2725), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(2725), [anon_sym_AMP_AMP] = ACTIONS(2725), [anon_sym_AMP] = ACTIONS(2727), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(2725), [anon_sym_LBRACK] = ACTIONS(2725), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1067] = { [sym__expression] = STATE(2756), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4750), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1068] = { [sym__expression] = STATE(3005), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(5234), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1069] = { [sym__expression] = STATE(3077), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(5064), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1070] = { [sym__expression] = STATE(2155), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2725), [anon_sym_BANG] = ACTIONS(2274), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2725), [anon_sym_AMP_AMP] = ACTIONS(2725), [anon_sym_AMP] = ACTIONS(2727), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACE] = ACTIONS(2725), [anon_sym_LBRACK] = ACTIONS(2725), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1071] = { [sym__expression] = STATE(2709), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(4882), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1072] = { [sym__expression] = STATE(2943), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(5163), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1073] = { [sym__expression] = STATE(2795), [sym_comma_expression] = STATE(5366), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2789), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1074] = { [sym__expression] = STATE(3012), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_initializer_list] = STATE(5255), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1075] = { [sym__expression] = STATE(2864), [sym_comma_expression] = STATE(5354), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2791), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1076] = { [sym__expression] = STATE(2881), [sym_comma_expression] = STATE(5273), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2793), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1077] = { [sym__expression] = STATE(2156), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2725), [anon_sym_BANG] = ACTIONS(2274), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2725), [anon_sym_AMP_AMP] = ACTIONS(2725), [anon_sym_AMP] = ACTIONS(2727), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACE] = ACTIONS(2725), [anon_sym_LBRACK] = ACTIONS(2725), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1078] = { [sym__expression] = STATE(2954), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(5170), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1079] = { [sym__expression] = STATE(3073), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_initializer_list] = STATE(5081), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1080] = { [sym__expression] = STATE(2874), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2725), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2725), [anon_sym_AMP_AMP] = ACTIONS(2725), [anon_sym_AMP] = ACTIONS(2727), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACE] = ACTIONS(2725), [anon_sym_LBRACK] = ACTIONS(2725), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1081] = { [sym__expression] = STATE(2846), [sym_comma_expression] = STATE(5336), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2795), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1082] = { [sym__expression] = STATE(2847), [sym_comma_expression] = STATE(5161), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2797), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1083] = { [sym__expression] = STATE(2842), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2725), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2725), [anon_sym_AMP_AMP] = ACTIONS(2725), [anon_sym_AMP] = ACTIONS(2727), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACE] = ACTIONS(2725), [anon_sym_LBRACK] = ACTIONS(2725), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1084] = { [sym__expression] = STATE(2157), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_initializer_list] = STATE(1834), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2270), [anon_sym_BANG] = ACTIONS(2274), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACE] = ACTIONS(1960), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1085] = { [sym__expression] = STATE(3074), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_initializer_list] = STATE(5080), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACE] = ACTIONS(1351), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1086] = { [sym__expression] = STATE(2868), [sym_comma_expression] = STATE(5332), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2799), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1087] = { [sym__expression] = STATE(2960), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2801), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1088] = { [sym__expression] = STATE(2679), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_DOT_DOT_DOT] = ACTIONS(2803), [anon_sym_LPAREN2] = ACTIONS(2805), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1089] = { [sym__expression] = STATE(2701), [sym_comma_expression] = STATE(5046), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1090] = { [sym__expression] = STATE(2839), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_DOT_DOT_DOT] = ACTIONS(2803), [anon_sym_LPAREN2] = ACTIONS(2807), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1091] = { [sym__expression] = STATE(2994), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2809), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1092] = { [sym__expression] = STATE(3105), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2811), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1093] = { [sym__expression] = STATE(2989), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2813), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1094] = { [sym__expression] = STATE(3103), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2815), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1095] = { [sym__expression] = STATE(2900), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2817), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1096] = { [sym__expression] = STATE(1874), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2819), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1097] = { [sym__expression] = STATE(1874), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2821), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1098] = { [sym__expression] = STATE(2681), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2823), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(2825), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1099] = { [sym__expression] = STATE(2972), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2827), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1100] = { [sym__expression] = STATE(1874), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2829), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1101] = { [sym__expression] = STATE(2818), [sym_comma_expression] = STATE(5172), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1102] = { [sym__expression] = STATE(3041), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2831), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1103] = { [sym__expression] = STATE(2681), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2833), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(2825), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1104] = { [sym__expression] = STATE(3094), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2835), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1105] = { [sym__expression] = STATE(3097), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2837), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1106] = { [sym__expression] = STATE(1874), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2839), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1107] = { [sym__expression] = STATE(3035), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2841), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1108] = { [sym__expression] = STATE(3029), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2843), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1109] = { [sym__expression] = STATE(3055), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2845), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1110] = { [sym__expression] = STATE(2964), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2847), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1111] = { [sym__expression] = STATE(3089), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2849), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1112] = { [sym__expression] = STATE(3060), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2851), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1113] = { [sym__expression] = STATE(2835), [sym_comma_expression] = STATE(5200), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1114] = { [sym__expression] = STATE(2963), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2853), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1115] = { [sym__expression] = STATE(2941), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2855), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1116] = { [sym__expression] = STATE(2774), [sym_comma_expression] = STATE(5365), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1117] = { [sym__expression] = STATE(1874), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2857), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1118] = { [sym__expression] = STATE(3032), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2859), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1119] = { [sym__expression] = STATE(1874), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2861), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1120] = { [sym__expression] = STATE(1874), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2863), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1121] = { [sym__expression] = STATE(2961), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2865), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1122] = { [sym__expression] = STATE(1874), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2867), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1123] = { [sym__expression] = STATE(2185), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_DOT_DOT_DOT] = ACTIONS(2869), [anon_sym_LPAREN2] = ACTIONS(2871), [anon_sym_BANG] = ACTIONS(2274), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1124] = { [sym__expression] = STATE(1874), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2873), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1125] = { [sym__expression] = STATE(3108), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2875), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1126] = { [sym__expression] = STATE(1874), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2877), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1127] = { [sym__expression] = STATE(2681), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2879), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(2825), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1128] = { [sym__expression] = STATE(1837), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_DOT_DOT_DOT] = ACTIONS(2869), [anon_sym_LPAREN2] = ACTIONS(2881), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1129] = { [sym__expression] = STATE(3043), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2883), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1130] = { [sym__expression] = STATE(2047), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_DOT_DOT_DOT] = ACTIONS(2885), [anon_sym_LPAREN2] = ACTIONS(2887), [anon_sym_BANG] = ACTIONS(2240), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [1131] = { [sym__expression] = STATE(2897), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2889), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1132] = { [sym__expression] = STATE(2822), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_DOT_DOT_DOT] = ACTIONS(2891), [anon_sym_LPAREN2] = ACTIONS(2893), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1133] = { [sym__expression] = STATE(3022), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2895), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1134] = { [sym__expression] = STATE(3023), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2897), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1135] = { [sym__expression] = STATE(3124), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2899), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1136] = { [sym__expression] = STATE(3031), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2901), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1137] = { [sym__expression] = STATE(2934), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_DOT_DOT_DOT] = ACTIONS(2803), [anon_sym_LPAREN2] = ACTIONS(2903), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1138] = { [sym__expression] = STATE(1874), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2905), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1139] = { [sym__expression] = STATE(3101), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2907), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1140] = { [sym__expression] = STATE(3116), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2909), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1141] = { [sym__expression] = STATE(1874), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2911), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1142] = { [sym__expression] = STATE(3020), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2913), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1143] = { [sym__expression] = STATE(3006), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_RPAREN] = ACTIONS(2915), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1144] = { [sym__expression] = STATE(1874), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2917), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1145] = { [sym__expression] = STATE(2948), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_SEMI] = ACTIONS(2919), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1146] = { [sym__expression] = STATE(1874), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [anon_sym_RBRACK] = ACTIONS(2921), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1147] = { [sym__expression] = STATE(1873), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1148] = { [sym__expression] = STATE(2998), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1149] = { [sym__expression] = STATE(2067), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_LPAREN2] = ACTIONS(2236), [anon_sym_BANG] = ACTIONS(2240), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [1150] = { [sym__expression] = STATE(2921), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1151] = { [sym__expression] = STATE(2676), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1152] = { [sym__expression] = STATE(2145), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2270), [anon_sym_BANG] = ACTIONS(2274), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1153] = { [sym__expression] = STATE(2065), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_LPAREN2] = ACTIONS(2236), [anon_sym_BANG] = ACTIONS(2240), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [1154] = { [sym__expression] = STATE(2971), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1155] = { [sym__expression] = STATE(2901), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1156] = { [sym__expression] = STATE(2915), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1157] = { [sym__expression] = STATE(2836), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1158] = { [sym__expression] = STATE(2796), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1159] = { [sym__expression] = STATE(2919), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1160] = { [sym__expression] = STATE(2655), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1161] = { [sym__expression] = STATE(2665), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1162] = { [sym__expression] = STATE(2862), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1163] = { [sym__expression] = STATE(2920), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1164] = { [sym__expression] = STATE(2793), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1165] = { [sym__expression] = STATE(2776), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1166] = { [sym__expression] = STATE(2938), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1167] = { [sym__expression] = STATE(2778), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1168] = { [sym__expression] = STATE(2668), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1169] = { [sym__expression] = STATE(2781), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1170] = { [sym__expression] = STATE(2782), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1171] = { [sym__expression] = STATE(2614), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1172] = { [sym__expression] = STATE(2834), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(2923), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1173] = { [sym__expression] = STATE(3113), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1174] = { [sym__expression] = STATE(2803), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1175] = { [sym__expression] = STATE(2983), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1176] = { [sym__expression] = STATE(2824), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1177] = { [sym__expression] = STATE(2945), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1178] = { [sym__expression] = STATE(2940), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1179] = { [sym__expression] = STATE(2671), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(2925), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1180] = { [sym__expression] = STATE(2811), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1181] = { [sym__expression] = STATE(3058), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1182] = { [sym__expression] = STATE(2788), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1183] = { [sym__expression] = STATE(3120), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1184] = { [sym__expression] = STATE(2797), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1185] = { [sym__expression] = STATE(2639), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1186] = { [sym__expression] = STATE(2780), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1187] = { [sym__expression] = STATE(2815), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1188] = { [sym__expression] = STATE(2639), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1189] = { [sym__expression] = STATE(2810), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1190] = { [sym__expression] = STATE(2758), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1191] = { [sym__expression] = STATE(2819), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1192] = { [sym__expression] = STATE(2828), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1193] = { [sym__expression] = STATE(3095), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1194] = { [sym__expression] = STATE(3025), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1195] = { [sym__expression] = STATE(2649), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1196] = { [sym__expression] = STATE(2970), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1197] = { [sym__expression] = STATE(2175), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2270), [anon_sym_BANG] = ACTIONS(2274), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1198] = { [sym__expression] = STATE(2978), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1199] = { [sym__expression] = STATE(2932), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1200] = { [sym__expression] = STATE(2927), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1201] = { [sym__expression] = STATE(3114), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1202] = { [sym__expression] = STATE(2674), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1203] = { [sym__expression] = STATE(2153), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2270), [anon_sym_BANG] = ACTIONS(2274), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1204] = { [sym__expression] = STATE(2962), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1205] = { [sym__expression] = STATE(2889), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1206] = { [sym__expression] = STATE(2974), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1207] = { [sym__expression] = STATE(2912), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1208] = { [sym__expression] = STATE(2838), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1209] = { [sym__expression] = STATE(2902), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1210] = { [sym__expression] = STATE(2949), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(2927), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1211] = { [sym__expression] = STATE(1987), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_LPAREN2] = ACTIONS(2236), [anon_sym_BANG] = ACTIONS(2240), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [1212] = { [sym__expression] = STATE(2947), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1213] = { [sym__expression] = STATE(2649), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1214] = { [sym__expression] = STATE(2663), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1215] = { [sym__expression] = STATE(2682), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1216] = { [sym__expression] = STATE(3096), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1217] = { [sym__expression] = STATE(1998), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_LPAREN2] = ACTIONS(2236), [anon_sym_BANG] = ACTIONS(2240), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [1218] = { [sym__expression] = STATE(2158), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2270), [anon_sym_BANG] = ACTIONS(2274), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1219] = { [sym__expression] = STATE(1989), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_LPAREN2] = ACTIONS(2236), [anon_sym_BANG] = ACTIONS(2240), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [1220] = { [sym__expression] = STATE(2908), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1221] = { [sym__expression] = STATE(3092), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1222] = { [sym__expression] = STATE(2955), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1223] = { [sym__expression] = STATE(2967), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1224] = { [sym__expression] = STATE(3110), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1225] = { [sym__expression] = STATE(1997), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_LPAREN2] = ACTIONS(2236), [anon_sym_BANG] = ACTIONS(2240), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [1226] = { [sym__expression] = STATE(2159), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2270), [anon_sym_BANG] = ACTIONS(2274), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1227] = { [sym__expression] = STATE(3099), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1228] = { [sym__expression] = STATE(2160), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2270), [anon_sym_BANG] = ACTIONS(2274), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1229] = { [sym__expression] = STATE(2161), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2270), [anon_sym_BANG] = ACTIONS(2274), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1230] = { [sym__expression] = STATE(2162), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2270), [anon_sym_BANG] = ACTIONS(2274), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1231] = { [sym__expression] = STATE(3071), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1232] = { [sym__expression] = STATE(3069), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1233] = { [sym__expression] = STATE(2669), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1234] = { [sym__expression] = STATE(3018), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(2929), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1235] = { [sym__expression] = STATE(2767), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1236] = { [sym__expression] = STATE(2048), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_LPAREN2] = ACTIONS(2236), [anon_sym_BANG] = ACTIONS(2240), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [1237] = { [sym__expression] = STATE(3123), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1238] = { [sym__expression] = STATE(1873), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(2931), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1239] = { [sym__expression] = STATE(2991), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1240] = { [sym__expression] = STATE(2167), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2270), [anon_sym_BANG] = ACTIONS(2274), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1241] = { [sym__expression] = STATE(2173), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2270), [anon_sym_BANG] = ACTIONS(2274), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1242] = { [sym__expression] = STATE(2174), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2270), [anon_sym_BANG] = ACTIONS(2274), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1243] = { [sym__expression] = STATE(1854), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1244] = { [sym__expression] = STATE(2685), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1245] = { [sym__expression] = STATE(2841), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1246] = { [sym__expression] = STATE(2614), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1247] = { [sym__expression] = STATE(2845), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(2933), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1248] = { [sym__expression] = STATE(3087), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1249] = { [sym__expression] = STATE(3067), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1250] = { [sym__expression] = STATE(1827), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(2935), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1251] = { [sym__expression] = STATE(1826), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1252] = { [sym__expression] = STATE(2965), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1253] = { [sym__expression] = STATE(2772), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1254] = { [sym__expression] = STATE(2021), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_LPAREN2] = ACTIONS(2236), [anon_sym_BANG] = ACTIONS(2240), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACK] = ACTIONS(2937), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [1255] = { [sym__expression] = STATE(2177), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2270), [anon_sym_BANG] = ACTIONS(2274), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1256] = { [sym__expression] = STATE(3059), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1257] = { [sym__expression] = STATE(2694), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1258] = { [sym__expression] = STATE(1990), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_LPAREN2] = ACTIONS(2236), [anon_sym_BANG] = ACTIONS(2240), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [1259] = { [sym__expression] = STATE(1874), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1260] = { [sym__expression] = STATE(2680), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1261] = { [sym__expression] = STATE(2802), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1262] = { [sym__expression] = STATE(2681), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(2825), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1263] = { [sym__expression] = STATE(2982), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1264] = { [sym__expression] = STATE(2821), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(2939), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1265] = { [sym__expression] = STATE(2179), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2270), [anon_sym_BANG] = ACTIONS(2274), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACK] = ACTIONS(2941), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1266] = { [sym__expression] = STATE(2926), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1267] = { [sym__expression] = STATE(1813), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1268] = { [sym__expression] = STATE(2181), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2270), [anon_sym_BANG] = ACTIONS(2274), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1269] = { [sym__expression] = STATE(2182), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2270), [anon_sym_BANG] = ACTIONS(2274), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACK] = ACTIONS(2943), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1270] = { [sym__expression] = STATE(1991), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_LPAREN2] = ACTIONS(2236), [anon_sym_BANG] = ACTIONS(2240), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [1271] = { [sym__expression] = STATE(2187), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2270), [anon_sym_BANG] = ACTIONS(2274), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1272] = { [sym__expression] = STATE(2197), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(2270), [anon_sym_BANG] = ACTIONS(2274), [anon_sym_TILDE] = ACTIONS(2274), [anon_sym_DASH] = ACTIONS(2272), [anon_sym_PLUS] = ACTIONS(2272), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2278), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2280), [anon_sym_PLUS_PLUS] = ACTIONS(2280), [anon_sym_sizeof] = ACTIONS(2282), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2284), [anon_sym_co_await] = ACTIONS(2286), [anon_sym_new] = ACTIONS(2288), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1273] = { [sym__expression] = STATE(1844), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(2945), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1274] = { [sym__expression] = STATE(2957), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1275] = { [sym__expression] = STATE(2763), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1276] = { [sym__expression] = STATE(2655), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1277] = { [sym__expression] = STATE(1996), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_LPAREN2] = ACTIONS(2236), [anon_sym_BANG] = ACTIONS(2240), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [1278] = { [sym__expression] = STATE(2678), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1279] = { [sym__expression] = STATE(2799), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1280] = { [sym__expression] = STATE(2856), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1281] = { [sym__expression] = STATE(2985), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1282] = { [sym__expression] = STATE(2779), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1283] = { [sym__expression] = STATE(2777), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1284] = { [sym__expression] = STATE(3001), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1285] = { [sym__expression] = STATE(2977), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1286] = { [sym__expression] = STATE(2916), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1287] = { [sym__expression] = STATE(2775), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1288] = { [sym__expression] = STATE(2760), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1289] = { [sym__expression] = STATE(2851), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1290] = { [sym__expression] = STATE(2753), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1291] = { [sym__expression] = STATE(3098), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1292] = { [sym__expression] = STATE(2882), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1293] = { [sym__expression] = STATE(2038), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_LPAREN2] = ACTIONS(2236), [anon_sym_BANG] = ACTIONS(2240), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [1294] = { [sym__expression] = STATE(2848), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1295] = { [sym__expression] = STATE(2936), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1296] = { [sym__expression] = STATE(2769), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1297] = { [sym__expression] = STATE(2911), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1298] = { [sym__expression] = STATE(2768), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1299] = { [sym__expression] = STATE(2869), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1300] = { [sym__expression] = STATE(2899), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1301] = { [sym__expression] = STATE(3014), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1302] = { [sym__expression] = STATE(2837), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1303] = { [sym__expression] = STATE(2969), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1304] = { [sym__expression] = STATE(2649), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2947), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1305] = { [sym__expression] = STATE(3015), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1306] = { [sym__expression] = STATE(2870), [sym_conditional_expression] = STATE(3016), [sym_assignment_expression] = STATE(3016), [sym_pointer_expression] = STATE(2098), [sym_unary_expression] = STATE(3016), [sym_binary_expression] = STATE(3016), [sym_update_expression] = STATE(3016), [sym_cast_expression] = STATE(3016), [sym_sizeof_expression] = STATE(3016), [sym_subscript_expression] = STATE(2098), [sym_call_expression] = STATE(2098), [sym_field_expression] = STATE(2098), [sym_compound_literal_expression] = STATE(3016), [sym_parenthesized_expression] = STATE(2098), [sym_char_literal] = STATE(2817), [sym_concatenated_string] = STATE(2817), [sym_string_literal] = STATE(2336), [sym__class_name] = STATE(5019), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(3016), [sym_co_await_expression] = STATE(3016), [sym_new_expression] = STATE(3016), [sym_delete_expression] = STATE(3016), [sym_lambda_expression] = STATE(3016), [sym_lambda_capture_specifier] = STATE(3625), [sym_parameter_pack_expansion] = STATE(3016), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2098), [sym_qualified_type_identifier] = STATE(5019), [sym_user_defined_literal] = STATE(3016), [sym_identifier] = ACTIONS(2454), [anon_sym_LPAREN2] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2294), [anon_sym_TILDE] = ACTIONS(2294), [anon_sym_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2300), [anon_sym_LBRACK] = ACTIONS(2949), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2314), [anon_sym_PLUS_PLUS] = ACTIONS(2314), [anon_sym_sizeof] = ACTIONS(2316), [sym_number_literal] = ACTIONS(2318), [anon_sym_L_SQUOTE] = ACTIONS(2320), [anon_sym_u_SQUOTE] = ACTIONS(2320), [anon_sym_U_SQUOTE] = ACTIONS(2320), [anon_sym_u8_SQUOTE] = ACTIONS(2320), [anon_sym_SQUOTE] = ACTIONS(2320), [anon_sym_L_DQUOTE] = ACTIONS(2322), [anon_sym_u_DQUOTE] = ACTIONS(2322), [anon_sym_U_DQUOTE] = ACTIONS(2322), [anon_sym_u8_DQUOTE] = ACTIONS(2322), [anon_sym_DQUOTE] = ACTIONS(2322), [sym_true] = ACTIONS(2324), [sym_false] = ACTIONS(2324), [sym_null] = ACTIONS(2324), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2334), [anon_sym_co_await] = ACTIONS(2336), [anon_sym_new] = ACTIONS(2338), [sym_this] = ACTIONS(2324), [sym_nullptr] = ACTIONS(2324), [sym_raw_string_literal] = ACTIONS(2340), }, [1307] = { [sym__expression] = STATE(3019), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1308] = { [sym__expression] = STATE(1995), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_LPAREN2] = ACTIONS(2236), [anon_sym_BANG] = ACTIONS(2240), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [1309] = { [sym__expression] = STATE(2973), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1310] = { [sym__expression] = STATE(3036), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2236), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2236), [sym_call_expression] = STATE(2236), [sym_field_expression] = STATE(2236), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2236), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2236), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2434), [anon_sym_LPAREN2] = ACTIONS(2436), [anon_sym_BANG] = ACTIONS(2440), [anon_sym_TILDE] = ACTIONS(2440), [anon_sym_DASH] = ACTIONS(2438), [anon_sym_PLUS] = ACTIONS(2438), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2444), [anon_sym_PLUS_PLUS] = ACTIONS(2444), [anon_sym_sizeof] = ACTIONS(2446), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2448), [anon_sym_co_await] = ACTIONS(2450), [anon_sym_new] = ACTIONS(2452), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1311] = { [sym__expression] = STATE(1994), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_LPAREN2] = ACTIONS(2236), [anon_sym_BANG] = ACTIONS(2240), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [1312] = { [sym__expression] = STATE(2041), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_LPAREN2] = ACTIONS(2236), [anon_sym_BANG] = ACTIONS(2240), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACK] = ACTIONS(2951), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [1313] = { [sym__expression] = STATE(1993), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_LPAREN2] = ACTIONS(2236), [anon_sym_BANG] = ACTIONS(2240), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [1314] = { [sym__expression] = STATE(1981), [sym_conditional_expression] = STATE(2184), [sym_assignment_expression] = STATE(2184), [sym_pointer_expression] = STATE(2189), [sym_unary_expression] = STATE(2184), [sym_binary_expression] = STATE(2184), [sym_update_expression] = STATE(2184), [sym_cast_expression] = STATE(2184), [sym_sizeof_expression] = STATE(2184), [sym_subscript_expression] = STATE(2189), [sym_call_expression] = STATE(2189), [sym_field_expression] = STATE(2189), [sym_compound_literal_expression] = STATE(2184), [sym_parenthesized_expression] = STATE(2189), [sym_char_literal] = STATE(2071), [sym_concatenated_string] = STATE(2071), [sym_string_literal] = STATE(1667), [sym__class_name] = STATE(4802), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2184), [sym_co_await_expression] = STATE(2184), [sym_new_expression] = STATE(2184), [sym_delete_expression] = STATE(2184), [sym_lambda_expression] = STATE(2184), [sym_lambda_capture_specifier] = STATE(3638), [sym_parameter_pack_expansion] = STATE(2184), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3659), [sym_qualified_identifier] = STATE(2189), [sym_qualified_type_identifier] = STATE(4802), [sym_user_defined_literal] = STATE(2184), [sym_identifier] = ACTIONS(2234), [anon_sym_LPAREN2] = ACTIONS(2236), [anon_sym_BANG] = ACTIONS(2240), [anon_sym_TILDE] = ACTIONS(2240), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_COLON_COLON] = ACTIONS(2244), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(2248), [anon_sym_DASH_DASH] = ACTIONS(2250), [anon_sym_PLUS_PLUS] = ACTIONS(2250), [anon_sym_sizeof] = ACTIONS(2252), [sym_number_literal] = ACTIONS(2254), [anon_sym_L_SQUOTE] = ACTIONS(2256), [anon_sym_u_SQUOTE] = ACTIONS(2256), [anon_sym_U_SQUOTE] = ACTIONS(2256), [anon_sym_u8_SQUOTE] = ACTIONS(2256), [anon_sym_SQUOTE] = ACTIONS(2256), [anon_sym_L_DQUOTE] = ACTIONS(2258), [anon_sym_u_DQUOTE] = ACTIONS(2258), [anon_sym_U_DQUOTE] = ACTIONS(2258), [anon_sym_u8_DQUOTE] = ACTIONS(2258), [anon_sym_DQUOTE] = ACTIONS(2258), [sym_true] = ACTIONS(2260), [sym_false] = ACTIONS(2260), [sym_null] = ACTIONS(2260), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2262), [anon_sym_co_await] = ACTIONS(2264), [anon_sym_new] = ACTIONS(2266), [sym_this] = ACTIONS(2260), [sym_nullptr] = ACTIONS(2260), [sym_raw_string_literal] = ACTIONS(2268), }, [1315] = { [sym__expression] = STATE(2999), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(2318), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(2318), [sym_call_expression] = STATE(2318), [sym_field_expression] = STATE(2318), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(2318), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(2318), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2458), [anon_sym_LPAREN2] = ACTIONS(2460), [anon_sym_BANG] = ACTIONS(2464), [anon_sym_TILDE] = ACTIONS(2464), [anon_sym_DASH] = ACTIONS(2462), [anon_sym_PLUS] = ACTIONS(2462), [anon_sym_STAR] = ACTIONS(2466), [anon_sym_AMP] = ACTIONS(2466), [anon_sym_COLON_COLON] = ACTIONS(2468), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(2470), [anon_sym_PLUS_PLUS] = ACTIONS(2470), [anon_sym_sizeof] = ACTIONS(2472), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(2474), [anon_sym_co_await] = ACTIONS(2476), [anon_sym_new] = ACTIONS(2478), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1316] = { [sym__expression] = STATE(1816), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1317] = { [sym__expression] = STATE(1815), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1318] = { [sym__expression] = STATE(2906), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1319] = { [sym__expression] = STATE(2859), [sym_conditional_expression] = STATE(2661), [sym_assignment_expression] = STATE(2661), [sym_pointer_expression] = STATE(1962), [sym_unary_expression] = STATE(2661), [sym_binary_expression] = STATE(2661), [sym_update_expression] = STATE(2661), [sym_cast_expression] = STATE(2661), [sym_sizeof_expression] = STATE(2661), [sym_subscript_expression] = STATE(1962), [sym_call_expression] = STATE(1962), [sym_field_expression] = STATE(1962), [sym_compound_literal_expression] = STATE(2661), [sym_parenthesized_expression] = STATE(1962), [sym_char_literal] = STATE(2575), [sym_concatenated_string] = STATE(2575), [sym_string_literal] = STATE(1975), [sym__class_name] = STATE(4703), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(2661), [sym_co_await_expression] = STATE(2661), [sym_new_expression] = STATE(2661), [sym_delete_expression] = STATE(2661), [sym_lambda_expression] = STATE(2661), [sym_lambda_capture_specifier] = STATE(3635), [sym_parameter_pack_expansion] = STATE(2661), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1962), [sym_qualified_type_identifier] = STATE(4703), [sym_user_defined_literal] = STATE(2661), [sym_identifier] = ACTIONS(2432), [anon_sym_LPAREN2] = ACTIONS(919), [anon_sym_BANG] = ACTIONS(21), [anon_sym_TILDE] = ACTIONS(21), [anon_sym_DASH] = ACTIONS(25), [anon_sym_PLUS] = ACTIONS(25), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(41), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(93), [anon_sym_PLUS_PLUS] = ACTIONS(93), [anon_sym_sizeof] = ACTIONS(95), [sym_number_literal] = ACTIONS(97), [anon_sym_L_SQUOTE] = ACTIONS(99), [anon_sym_u_SQUOTE] = ACTIONS(99), [anon_sym_U_SQUOTE] = ACTIONS(99), [anon_sym_u8_SQUOTE] = ACTIONS(99), [anon_sym_SQUOTE] = ACTIONS(99), [anon_sym_L_DQUOTE] = ACTIONS(101), [anon_sym_u_DQUOTE] = ACTIONS(101), [anon_sym_U_DQUOTE] = ACTIONS(101), [anon_sym_u8_DQUOTE] = ACTIONS(101), [anon_sym_DQUOTE] = ACTIONS(101), [sym_true] = ACTIONS(103), [sym_false] = ACTIONS(103), [sym_null] = ACTIONS(103), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(119), [anon_sym_co_await] = ACTIONS(135), [anon_sym_new] = ACTIONS(137), [sym_this] = ACTIONS(103), [sym_nullptr] = ACTIONS(103), [sym_raw_string_literal] = ACTIONS(139), }, [1320] = { [sym__expression] = STATE(1915), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1321] = { [sym__expression] = STATE(1913), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1322] = { [sym__expression] = STATE(1812), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1323] = { [sym__expression] = STATE(1906), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1324] = { [sym__expression] = STATE(1898), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1325] = { [sym__expression] = STATE(1897), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1326] = { [sym__expression] = STATE(1908), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1327] = { [sym__expression] = STATE(1911), [sym_conditional_expression] = STATE(1907), [sym_assignment_expression] = STATE(1907), [sym_pointer_expression] = STATE(1918), [sym_unary_expression] = STATE(1907), [sym_binary_expression] = STATE(1907), [sym_update_expression] = STATE(1907), [sym_cast_expression] = STATE(1907), [sym_sizeof_expression] = STATE(1907), [sym_subscript_expression] = STATE(1918), [sym_call_expression] = STATE(1918), [sym_field_expression] = STATE(1918), [sym_compound_literal_expression] = STATE(1907), [sym_parenthesized_expression] = STATE(1918), [sym_char_literal] = STATE(1733), [sym_concatenated_string] = STATE(1733), [sym_string_literal] = STATE(1617), [sym__class_name] = STATE(4738), [sym_template_type] = STATE(2080), [sym_template_function] = STATE(1907), [sym_co_await_expression] = STATE(1907), [sym_new_expression] = STATE(1907), [sym_delete_expression] = STATE(1907), [sym_lambda_expression] = STATE(1907), [sym_lambda_capture_specifier] = STATE(3651), [sym_parameter_pack_expansion] = STATE(1907), [sym_dependent_type_identifier] = STATE(5384), [sym__scope_resolution] = STATE(3630), [sym_qualified_identifier] = STATE(1918), [sym_qualified_type_identifier] = STATE(4738), [sym_user_defined_literal] = STATE(1907), [sym_identifier] = ACTIONS(1946), [anon_sym_LPAREN2] = ACTIONS(1950), [anon_sym_BANG] = ACTIONS(1954), [anon_sym_TILDE] = ACTIONS(1954), [anon_sym_DASH] = ACTIONS(1952), [anon_sym_PLUS] = ACTIONS(1952), [anon_sym_STAR] = ACTIONS(921), [anon_sym_AMP] = ACTIONS(921), [anon_sym_COLON_COLON] = ACTIONS(1958), [anon_sym_LBRACK] = ACTIONS(1776), [sym_primitive_type] = ACTIONS(1728), [anon_sym_DASH_DASH] = ACTIONS(1962), [anon_sym_PLUS_PLUS] = ACTIONS(1962), [anon_sym_sizeof] = ACTIONS(1964), [sym_number_literal] = ACTIONS(1966), [anon_sym_L_SQUOTE] = ACTIONS(1968), [anon_sym_u_SQUOTE] = ACTIONS(1968), [anon_sym_U_SQUOTE] = ACTIONS(1968), [anon_sym_u8_SQUOTE] = ACTIONS(1968), [anon_sym_SQUOTE] = ACTIONS(1968), [anon_sym_L_DQUOTE] = ACTIONS(1970), [anon_sym_u_DQUOTE] = ACTIONS(1970), [anon_sym_U_DQUOTE] = ACTIONS(1970), [anon_sym_u8_DQUOTE] = ACTIONS(1970), [anon_sym_DQUOTE] = ACTIONS(1970), [sym_true] = ACTIONS(1972), [sym_false] = ACTIONS(1972), [sym_null] = ACTIONS(1972), [sym_comment] = ACTIONS(3), [anon_sym_template] = ACTIONS(931), [anon_sym_delete] = ACTIONS(1974), [anon_sym_co_await] = ACTIONS(1976), [anon_sym_new] = ACTIONS(1978), [sym_this] = ACTIONS(1972), [sym_nullptr] = ACTIONS(1972), [sym_raw_string_literal] = ACTIONS(1980), }, [1328] = { [sym_template_argument_list] = STATE(1633), [sym_identifier] = ACTIONS(2953), [anon_sym_DOT_DOT_DOT] = ACTIONS(2955), [anon_sym_COMMA] = ACTIONS(2955), [anon_sym_LPAREN2] = ACTIONS(2957), [anon_sym_TILDE] = ACTIONS(2961), [anon_sym_DASH] = ACTIONS(2963), [anon_sym_PLUS] = ACTIONS(2963), [anon_sym_STAR] = ACTIONS(2965), [anon_sym_SLASH] = ACTIONS(2963), [anon_sym_PERCENT] = ACTIONS(2963), [anon_sym_PIPE_PIPE] = ACTIONS(2955), [anon_sym_AMP_AMP] = ACTIONS(2968), [anon_sym_PIPE] = ACTIONS(2963), [anon_sym_CARET] = ACTIONS(2963), [anon_sym_AMP] = ACTIONS(2965), [anon_sym_EQ_EQ] = ACTIONS(2955), [anon_sym_BANG_EQ] = ACTIONS(2955), [anon_sym_GT] = ACTIONS(2963), [anon_sym_GT_EQ] = ACTIONS(2955), [anon_sym_LT_EQ] = ACTIONS(2955), [anon_sym_LT] = ACTIONS(2971), [anon_sym_LT_LT] = ACTIONS(2963), [anon_sym_GT_GT] = ACTIONS(2963), [anon_sym_SEMI] = ACTIONS(2968), [anon_sym_extern] = ACTIONS(2953), [anon_sym___attribute__] = ACTIONS(2953), [anon_sym_COLON_COLON] = ACTIONS(2974), [anon_sym_LBRACK_LBRACK] = ACTIONS(2976), [anon_sym___declspec] = ACTIONS(2953), [anon_sym___based] = ACTIONS(2953), [anon_sym_LBRACE] = ACTIONS(2979), [anon_sym_RBRACE] = ACTIONS(2955), [anon_sym_LBRACK] = ACTIONS(2981), [anon_sym_EQ] = ACTIONS(2985), [anon_sym_static] = ACTIONS(2953), [anon_sym_register] = ACTIONS(2953), [anon_sym_inline] = ACTIONS(2953), [anon_sym_thread_local] = ACTIONS(2953), [anon_sym_const] = ACTIONS(2953), [anon_sym_volatile] = ACTIONS(2953), [anon_sym_restrict] = ACTIONS(2953), [anon_sym__Atomic] = ACTIONS(2953), [anon_sym_mutable] = ACTIONS(2953), [anon_sym_constexpr] = ACTIONS(2953), [anon_sym_COLON] = ACTIONS(2987), [anon_sym_QMARK] = ACTIONS(2955), [anon_sym_STAR_EQ] = ACTIONS(2989), [anon_sym_SLASH_EQ] = ACTIONS(2989), [anon_sym_PERCENT_EQ] = ACTIONS(2989), [anon_sym_PLUS_EQ] = ACTIONS(2989), [anon_sym_DASH_EQ] = ACTIONS(2989), [anon_sym_LT_LT_EQ] = ACTIONS(2989), [anon_sym_GT_GT_EQ] = ACTIONS(2989), [anon_sym_AMP_EQ] = ACTIONS(2989), [anon_sym_CARET_EQ] = ACTIONS(2989), [anon_sym_PIPE_EQ] = ACTIONS(2989), [anon_sym_DASH_DASH] = ACTIONS(2955), [anon_sym_PLUS_PLUS] = ACTIONS(2955), [anon_sym_DOT] = ACTIONS(2963), [anon_sym_DASH_GT] = ACTIONS(2955), [sym_comment] = ACTIONS(3), [anon_sym_virtual] = ACTIONS(2953), [anon_sym_template] = ACTIONS(2953), [anon_sym_operator] = ACTIONS(2953), }, }; static const uint16_t ts_small_parse_table[] = { [0] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3005), 1, anon_sym_LT, STATE(1354), 1, sym_template_argument_list, ACTIONS(2998), 2, anon_sym_TILDE, anon_sym_LBRACE, ACTIONS(3002), 3, anon_sym_STAR, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(2995), 4, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, ACTIONS(3000), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(2991), 18, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, ACTIONS(2993), 22, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [85] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3010), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(3008), 33, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DOT, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [156] = 31, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(63), 1, anon_sym_enum, ACTIONS(65), 1, anon_sym_class, ACTIONS(67), 1, anon_sym_struct, ACTIONS(69), 1, anon_sym_union, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(113), 1, anon_sym_typename, ACTIONS(931), 1, anon_sym_template, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3012), 1, anon_sym_LBRACE, STATE(1505), 1, sym_ms_call_modifier, STATE(2092), 1, sym_template_type, STATE(2147), 1, sym__type_specifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3083), 1, sym__declaration_specifiers, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(402), 3, sym_function_definition, sym_declaration, sym_declaration_list, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(49), 6, anon_sym___cdecl, anon_sym___clrcall, anon_sym___stdcall, anon_sym___fastcall, anon_sym___thiscall, anon_sym___vectorcall, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(1634), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [283] = 31, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(63), 1, anon_sym_enum, ACTIONS(65), 1, anon_sym_class, ACTIONS(67), 1, anon_sym_struct, ACTIONS(69), 1, anon_sym_union, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(113), 1, anon_sym_typename, ACTIONS(931), 1, anon_sym_template, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3014), 1, anon_sym_LBRACE, STATE(1591), 1, sym_ms_call_modifier, STATE(2092), 1, sym_template_type, STATE(2147), 1, sym__type_specifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(2939), 1, sym__declaration_specifiers, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(706), 3, sym_function_definition, sym_declaration, sym_declaration_list, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(49), 6, anon_sym___cdecl, anon_sym___clrcall, anon_sym___stdcall, anon_sym___fastcall, anon_sym___thiscall, anon_sym___vectorcall, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(1634), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [410] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(2971), 1, anon_sym_LT, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(2985), 1, anon_sym_EQ, STATE(1628), 1, sym_template_argument_list, ACTIONS(2961), 2, anon_sym_TILDE, anon_sym_LBRACK_LBRACK, ACTIONS(2968), 2, anon_sym_LPAREN2, anon_sym_AMP_AMP, ACTIONS(2965), 3, anon_sym_STAR, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(2963), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2955), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(2953), 18, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [501] = 31, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(63), 1, anon_sym_enum, ACTIONS(65), 1, anon_sym_class, ACTIONS(67), 1, anon_sym_struct, ACTIONS(69), 1, anon_sym_union, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(113), 1, anon_sym_typename, ACTIONS(931), 1, anon_sym_template, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3016), 1, anon_sym_LBRACE, STATE(1497), 1, sym_ms_call_modifier, STATE(2092), 1, sym_template_type, STATE(2147), 1, sym__type_specifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3064), 1, sym__declaration_specifiers, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(712), 3, sym_function_definition, sym_declaration, sym_declaration_list, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(49), 6, anon_sym___cdecl, anon_sym___clrcall, anon_sym___stdcall, anon_sym___fastcall, anon_sym___thiscall, anon_sym___vectorcall, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(1634), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [628] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3005), 1, anon_sym_LT, STATE(1356), 1, sym_template_argument_list, ACTIONS(2995), 2, anon_sym_LPAREN2, anon_sym_AMP_AMP, ACTIONS(2998), 3, anon_sym_TILDE, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, ACTIONS(3002), 3, anon_sym_STAR, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(3000), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(2991), 18, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, ACTIONS(2993), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [713] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3020), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(3018), 33, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DOT, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [784] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(2971), 1, anon_sym_LT, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(2985), 1, anon_sym_EQ, ACTIONS(3022), 1, anon_sym_COLON, STATE(1628), 1, sym_template_argument_list, ACTIONS(2961), 2, anon_sym_TILDE, anon_sym_LBRACK_LBRACK, ACTIONS(2968), 2, anon_sym_LPAREN2, anon_sym_AMP_AMP, ACTIONS(2965), 3, anon_sym_STAR, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(2963), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2955), 12, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(2953), 18, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [877] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(2971), 1, anon_sym_LT, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(2985), 1, anon_sym_EQ, ACTIONS(3024), 1, anon_sym_COLON, STATE(1628), 1, sym_template_argument_list, ACTIONS(2961), 2, anon_sym_TILDE, anon_sym_LBRACK_LBRACK, ACTIONS(2968), 2, anon_sym_LPAREN2, anon_sym_AMP_AMP, ACTIONS(2965), 3, anon_sym_STAR, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(2963), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2955), 12, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(2953), 18, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [970] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(2957), 1, anon_sym_LPAREN2, ACTIONS(2961), 1, anon_sym_TILDE, ACTIONS(2971), 1, anon_sym_LT, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2976), 1, anon_sym_LBRACK_LBRACK, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(2981), 1, anon_sym_LBRACK, ACTIONS(2985), 1, anon_sym_EQ, ACTIONS(3022), 1, anon_sym_COLON, STATE(1633), 1, sym_template_argument_list, ACTIONS(2965), 2, anon_sym_STAR, anon_sym_AMP, ACTIONS(2968), 2, anon_sym_AMP_AMP, anon_sym_SEMI, ACTIONS(2963), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2955), 11, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(2953), 18, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [1069] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3028), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(3026), 33, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DOT, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [1140] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(2957), 1, anon_sym_LPAREN2, ACTIONS(2961), 1, anon_sym_TILDE, ACTIONS(2971), 1, anon_sym_LT, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2976), 1, anon_sym_LBRACK_LBRACK, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(2981), 1, anon_sym_LBRACK, ACTIONS(2985), 1, anon_sym_EQ, ACTIONS(3024), 1, anon_sym_COLON, STATE(1633), 1, sym_template_argument_list, ACTIONS(2965), 2, anon_sym_STAR, anon_sym_AMP, ACTIONS(2968), 2, anon_sym_AMP_AMP, anon_sym_SEMI, ACTIONS(2963), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2955), 11, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(2953), 18, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [1239] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(2971), 1, anon_sym_LT, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(2985), 1, anon_sym_EQ, ACTIONS(3030), 1, anon_sym_COLON, STATE(1628), 1, sym_template_argument_list, ACTIONS(2961), 2, anon_sym_TILDE, anon_sym_LBRACK_LBRACK, ACTIONS(2968), 2, anon_sym_LPAREN2, anon_sym_AMP_AMP, ACTIONS(2965), 3, anon_sym_STAR, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(2963), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2955), 12, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(2953), 18, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [1332] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3034), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(3032), 33, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DOT, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [1403] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(2971), 1, anon_sym_LT, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(2985), 1, anon_sym_EQ, ACTIONS(3036), 1, anon_sym_COLON, STATE(1628), 1, sym_template_argument_list, ACTIONS(2961), 2, anon_sym_TILDE, anon_sym_LBRACK_LBRACK, ACTIONS(2968), 2, anon_sym_LPAREN2, anon_sym_AMP_AMP, ACTIONS(2965), 3, anon_sym_STAR, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(2963), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2955), 12, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(2953), 18, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [1496] = 31, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(63), 1, anon_sym_enum, ACTIONS(65), 1, anon_sym_class, ACTIONS(67), 1, anon_sym_struct, ACTIONS(69), 1, anon_sym_union, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(113), 1, anon_sym_typename, ACTIONS(931), 1, anon_sym_template, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3038), 1, anon_sym_LBRACE, STATE(1619), 1, sym_ms_call_modifier, STATE(2092), 1, sym_template_type, STATE(2147), 1, sym__type_specifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(2951), 1, sym__declaration_specifiers, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(794), 3, sym_function_definition, sym_declaration, sym_declaration_list, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(49), 6, anon_sym___cdecl, anon_sym___clrcall, anon_sym___stdcall, anon_sym___fastcall, anon_sym___thiscall, anon_sym___vectorcall, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(1634), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [1623] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3042), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(3040), 33, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DOT, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [1694] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3046), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(3044), 33, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DOT, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [1765] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3050), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(3048), 33, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DOT, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [1836] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(2971), 1, anon_sym_LT, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(2985), 1, anon_sym_EQ, ACTIONS(2987), 1, anon_sym_COLON, STATE(1628), 1, sym_template_argument_list, ACTIONS(2961), 2, anon_sym_TILDE, anon_sym_LBRACK_LBRACK, ACTIONS(2968), 2, anon_sym_LPAREN2, anon_sym_AMP_AMP, ACTIONS(2965), 3, anon_sym_STAR, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(2963), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2955), 12, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(2953), 18, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [1929] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(2957), 1, anon_sym_LPAREN2, ACTIONS(2961), 1, anon_sym_TILDE, ACTIONS(2971), 1, anon_sym_LT, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2976), 1, anon_sym_LBRACK_LBRACK, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(2981), 1, anon_sym_LBRACK, ACTIONS(2985), 1, anon_sym_EQ, ACTIONS(3030), 1, anon_sym_COLON, STATE(1633), 1, sym_template_argument_list, ACTIONS(2965), 2, anon_sym_STAR, anon_sym_AMP, ACTIONS(2968), 2, anon_sym_AMP_AMP, anon_sym_SEMI, ACTIONS(2963), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2955), 11, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(2953), 18, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [2028] = 31, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(63), 1, anon_sym_enum, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(113), 1, anon_sym_typename, ACTIONS(931), 1, anon_sym_template, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3052), 1, sym_identifier, ACTIONS(3054), 1, anon_sym_class, ACTIONS(3056), 1, anon_sym_struct, ACTIONS(3058), 1, anon_sym_union, STATE(1555), 1, sym_ms_call_modifier, STATE(2147), 1, sym__type_specifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2893), 1, sym__declaration_specifiers, STATE(3160), 1, sym_qualified_type_identifier, STATE(3163), 1, sym_template_type, STATE(4014), 1, sym__scope_resolution, STATE(5134), 1, sym__class_name, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(1499), 2, sym_function_definition, sym_declaration, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(49), 6, anon_sym___cdecl, anon_sym___clrcall, anon_sym___stdcall, anon_sym___fastcall, anon_sym___thiscall, anon_sym___vectorcall, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(1634), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [2154] = 31, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(63), 1, anon_sym_enum, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(113), 1, anon_sym_typename, ACTIONS(931), 1, anon_sym_template, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3052), 1, sym_identifier, ACTIONS(3060), 1, anon_sym_class, ACTIONS(3062), 1, anon_sym_struct, ACTIONS(3064), 1, anon_sym_union, STATE(1523), 1, sym_ms_call_modifier, STATE(2147), 1, sym__type_specifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2990), 1, sym__declaration_specifiers, STATE(3160), 1, sym_qualified_type_identifier, STATE(3163), 1, sym_template_type, STATE(4014), 1, sym__scope_resolution, STATE(5240), 1, sym__class_name, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(1392), 2, sym_function_definition, sym_declaration, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(49), 6, anon_sym___cdecl, anon_sym___clrcall, anon_sym___stdcall, anon_sym___fastcall, anon_sym___thiscall, anon_sym___vectorcall, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(1634), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [2280] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(2971), 1, anon_sym_LT, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, STATE(1630), 1, sym_template_argument_list, ACTIONS(2961), 2, anon_sym_TILDE, anon_sym_LBRACK_LBRACK, ACTIONS(2965), 3, anon_sym_STAR, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(2968), 5, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, ACTIONS(2955), 9, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(2963), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2953), 19, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [2368] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3073), 3, anon_sym_TILDE, anon_sym_COLON_COLON, anon_sym_LBRACE, ACTIONS(3077), 3, anon_sym_STAR, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(3070), 4, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, ACTIONS(3075), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3066), 18, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, ACTIONS(3068), 22, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [2446] = 31, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(63), 1, anon_sym_enum, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(113), 1, anon_sym_typename, ACTIONS(931), 1, anon_sym_template, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3052), 1, sym_identifier, ACTIONS(3080), 1, anon_sym_class, ACTIONS(3082), 1, anon_sym_struct, ACTIONS(3084), 1, anon_sym_union, STATE(1498), 1, sym_ms_call_modifier, STATE(2147), 1, sym__type_specifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(3044), 1, sym__declaration_specifiers, STATE(3160), 1, sym_qualified_type_identifier, STATE(3163), 1, sym_template_type, STATE(4014), 1, sym__scope_resolution, STATE(5324), 1, sym__class_name, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(1480), 2, sym_function_definition, sym_declaration, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(49), 6, anon_sym___cdecl, anon_sym___clrcall, anon_sym___stdcall, anon_sym___fastcall, anon_sym___thiscall, anon_sym___vectorcall, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(1634), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [2572] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3070), 2, anon_sym_LPAREN2, anon_sym_AMP_AMP, ACTIONS(3077), 3, anon_sym_STAR, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(3073), 4, anon_sym_TILDE, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, ACTIONS(3075), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3066), 18, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, ACTIONS(3068), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [2650] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3005), 1, anon_sym_LT, STATE(1358), 1, sym_template_argument_list, ACTIONS(2998), 3, anon_sym_TILDE, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, ACTIONS(3002), 4, anon_sym_STAR, anon_sym_AMP, anon_sym_LBRACK, anon_sym_EQ, ACTIONS(2995), 5, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, ACTIONS(3000), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2991), 18, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, ACTIONS(2993), 19, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [2734] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3073), 4, anon_sym_TILDE, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, ACTIONS(3077), 4, anon_sym_STAR, anon_sym_AMP, anon_sym_LBRACK, anon_sym_EQ, ACTIONS(3070), 5, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, ACTIONS(3075), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3066), 18, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, ACTIONS(3068), 19, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [2811] = 29, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(1353), 1, anon_sym_enum, ACTIONS(1357), 1, anon_sym_struct, ACTIONS(1359), 1, anon_sym_union, ACTIONS(2651), 1, sym_identifier, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(3086), 1, anon_sym_class, ACTIONS(3088), 1, anon_sym_typename, ACTIONS(3090), 1, anon_sym_template, ACTIONS(3092), 1, anon_sym_GT2, STATE(2005), 1, sym__declaration_specifiers, STATE(2092), 1, sym_template_type, STATE(2147), 1, sym__type_specifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(4015), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(4419), 7, sym_parameter_declaration, sym_type_parameter_declaration, sym_variadic_type_parameter_declaration, sym_optional_type_parameter_declaration, sym_template_template_parameter_declaration, sym_optional_parameter_declaration, sym_variadic_parameter_declaration, STATE(1629), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [2931] = 28, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(1353), 1, anon_sym_enum, ACTIONS(1357), 1, anon_sym_struct, ACTIONS(1359), 1, anon_sym_union, ACTIONS(2651), 1, sym_identifier, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(3086), 1, anon_sym_class, ACTIONS(3088), 1, anon_sym_typename, ACTIONS(3090), 1, anon_sym_template, STATE(2005), 1, sym__declaration_specifiers, STATE(2092), 1, sym_template_type, STATE(2147), 1, sym__type_specifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(4015), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(4705), 7, sym_parameter_declaration, sym_type_parameter_declaration, sym_variadic_type_parameter_declaration, sym_optional_type_parameter_declaration, sym_template_template_parameter_declaration, sym_optional_parameter_declaration, sym_variadic_parameter_declaration, STATE(1629), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [3048] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3028), 25, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(3026), 33, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DOT, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [3114] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3020), 25, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(3018), 33, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DOT, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [3180] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3050), 25, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(3048), 33, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DOT, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [3246] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3046), 25, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(3044), 33, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DOT, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [3312] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3010), 25, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(3008), 33, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DOT, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [3378] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3034), 25, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(3032), 33, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DOT, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [3444] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3042), 25, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(3040), 33, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DOT, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [3510] = 30, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(931), 1, anon_sym_template, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(1353), 1, anon_sym_enum, ACTIONS(1355), 1, anon_sym_class, ACTIONS(1357), 1, anon_sym_struct, ACTIONS(1359), 1, anon_sym_union, ACTIONS(1361), 1, anon_sym_typename, ACTIONS(2482), 1, anon_sym_DOT_DOT_DOT, ACTIONS(2484), 1, anon_sym_RPAREN, ACTIONS(2651), 1, sym_identifier, ACTIONS(2661), 1, anon_sym_COLON_COLON, STATE(2000), 1, sym__declaration_specifiers, STATE(2092), 1, sym_template_type, STATE(2147), 1, sym__type_specifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(4015), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(4522), 3, sym_parameter_declaration, sym_optional_parameter_declaration, sym_variadic_parameter_declaration, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(1629), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [3629] = 30, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(931), 1, anon_sym_template, ACTIONS(1345), 1, anon_sym_DOT_DOT_DOT, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(1353), 1, anon_sym_enum, ACTIONS(1355), 1, anon_sym_class, ACTIONS(1357), 1, anon_sym_struct, ACTIONS(1359), 1, anon_sym_union, ACTIONS(1361), 1, anon_sym_typename, ACTIONS(2651), 1, sym_identifier, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(2701), 1, anon_sym_RPAREN, STATE(2000), 1, sym__declaration_specifiers, STATE(2092), 1, sym_template_type, STATE(2147), 1, sym__type_specifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(4015), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(4410), 3, sym_parameter_declaration, sym_optional_parameter_declaration, sym_variadic_parameter_declaration, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(1629), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [3748] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(1936), 2, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(1758), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1756), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [3814] = 29, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(931), 1, anon_sym_template, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(1353), 1, anon_sym_enum, ACTIONS(1355), 1, anon_sym_class, ACTIONS(1357), 1, anon_sym_struct, ACTIONS(1359), 1, anon_sym_union, ACTIONS(1361), 1, anon_sym_typename, ACTIONS(2651), 1, sym_identifier, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(3094), 1, anon_sym_DOT_DOT_DOT, STATE(2000), 1, sym__declaration_specifiers, STATE(2092), 1, sym_template_type, STATE(2147), 1, sym__type_specifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(4015), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(4668), 3, sym_parameter_declaration, sym_optional_parameter_declaration, sym_variadic_parameter_declaration, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(1629), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [3930] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(109), 1, anon_sym_explicit, ACTIONS(117), 1, anon_sym_operator, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1391), 1, anon_sym_LBRACK, ACTIONS(3096), 1, sym_identifier, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3102), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, STATE(3572), 1, sym__scope_resolution, STATE(3779), 1, sym_function_declarator, STATE(4074), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(4157), 2, sym_operator_cast, sym_qualified_operator_cast_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2346), 10, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, sym_explicit_function_specifier, sym__constructor_specifiers, aux_sym_operator_cast_definition_repeat1, STATE(3782), 10, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [4041] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(109), 1, anon_sym_explicit, ACTIONS(117), 1, anon_sym_operator, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1391), 1, anon_sym_LBRACK, ACTIONS(3096), 1, sym_identifier, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3102), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, STATE(3572), 1, sym__scope_resolution, STATE(3721), 1, sym_function_declarator, STATE(4074), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(4310), 2, sym_operator_cast, sym_qualified_operator_cast_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2346), 10, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, sym_explicit_function_specifier, sym__constructor_specifiers, aux_sym_operator_cast_definition_repeat1, STATE(3782), 10, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [4152] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(109), 1, anon_sym_explicit, ACTIONS(117), 1, anon_sym_operator, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1391), 1, anon_sym_LBRACK, ACTIONS(3096), 1, sym_identifier, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3102), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, STATE(3572), 1, sym__scope_resolution, STATE(3734), 1, sym_function_declarator, STATE(4074), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(4199), 2, sym_operator_cast, sym_qualified_operator_cast_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2346), 10, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, sym_explicit_function_specifier, sym__constructor_specifiers, aux_sym_operator_cast_definition_repeat1, STATE(3782), 10, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [4263] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(109), 1, anon_sym_explicit, ACTIONS(117), 1, anon_sym_operator, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1391), 1, anon_sym_LBRACK, ACTIONS(3096), 1, sym_identifier, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3102), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, STATE(3572), 1, sym__scope_resolution, STATE(3733), 1, sym_function_declarator, STATE(4074), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(4316), 2, sym_operator_cast, sym_qualified_operator_cast_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2346), 10, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, sym_explicit_function_specifier, sym__constructor_specifiers, aux_sym_operator_cast_definition_repeat1, STATE(3782), 10, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [4374] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3116), 1, anon_sym_LBRACK_LBRACK, STATE(1376), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(3114), 22, sym_raw_string_literal, anon_sym_LPAREN2, anon_sym_BANG, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, sym_number_literal, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, ACTIONS(3112), 30, anon_sym_DASH, anon_sym_PLUS, anon_sym_LBRACK, sym_primitive_type, anon_sym_if, anon_sym_switch, anon_sym_case, anon_sym_default, anon_sym_while, anon_sym_do, anon_sym_for, anon_sym_return, anon_sym_break, anon_sym_continue, anon_sym_goto, anon_sym_sizeof, sym_true, sym_false, sym_null, sym_identifier, anon_sym_template, anon_sym_delete, anon_sym_throw, anon_sym_co_return, anon_sym_co_yield, anon_sym_try, anon_sym_co_await, anon_sym_new, sym_this, sym_nullptr, [4441] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(109), 1, anon_sym_explicit, ACTIONS(117), 1, anon_sym_operator, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1391), 1, anon_sym_LBRACK, ACTIONS(3096), 1, sym_identifier, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3102), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, STATE(3572), 1, sym__scope_resolution, STATE(3769), 1, sym_function_declarator, STATE(4074), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(4204), 2, sym_operator_cast, sym_qualified_operator_cast_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2346), 10, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, sym_explicit_function_specifier, sym__constructor_specifiers, aux_sym_operator_cast_definition_repeat1, STATE(3782), 10, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [4552] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(109), 1, anon_sym_explicit, ACTIONS(117), 1, anon_sym_operator, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1391), 1, anon_sym_LBRACK, ACTIONS(3096), 1, sym_identifier, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3102), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, STATE(3572), 1, sym__scope_resolution, STATE(3722), 1, sym_function_declarator, STATE(4074), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(4268), 2, sym_operator_cast, sym_qualified_operator_cast_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2346), 10, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, sym_explicit_function_specifier, sym__constructor_specifiers, aux_sym_operator_cast_definition_repeat1, STATE(3782), 10, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [4663] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(109), 1, anon_sym_explicit, ACTIONS(117), 1, anon_sym_operator, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1391), 1, anon_sym_LBRACK, ACTIONS(3096), 1, sym_identifier, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3102), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, STATE(3572), 1, sym__scope_resolution, STATE(3811), 1, sym_function_declarator, STATE(4074), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(4268), 2, sym_operator_cast, sym_qualified_operator_cast_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2346), 10, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, sym_explicit_function_specifier, sym__constructor_specifiers, aux_sym_operator_cast_definition_repeat1, STATE(3782), 10, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [4774] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(109), 1, anon_sym_explicit, ACTIONS(117), 1, anon_sym_operator, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1391), 1, anon_sym_LBRACK, ACTIONS(3096), 1, sym_identifier, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3102), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, STATE(3572), 1, sym__scope_resolution, STATE(3786), 1, sym_function_declarator, STATE(4074), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(4316), 2, sym_operator_cast, sym_qualified_operator_cast_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2346), 10, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, sym_explicit_function_specifier, sym__constructor_specifiers, aux_sym_operator_cast_definition_repeat1, STATE(3782), 10, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [4885] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(109), 1, anon_sym_explicit, ACTIONS(117), 1, anon_sym_operator, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1391), 1, anon_sym_LBRACK, ACTIONS(3096), 1, sym_identifier, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3102), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, STATE(3572), 1, sym__scope_resolution, STATE(3832), 1, sym_function_declarator, STATE(4074), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(4221), 2, sym_operator_cast, sym_qualified_operator_cast_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2346), 10, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, sym_explicit_function_specifier, sym__constructor_specifiers, aux_sym_operator_cast_definition_repeat1, STATE(3782), 10, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [4996] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(109), 1, anon_sym_explicit, ACTIONS(117), 1, anon_sym_operator, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1391), 1, anon_sym_LBRACK, ACTIONS(3096), 1, sym_identifier, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3102), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, STATE(3572), 1, sym__scope_resolution, STATE(3789), 1, sym_function_declarator, STATE(4074), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(4157), 2, sym_operator_cast, sym_qualified_operator_cast_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2346), 10, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, sym_explicit_function_specifier, sym__constructor_specifiers, aux_sym_operator_cast_definition_repeat1, STATE(3782), 10, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [5107] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(109), 1, anon_sym_explicit, ACTIONS(117), 1, anon_sym_operator, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1391), 1, anon_sym_LBRACK, ACTIONS(3096), 1, sym_identifier, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3102), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, STATE(3572), 1, sym__scope_resolution, STATE(3727), 1, sym_function_declarator, STATE(4074), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(4221), 2, sym_operator_cast, sym_qualified_operator_cast_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2346), 10, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, sym_explicit_function_specifier, sym__constructor_specifiers, aux_sym_operator_cast_definition_repeat1, STATE(3782), 10, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [5218] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3121), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3119), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [5280] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2144), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2142), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [5342] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2028), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2026), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [5404] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(1936), 2, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(1758), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(1756), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [5468] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2148), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2146), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [5530] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3125), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3123), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [5592] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3125), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3123), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [5654] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1838), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1836), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [5716] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3129), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3127), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [5778] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3133), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3131), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [5840] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1850), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1848), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [5902] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1854), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1852), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [5964] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3137), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3135), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [6026] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2100), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2098), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [6088] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3141), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3139), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [6150] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3145), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3143), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [6212] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3149), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3147), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [6274] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3149), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3147), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [6336] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3153), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3151), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [6398] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3157), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3155), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [6460] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3161), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3159), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [6522] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2132), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2130), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [6584] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2208), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2206), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [6646] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2204), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2202), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [6708] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2200), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2198), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [6770] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2196), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2194), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [6832] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2184), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2182), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [6894] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2176), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2174), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [6956] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1751), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1749), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [7018] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2164), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2162), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [7080] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3165), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3163), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [7142] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3169), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3167), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [7204] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1758), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1756), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [7266] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2152), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2150), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [7328] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3173), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3171), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [7390] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3121), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3119), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [7452] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3177), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3175), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [7514] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3181), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3179), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [7576] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3185), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3183), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [7638] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3189), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3187), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [7700] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2128), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2126), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [7762] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1838), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1836), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [7824] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2140), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2138), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [7886] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2136), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2134), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [7948] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2212), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2210), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [8010] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2220), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2218), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [8072] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2036), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2034), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [8134] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2120), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2118), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [8196] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2116), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2114), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [8258] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2092), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2090), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [8320] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2088), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2086), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [8382] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2084), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2082), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [8444] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2080), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2078), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [8506] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2020), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2018), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [8568] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2076), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2074), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [8630] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2072), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2070), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [8692] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2068), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2066), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [8754] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2048), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2046), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [8816] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2044), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2042), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [8878] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2040), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2038), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [8940] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2032), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2030), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [9002] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3193), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3191), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [9064] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3197), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3195), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [9126] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3201), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3199), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [9188] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3201), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3199), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [9250] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3205), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3203), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [9312] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3209), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3207), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [9374] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3213), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3211), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [9436] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3217), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3215), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [9498] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1842), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1840), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [9560] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1858), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1856), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [9622] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1846), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1844), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [9684] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1846), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1844), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [9746] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3221), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3219), 48, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, aux_sym_preproc_else_token1, aux_sym_preproc_elif_token1, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [9808] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(1936), 2, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(1758), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1756), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [9872] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3048), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3050), 37, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [9933] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3018), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3020), 37, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [9994] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3026), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3028), 37, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [10055] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3008), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3010), 37, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [10116] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3032), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3034), 37, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [10177] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3044), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3046), 37, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [10238] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3040), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3042), 37, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [10299] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2116), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2114), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [10359] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2072), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2070), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [10419] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2196), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2194), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [10479] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3217), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3215), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [10539] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2100), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2098), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [10599] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1838), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1836), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [10659] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1838), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1836), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [10719] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3145), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3143), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [10779] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3141), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3139), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [10839] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1858), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1856), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [10899] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1854), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1852), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [10959] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1850), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1848), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [11019] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2184), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2182), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [11079] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3221), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3219), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [11139] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3129), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3127), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [11199] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1842), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1840), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [11259] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3133), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3131), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [11319] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2176), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2174), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [11379] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1751), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1749), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [11439] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1758), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1756), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [11499] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3125), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3123), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [11559] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1751), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(1749), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [11619] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3149), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3147), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [11679] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(3230), 1, sym_raw_string_literal, STATE(1489), 2, sym_string_literal, aux_sym_concatenated_string_repeat1, ACTIONS(3227), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, ACTIONS(3225), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, sym_literal_suffix, ACTIONS(3223), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [11745] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2028), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2026), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [11805] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2164), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2162), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [11865] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3221), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3219), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [11925] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1758), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(1756), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [11985] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3125), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3123), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [12045] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2032), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2030), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [12105] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2152), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2150), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [12165] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(63), 1, anon_sym_enum, ACTIONS(65), 1, anon_sym_class, ACTIONS(67), 1, anon_sym_struct, ACTIONS(69), 1, anon_sym_union, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(113), 1, anon_sym_typename, ACTIONS(931), 1, anon_sym_template, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, STATE(2092), 1, sym_template_type, STATE(2147), 1, sym__type_specifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3158), 1, sym__declaration_specifiers, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(1634), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [12273] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(63), 1, anon_sym_enum, ACTIONS(65), 1, anon_sym_class, ACTIONS(67), 1, anon_sym_struct, ACTIONS(69), 1, anon_sym_union, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(113), 1, anon_sym_typename, ACTIONS(931), 1, anon_sym_template, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, STATE(2092), 1, sym_template_type, STATE(2147), 1, sym__type_specifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3148), 1, sym__declaration_specifiers, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(1634), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [12381] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3129), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3127), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [12441] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3213), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3211), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [12501] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(2486), 1, anon_sym_LPAREN2, ACTIONS(3233), 1, sym_identifier, ACTIONS(3237), 1, anon_sym_STAR, ACTIONS(3239), 1, anon_sym_AMP_AMP, ACTIONS(3241), 1, anon_sym_AMP, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3245), 1, anon_sym_LBRACK, STATE(3264), 1, sym_parameter_list, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3672), 1, sym__scope_resolution, STATE(3819), 1, sym__declarator, STATE(4067), 1, sym__abstract_declarator, STATE(5456), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, ACTIONS(3235), 2, anon_sym_COMMA, anon_sym_RPAREN, STATE(1780), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(1850), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [12609] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2144), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2142), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [12669] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2140), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2138), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [12729] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2136), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2134), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [12789] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(63), 1, anon_sym_enum, ACTIONS(65), 1, anon_sym_class, ACTIONS(67), 1, anon_sym_struct, ACTIONS(69), 1, anon_sym_union, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(113), 1, anon_sym_typename, ACTIONS(931), 1, anon_sym_template, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, STATE(2092), 1, sym_template_type, STATE(2147), 1, sym__type_specifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3159), 1, sym__declaration_specifiers, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(1634), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [12897] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2040), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2038), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [12957] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2044), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2042), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [13017] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2212), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2210), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [13077] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2048), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2046), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [13137] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3137), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3135), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [13197] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2220), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2218), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [13257] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2148), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2146), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [13317] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2036), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2034), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [13377] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2068), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2066), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [13437] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2072), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2070), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [13497] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2076), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2074), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [13557] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2020), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2018), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [13617] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2120), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2118), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [13677] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2080), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2078), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [13737] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2084), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2082), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [13797] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2088), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2086), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [13857] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2116), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2114), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [13917] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(63), 1, anon_sym_enum, ACTIONS(65), 1, anon_sym_class, ACTIONS(67), 1, anon_sym_struct, ACTIONS(69), 1, anon_sym_union, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(113), 1, anon_sym_typename, ACTIONS(931), 1, anon_sym_template, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, STATE(2092), 1, sym_template_type, STATE(2147), 1, sym__type_specifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3143), 1, sym__declaration_specifiers, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(1634), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [14025] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2092), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2090), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [14085] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1842), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(1840), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [14145] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3133), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3131), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [14205] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3153), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3151), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [14265] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3157), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3155), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [14325] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2028), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2026), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [14385] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3161), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3159), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [14445] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3217), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3215), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [14505] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3213), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3211), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [14565] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1846), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1844), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [14625] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1838), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(1836), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [14685] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3209), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3207), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [14745] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2092), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2090), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [14805] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3205), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3203), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [14865] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3209), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3207), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [14925] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3201), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3199), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [14985] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2120), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2118), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [15045] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2036), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2034), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [15105] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2220), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2218), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [15165] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3201), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3199), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [15225] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2212), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2210), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [15285] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2136), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2134), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [15345] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2140), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2138), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [15405] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3197), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3195), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [15465] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3193), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3191), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [15525] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2084), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2082), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [15585] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2144), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2142), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [15645] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2148), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2146), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [15705] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2080), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2078), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [15765] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2020), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2018), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [15825] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2128), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2126), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [15885] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(63), 1, anon_sym_enum, ACTIONS(65), 1, anon_sym_class, ACTIONS(67), 1, anon_sym_struct, ACTIONS(69), 1, anon_sym_union, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(113), 1, anon_sym_typename, ACTIONS(931), 1, anon_sym_template, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, STATE(2092), 1, sym_template_type, STATE(2147), 1, sym__type_specifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3142), 1, sym__declaration_specifiers, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(1634), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [15993] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2152), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2150), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [16053] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2164), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2162), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [16113] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3205), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3203), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [16173] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3201), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3199), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [16233] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2176), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2174), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [16293] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2184), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2182), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [16353] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2076), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2074), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [16413] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2196), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2194), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [16473] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2200), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2198), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [16533] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3201), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3199), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [16593] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2204), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2202), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [16653] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2208), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2206), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [16713] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2132), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2130), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [16773] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3249), 23, sym_raw_string_literal, anon_sym_LPAREN2, anon_sym_BANG, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, sym_number_literal, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, ACTIONS(3247), 29, anon_sym_DASH, anon_sym_PLUS, sym_primitive_type, anon_sym_if, anon_sym_switch, anon_sym_case, anon_sym_default, anon_sym_while, anon_sym_do, anon_sym_for, anon_sym_return, anon_sym_break, anon_sym_continue, anon_sym_goto, anon_sym_sizeof, sym_true, sym_false, sym_null, sym_identifier, anon_sym_template, anon_sym_delete, anon_sym_throw, anon_sym_co_return, anon_sym_co_yield, anon_sym_try, anon_sym_co_await, anon_sym_new, sym_this, sym_nullptr, [16833] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3197), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3195), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [16893] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2100), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2098), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [16953] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3193), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3191), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [17013] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3149), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3147), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [17073] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1838), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(1836), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [17133] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2068), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2066), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [17193] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1850), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(1848), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [17253] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1854), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(1852), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [17313] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(3255), 1, sym_raw_string_literal, STATE(1489), 2, sym_string_literal, aux_sym_concatenated_string_repeat1, ACTIONS(1970), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, ACTIONS(3253), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, sym_literal_suffix, ACTIONS(3251), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [17379] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3137), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3135), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [17439] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2048), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2046), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [17499] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2044), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2042), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [17559] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(2486), 1, anon_sym_LPAREN2, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3245), 1, anon_sym_LBRACK, ACTIONS(3257), 1, anon_sym_STAR, ACTIONS(3259), 1, anon_sym_AMP_AMP, ACTIONS(3261), 1, anon_sym_AMP, STATE(3273), 1, sym_parameter_list, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3672), 1, sym__scope_resolution, STATE(3819), 1, sym__declarator, STATE(4081), 1, sym__abstract_declarator, STATE(5456), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, ACTIONS(3235), 2, anon_sym_COMMA, anon_sym_GT2, STATE(1807), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(1850), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [17667] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2040), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2038), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [17727] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3189), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3187), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [17787] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1858), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(1856), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [17847] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2032), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2030), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [17907] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3185), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3183), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [17967] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3181), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3179), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [18027] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3177), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3175), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [18087] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3121), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3119), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [18147] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(63), 1, anon_sym_enum, ACTIONS(65), 1, anon_sym_class, ACTIONS(67), 1, anon_sym_struct, ACTIONS(69), 1, anon_sym_union, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(113), 1, anon_sym_typename, ACTIONS(931), 1, anon_sym_template, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, STATE(2092), 1, sym_template_type, STATE(2147), 1, sym__type_specifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3164), 1, sym__declaration_specifiers, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(1634), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [18255] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3121), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3119), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [18315] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2204), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2202), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [18375] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3173), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3171), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [18435] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3169), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3167), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [18495] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3189), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3187), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [18555] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3185), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3183), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [18615] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3181), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3179), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [18675] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3141), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3139), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [18735] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3145), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3143), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [18795] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3177), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3175), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [18855] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3149), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3147), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [18915] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3121), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3119), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [18975] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1846), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(1844), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [19035] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3121), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3119), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [19095] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3125), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3123), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [19155] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3125), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3123), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [19215] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3173), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3171), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [19275] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3149), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3147), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [19335] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3153), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3151), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [19395] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3169), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3167), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [19455] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3157), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3155), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [19515] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3165), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(3163), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [19575] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1846), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(1844), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [19635] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1846), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(1844), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [19695] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3165), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3163), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [19755] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3263), 1, sym_literal_suffix, ACTIONS(3265), 1, sym_raw_string_literal, STATE(1578), 2, sym_string_literal, aux_sym_concatenated_string_repeat1, ACTIONS(1970), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, ACTIONS(2963), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(2955), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [19823] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2128), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2126), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [19883] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(63), 1, anon_sym_enum, ACTIONS(65), 1, anon_sym_class, ACTIONS(67), 1, anon_sym_struct, ACTIONS(69), 1, anon_sym_union, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(113), 1, anon_sym_typename, ACTIONS(931), 1, anon_sym_template, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, STATE(2092), 1, sym_template_type, STATE(2147), 1, sym__type_specifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3138), 1, sym__declaration_specifiers, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(1634), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [19991] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3161), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3159), 46, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_if_token2, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [20051] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2200), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2198), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [20111] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3269), 23, sym_raw_string_literal, anon_sym_LPAREN2, anon_sym_BANG, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, sym_number_literal, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, ACTIONS(3267), 29, anon_sym_DASH, anon_sym_PLUS, sym_primitive_type, anon_sym_if, anon_sym_switch, anon_sym_case, anon_sym_default, anon_sym_while, anon_sym_do, anon_sym_for, anon_sym_return, anon_sym_break, anon_sym_continue, anon_sym_goto, anon_sym_sizeof, sym_true, sym_false, sym_null, sym_identifier, anon_sym_template, anon_sym_delete, anon_sym_throw, anon_sym_co_return, anon_sym_co_yield, anon_sym_try, anon_sym_co_await, anon_sym_new, sym_this, sym_nullptr, [20171] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2208), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2206), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [20231] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2088), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2086), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [20291] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2132), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, ACTIONS(2130), 45, aux_sym_preproc_def_token1, aux_sym_preproc_if_token1, aux_sym_preproc_ifdef_token1, aux_sym_preproc_ifdef_token2, sym_preproc_directive, anon_sym_AMP, anon_sym_typedef, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, anon_sym_public, anon_sym_private, anon_sym_protected, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_friend, anon_sym_using, anon_sym_static_assert, [20351] = 5, ACTIONS(3), 1, sym_comment, STATE(1626), 1, aux_sym_sized_type_specifier_repeat1, ACTIONS(3275), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(3271), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, sym_primitive_type, anon_sym_DOT, sym_identifier, ACTIONS(3273), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [20414] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3278), 1, sym_identifier, ACTIONS(3286), 1, sym_primitive_type, STATE(1626), 1, aux_sym_sized_type_specifier_repeat1, ACTIONS(3284), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(3282), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3280), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [20481] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3077), 2, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(3070), 3, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, ACTIONS(3073), 4, anon_sym_TILDE, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, ACTIONS(3075), 7, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3068), 17, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(3066), 18, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [20548] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(931), 1, anon_sym_template, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(1353), 1, anon_sym_enum, ACTIONS(1355), 1, anon_sym_class, ACTIONS(1357), 1, anon_sym_struct, ACTIONS(1359), 1, anon_sym_union, ACTIONS(1361), 1, anon_sym_typename, ACTIONS(2651), 1, sym_identifier, ACTIONS(2661), 1, anon_sym_COLON_COLON, STATE(2092), 1, sym_template_type, STATE(2169), 1, sym__type_specifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(4015), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(2329), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [20653] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3077), 2, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(3073), 4, anon_sym_TILDE, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, ACTIONS(3070), 6, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, ACTIONS(3075), 7, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3068), 13, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(3066), 19, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [20720] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(931), 1, anon_sym_template, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(2410), 1, anon_sym_enum, ACTIONS(2412), 1, anon_sym_class, ACTIONS(2414), 1, anon_sym_struct, ACTIONS(2416), 1, anon_sym_union, ACTIONS(2418), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2302), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3021), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(2408), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(2329), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [20825] = 27, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(2486), 1, anon_sym_LPAREN2, ACTIONS(2488), 1, anon_sym_STAR, ACTIONS(2490), 1, anon_sym_AMP_AMP, ACTIONS(2492), 1, anon_sym_AMP, ACTIONS(3096), 1, sym_identifier, ACTIONS(3235), 1, anon_sym_RPAREN, ACTIONS(3245), 1, anon_sym_LBRACK, ACTIONS(3288), 1, anon_sym_COLON_COLON, STATE(3264), 1, sym_parameter_list, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3666), 1, sym__scope_resolution, STATE(3962), 1, sym__declarator, STATE(4067), 1, sym__abstract_declarator, STATE(5398), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(1871), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(1878), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [20932] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3077), 2, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(3073), 3, anon_sym_TILDE, anon_sym_COLON_COLON, anon_sym_LBRACE, ACTIONS(3070), 5, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, ACTIONS(3075), 7, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3068), 16, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(3066), 18, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [20999] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(63), 1, anon_sym_enum, ACTIONS(65), 1, anon_sym_class, ACTIONS(67), 1, anon_sym_struct, ACTIONS(69), 1, anon_sym_union, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(113), 1, anon_sym_typename, ACTIONS(931), 1, anon_sym_template, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, STATE(2092), 1, sym_template_type, STATE(2169), 1, sym__type_specifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(2329), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [21104] = 26, ACTIONS(3), 1, sym_comment, ACTIONS(39), 1, anon_sym___attribute__, ACTIONS(45), 1, anon_sym___declspec, ACTIONS(107), 1, anon_sym_virtual, ACTIONS(931), 1, anon_sym_template, ACTIONS(1349), 1, anon_sym_LBRACK_LBRACK, ACTIONS(1397), 1, anon_sym_enum, ACTIONS(1399), 1, anon_sym_class, ACTIONS(1401), 1, anon_sym_struct, ACTIONS(1403), 1, anon_sym_union, ACTIONS(1405), 1, anon_sym_decltype, ACTIONS(1409), 1, anon_sym_typename, ACTIONS(2651), 1, sym_identifier, ACTIONS(3290), 1, anon_sym_COLON_COLON, STATE(2092), 1, sym_template_type, STATE(2510), 1, sym__type_specifier, STATE(2555), 1, sym_qualified_type_identifier, STATE(2641), 1, aux_sym_sized_type_specifier_repeat1, STATE(4035), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1395), 2, sym_primitive_type, sym_auto, ACTIONS(1393), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(55), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2577), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, STATE(2329), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [21209] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3008), 18, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_const, anon_sym_COLON, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3010), 32, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [21267] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3044), 18, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_const, anon_sym_COLON, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3046), 32, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [21325] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3048), 18, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_const, anon_sym_COLON, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3050), 32, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [21383] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3018), 18, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_const, anon_sym_COLON, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3020), 32, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [21441] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3026), 18, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_const, anon_sym_COLON, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3028), 32, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [21499] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3294), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, sym_literal_suffix, ACTIONS(3292), 35, sym_raw_string_literal, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [21557] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3032), 18, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_const, anon_sym_COLON, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3034), 32, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [21615] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3040), 18, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_const, anon_sym_COLON, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3042), 32, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [21673] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3298), 13, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3296), 37, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_explicit, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [21731] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3302), 13, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3300), 37, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_explicit, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [21789] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3306), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, sym_literal_suffix, ACTIONS(3304), 35, sym_raw_string_literal, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [21847] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(2953), 1, anon_sym_const, ACTIONS(2968), 1, anon_sym_AMP_AMP, ACTIONS(2971), 1, anon_sym_LT, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(2981), 1, anon_sym_LBRACK, ACTIONS(2985), 1, anon_sym_EQ, ACTIONS(3308), 1, anon_sym_LBRACK_LBRACK, STATE(2257), 1, sym_template_argument_list, ACTIONS(2957), 2, anon_sym_RPAREN, anon_sym_LPAREN2, ACTIONS(2965), 2, anon_sym_STAR, anon_sym_AMP, ACTIONS(2961), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(2963), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2955), 11, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [21930] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1747), 1, sym_field_declaration_list, STATE(4180), 1, sym_virtual_specifier, STATE(4660), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3312), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3310), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [21999] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1762), 1, sym_field_declaration_list, STATE(4368), 1, sym_virtual_specifier, STATE(4860), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3322), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3320), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [22068] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1755), 1, sym_field_declaration_list, STATE(4141), 1, sym_virtual_specifier, STATE(4627), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3326), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3324), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [22137] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1760), 1, sym_field_declaration_list, STATE(4181), 1, sym_virtual_specifier, STATE(4655), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3330), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3328), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [22206] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2991), 1, anon_sym_const, ACTIONS(3005), 1, anon_sym_LT, STATE(1658), 1, sym_template_argument_list, ACTIONS(2995), 3, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, ACTIONS(3002), 3, anon_sym_STAR, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(2998), 6, anon_sym_LBRACE, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(3000), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(2993), 22, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LBRACK_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [22277] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1731), 1, sym_field_declaration_list, STATE(4279), 1, sym_virtual_specifier, STATE(4851), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3334), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3332), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [22346] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1800), 1, sym_field_declaration_list, STATE(4289), 1, sym_virtual_specifier, STATE(4855), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3338), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3336), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [22415] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1743), 1, sym_field_declaration_list, STATE(4238), 1, sym_virtual_specifier, STATE(4771), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3342), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3340), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [22484] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1791), 1, sym_field_declaration_list, STATE(4232), 1, sym_virtual_specifier, STATE(4757), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3346), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3344), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [22553] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1794), 1, sym_field_declaration_list, STATE(4224), 1, sym_virtual_specifier, STATE(4736), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3350), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3348), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [22622] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3066), 1, anon_sym_const, ACTIONS(3070), 3, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, ACTIONS(3077), 3, anon_sym_STAR, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(3073), 7, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(3075), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3068), 22, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LBRACK_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [22686] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2991), 1, anon_sym_const, ACTIONS(3352), 1, anon_sym_LT, STATE(1675), 1, sym_template_argument_list, ACTIONS(3002), 2, anon_sym_STAR, anon_sym_AMP, ACTIONS(2995), 4, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_LBRACK, ACTIONS(2998), 6, anon_sym_LBRACE, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(3000), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(2993), 21, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [22756] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(3358), 1, sym_raw_string_literal, STATE(1660), 2, sym_string_literal, aux_sym_concatenated_string_repeat1, ACTIONS(3355), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, ACTIONS(3225), 17, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, sym_literal_suffix, ACTIONS(3223), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [22818] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(2953), 1, anon_sym_const, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(3361), 1, anon_sym_LT, STATE(2370), 1, sym_template_argument_list, ACTIONS(2965), 2, anon_sym_STAR, anon_sym_AMP, ACTIONS(3364), 2, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(2961), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(2968), 6, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_LBRACK, anon_sym_GT2, ACTIONS(2955), 8, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(3366), 9, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2963), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, [22894] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3368), 1, anon_sym_LT, STATE(1671), 1, sym_template_argument_list, ACTIONS(2991), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_COLON, anon_sym_DOT, ACTIONS(2998), 31, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [22956] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3373), 1, anon_sym_LT, STATE(1671), 1, sym_template_argument_list, ACTIONS(3371), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_COLON, anon_sym_DOT, ACTIONS(2979), 31, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [23018] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(3375), 1, sym_raw_string_literal, STATE(1660), 2, sym_string_literal, aux_sym_concatenated_string_repeat1, ACTIONS(2258), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, ACTIONS(3253), 17, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, sym_literal_suffix, ACTIONS(3251), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [23080] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(2953), 1, anon_sym_const, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(2985), 1, anon_sym_EQ, ACTIONS(3377), 1, anon_sym_LT, STATE(2363), 1, sym_template_argument_list, ACTIONS(2965), 2, anon_sym_STAR, anon_sym_AMP, ACTIONS(2968), 4, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_LBRACK, ACTIONS(2961), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(2963), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2955), 11, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [23156] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2991), 1, anon_sym_const, ACTIONS(3380), 1, anon_sym_LT, STATE(1678), 1, sym_template_argument_list, ACTIONS(3002), 2, anon_sym_STAR, anon_sym_AMP, ACTIONS(2995), 6, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_LBRACK, anon_sym_GT2, ACTIONS(2998), 6, anon_sym_LBRACE, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(3000), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(2993), 17, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [23226] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3383), 1, sym_literal_suffix, ACTIONS(3385), 1, sym_raw_string_literal, STATE(1664), 2, sym_string_literal, aux_sym_concatenated_string_repeat1, ACTIONS(2258), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, ACTIONS(2963), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(2955), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [23290] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(1960), 1, anon_sym_LBRACE, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3393), 1, anon_sym_LBRACK, STATE(1694), 1, sym_new_declarator, STATE(1882), 2, sym_argument_list, sym_initializer_list, ACTIONS(3391), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3387), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [23355] = 5, ACTIONS(3), 1, sym_comment, STATE(1669), 1, aux_sym_sized_type_specifier_repeat1, ACTIONS(3395), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(3271), 18, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, sym_primitive_type, anon_sym_GT_GT_EQ, anon_sym_DOT, sym_identifier, ACTIONS(3273), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [23414] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3400), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_COLON, anon_sym_DOT, ACTIONS(3398), 32, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [23469] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3066), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_COLON, anon_sym_DOT, ACTIONS(3073), 32, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [23524] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(1960), 1, anon_sym_LBRACE, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3393), 1, anon_sym_LBRACK, STATE(1684), 1, sym_new_declarator, STATE(1917), 2, sym_argument_list, sym_initializer_list, ACTIONS(3404), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3402), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [23589] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(1960), 1, anon_sym_LBRACE, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3393), 1, anon_sym_LBRACK, STATE(1686), 1, sym_new_declarator, STATE(1843), 2, sym_argument_list, sym_initializer_list, ACTIONS(3408), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3406), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [23654] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3412), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_COLON, anon_sym_DOT, ACTIONS(3410), 31, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [23711] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3066), 1, anon_sym_const, ACTIONS(3077), 2, anon_sym_STAR, anon_sym_AMP, ACTIONS(3070), 4, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_LBRACK, ACTIONS(3073), 7, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(3075), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3068), 21, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [23774] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3418), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_COLON, anon_sym_DOT, ACTIONS(3416), 31, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [23831] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(1960), 1, anon_sym_LBRACE, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3393), 1, anon_sym_LBRACK, STATE(1689), 1, sym_new_declarator, STATE(1868), 2, sym_argument_list, sym_initializer_list, ACTIONS(3422), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3420), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [23896] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3066), 1, anon_sym_const, ACTIONS(3077), 2, anon_sym_STAR, anon_sym_AMP, ACTIONS(3070), 6, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_LBRACK, anon_sym_GT2, ACTIONS(3073), 7, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(3075), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3068), 17, anon_sym_PIPE_PIPE, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [23959] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3418), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_COLON, anon_sym_DOT, ACTIONS(3416), 31, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [24016] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3424), 1, sym_identifier, ACTIONS(3428), 1, sym_primitive_type, STATE(1669), 1, aux_sym_sized_type_specifier_repeat1, ACTIONS(3426), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(3282), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3280), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [24079] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2053), 1, sym_field_declaration_list, STATE(4231), 1, sym_virtual_specifier, STATE(4753), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3312), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3310), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [24145] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2030), 1, sym_field_declaration_list, STATE(4138), 1, sym_virtual_specifier, STATE(4795), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3346), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3344), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [24211] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3434), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3432), 40, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym___cdecl, anon_sym___clrcall, anon_sym___stdcall, anon_sym___fastcall, anon_sym___thiscall, anon_sym___vectorcall, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_using, [24265] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(1960), 1, anon_sym_LBRACE, ACTIONS(3389), 1, anon_sym_LPAREN2, STATE(1867), 2, sym_argument_list, sym_initializer_list, ACTIONS(3438), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3436), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [24325] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3440), 22, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, anon_sym_DOT, sym_identifier, anon_sym_decltype, sym_auto, anon_sym_typename, anon_sym_template, ACTIONS(3442), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_RBRACK_RBRACK, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [24379] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(1960), 1, anon_sym_LBRACE, ACTIONS(3389), 1, anon_sym_LPAREN2, STATE(1881), 2, sym_argument_list, sym_initializer_list, ACTIONS(3446), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3444), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [24439] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3448), 22, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, anon_sym_DOT, sym_identifier, anon_sym_decltype, sym_auto, anon_sym_typename, anon_sym_template, ACTIONS(3450), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_RBRACK_RBRACK, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [24493] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, STATE(2200), 1, sym_template_argument_list, ACTIONS(3454), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_COLON, anon_sym_DOT, ACTIONS(3452), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [24551] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(1960), 1, anon_sym_LBRACE, ACTIONS(3389), 1, anon_sym_LPAREN2, STATE(1904), 2, sym_argument_list, sym_initializer_list, ACTIONS(3458), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3456), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [24611] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3373), 1, anon_sym_LT, STATE(1671), 1, sym_template_argument_list, ACTIONS(2953), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_COLON, anon_sym_DOT, ACTIONS(2961), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [24671] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(3460), 1, anon_sym_LT, STATE(1715), 1, sym_template_argument_list, ACTIONS(2963), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_COLON, anon_sym_DOT, ACTIONS(2955), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [24733] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3463), 1, sym_identifier, ACTIONS(3467), 1, sym_primitive_type, STATE(1697), 1, aux_sym_sized_type_specifier_repeat1, ACTIONS(3465), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(3282), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DOT, ACTIONS(3280), 25, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [24795] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3294), 17, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, sym_literal_suffix, ACTIONS(3292), 29, sym_raw_string_literal, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, anon_sym_GT2, [24849] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(1960), 1, anon_sym_LBRACE, ACTIONS(3389), 1, anon_sym_LPAREN2, STATE(1891), 2, sym_argument_list, sym_initializer_list, ACTIONS(3471), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3469), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [24909] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(3477), 1, anon_sym_COLON, STATE(1714), 1, sym__enum_base_clause, STATE(1771), 1, sym_enumerator_list, ACTIONS(3475), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3473), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [24969] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2016), 1, sym_field_declaration_list, STATE(4299), 1, sym_virtual_specifier, STATE(4869), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3322), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3320), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [25035] = 5, ACTIONS(3), 1, sym_comment, STATE(1697), 1, aux_sym_sized_type_specifier_repeat1, ACTIONS(3479), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(3271), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_primitive_type, anon_sym_DOT, sym_identifier, ACTIONS(3273), 25, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [25093] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3484), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3482), 40, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym___cdecl, anon_sym___clrcall, anon_sym___stdcall, anon_sym___fastcall, anon_sym___thiscall, anon_sym___vectorcall, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_using, [25147] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2027), 1, sym_field_declaration_list, STATE(4267), 1, sym_virtual_specifier, STATE(4822), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3342), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3340), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [25213] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2049), 1, sym_field_declaration_list, STATE(4233), 1, sym_virtual_specifier, STATE(4767), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3326), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3324), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [25279] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3418), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3416), 32, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [25333] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3306), 17, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, sym_literal_suffix, ACTIONS(3304), 29, sym_raw_string_literal, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, anon_sym_GT2, [25387] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2043), 1, sym_field_declaration_list, STATE(4247), 1, sym_virtual_specifier, STATE(4777), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3330), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3328), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [25453] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3486), 22, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, anon_sym_DOT, sym_identifier, anon_sym_decltype, sym_auto, anon_sym_typename, anon_sym_template, ACTIONS(3488), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_RBRACK_RBRACK, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [25507] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(3477), 1, anon_sym_COLON, STATE(1716), 1, sym__enum_base_clause, STATE(1797), 1, sym_enumerator_list, ACTIONS(3492), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3490), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [25567] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2020), 1, sym_field_declaration_list, STATE(4281), 1, sym_virtual_specifier, STATE(4854), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3334), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3332), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [25633] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2018), 1, sym_field_declaration_list, STATE(4292), 1, sym_virtual_specifier, STATE(4859), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3338), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3336), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [25699] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3496), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3494), 40, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym___cdecl, anon_sym___clrcall, anon_sym___stdcall, anon_sym___fastcall, anon_sym___thiscall, anon_sym___vectorcall, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, anon_sym_using, [25753] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2998), 1, anon_sym_LBRACE, ACTIONS(3352), 1, anon_sym_LT, STATE(1715), 1, sym_template_argument_list, ACTIONS(3000), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_COLON, anon_sym_DOT, ACTIONS(2993), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [25815] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2033), 1, sym_field_declaration_list, STATE(4260), 1, sym_virtual_specifier, STATE(4803), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3350), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3348), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [25881] = 5, ACTIONS(3), 1, sym_comment, STATE(1334), 1, sym_string_literal, ACTIONS(3502), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, ACTIONS(3500), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3498), 33, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, [25938] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3504), 1, anon_sym_LT, STATE(1801), 1, sym_template_argument_list, ACTIONS(2991), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_COLON, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(2998), 26, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [25997] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2998), 1, anon_sym_LBRACE, ACTIONS(3005), 1, anon_sym_LT, STATE(1730), 1, sym_template_argument_list, ACTIONS(3000), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACK, anon_sym_EQ, anon_sym_DOT, ACTIONS(2993), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [26058] = 4, ACTIONS(3), 1, sym_comment, STATE(1804), 1, sym_enumerator_list, ACTIONS(3509), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3507), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [26113] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3073), 2, anon_sym_COLON_COLON, anon_sym_LBRACE, ACTIONS(3075), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_COLON, anon_sym_DOT, ACTIONS(3068), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [26168] = 4, ACTIONS(3), 1, sym_comment, STATE(1782), 1, sym_enumerator_list, ACTIONS(3513), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3511), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [26223] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3517), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_COLON, anon_sym_DOT, ACTIONS(3515), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [26278] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(3460), 1, anon_sym_LT, ACTIONS(3521), 1, anon_sym_LBRACK, STATE(1715), 1, sym_template_argument_list, ACTIONS(3519), 3, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, ACTIONS(2963), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(2955), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [26343] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(2985), 1, anon_sym_EQ, ACTIONS(3377), 1, anon_sym_LT, ACTIONS(3521), 1, anon_sym_LBRACK, STATE(2530), 1, sym_template_argument_list, ACTIONS(3519), 3, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2963), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2955), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [26412] = 5, ACTIONS(3), 1, sym_comment, STATE(1345), 1, sym_string_literal, ACTIONS(3502), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, ACTIONS(3500), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3498), 33, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, [26469] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3523), 1, anon_sym_LT, STATE(1801), 1, sym_template_argument_list, ACTIONS(3371), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_COLON, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(2979), 26, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [26528] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(3308), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3528), 1, anon_sym_LT, ACTIONS(3531), 1, anon_sym_LBRACK, STATE(1730), 1, sym_template_argument_list, ACTIONS(3525), 2, anon_sym_RPAREN, anon_sym_LPAREN2, ACTIONS(2963), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(2955), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [26595] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3393), 1, anon_sym_LBRACK, STATE(1805), 1, sym_new_declarator, ACTIONS(3536), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3534), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [26652] = 5, ACTIONS(3), 1, sym_comment, STATE(1331), 1, sym_string_literal, ACTIONS(3502), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, ACTIONS(3500), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3498), 33, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, [26709] = 5, ACTIONS(3), 1, sym_comment, STATE(1332), 1, sym_string_literal, ACTIONS(3502), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, ACTIONS(3500), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3498), 33, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, [26766] = 5, ACTIONS(3), 1, sym_comment, STATE(1726), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(3542), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(3538), 14, anon_sym_DASH, anon_sym_PLUS, sym_primitive_type, anon_sym_sizeof, sym_true, sym_false, sym_null, sym_identifier, anon_sym_template, anon_sym_delete, anon_sym_co_await, anon_sym_new, sym_this, sym_nullptr, ACTIONS(3540), 22, sym_raw_string_literal, anon_sym_LPAREN2, anon_sym_BANG, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, sym_number_literal, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [26822] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3547), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3545), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [26874] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3551), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3549), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [26926] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3555), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3553), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [26978] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3073), 2, anon_sym_COLON_COLON, anon_sym_LBRACE, ACTIONS(3075), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACK, anon_sym_EQ, anon_sym_DOT, ACTIONS(3068), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [27032] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3559), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3557), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [27084] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3563), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3561), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [27136] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3565), 1, sym_literal_suffix, ACTIONS(2963), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(2955), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [27190] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3569), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3567), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [27242] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3573), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3571), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, sym_literal_suffix, [27294] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3577), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3575), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [27346] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3581), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3579), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [27398] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3585), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3583), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [27450] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3589), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3587), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [27502] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3593), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3591), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [27554] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3597), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3595), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [27606] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3601), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3599), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [27658] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3605), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3603), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [27710] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3609), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3607), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [27762] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3613), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3611), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [27814] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3617), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3615), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [27866] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3621), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3619), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [27918] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2220), 1, sym_field_declaration_list, STATE(4248), 1, sym_virtual_specifier, STATE(4905), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3350), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3348), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [27982] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3627), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3625), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [28034] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3631), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3629), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [28086] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3635), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3633), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [28138] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3639), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3637), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [28190] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3643), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3641), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [28242] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3517), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3515), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [28294] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3647), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3645), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [28346] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3651), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3649), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [28398] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3655), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3653), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [28450] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3659), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3657), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [28502] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3412), 17, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_COLON, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3410), 26, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [28556] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3663), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3661), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [28608] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3667), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3665), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [28660] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3671), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3669), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [28712] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3675), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3673), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [28764] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3679), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3677), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [28816] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3683), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3681), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [28868] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(2985), 1, anon_sym_EQ, ACTIONS(3377), 1, anon_sym_LT, STATE(2530), 1, sym_template_argument_list, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2963), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2955), 17, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [28932] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2183), 1, sym_field_declaration_list, STATE(4236), 1, sym_virtual_specifier, STATE(4872), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3342), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3340), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [28996] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3687), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3685), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [29048] = 5, ACTIONS(3), 1, sym_comment, STATE(1769), 1, aux_sym_sized_type_specifier_repeat1, ACTIONS(3689), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(3273), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3271), 25, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_primitive_type, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [29104] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3517), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3515), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [29156] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3694), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3692), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [29208] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3698), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3696), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [29260] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2130), 1, sym_field_declaration_list, STATE(4190), 1, sym_virtual_specifier, STATE(4801), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3322), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3320), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [29324] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3702), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3700), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [29376] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3706), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3704), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [29428] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2142), 1, sym_field_declaration_list, STATE(4196), 1, sym_virtual_specifier, STATE(4815), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3338), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3336), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [29492] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3710), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3708), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [29544] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3714), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3712), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [29596] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3718), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3716), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [29648] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(2486), 1, anon_sym_LPAREN2, ACTIONS(3233), 1, sym_identifier, ACTIONS(3237), 1, anon_sym_STAR, ACTIONS(3239), 1, anon_sym_AMP_AMP, ACTIONS(3241), 1, anon_sym_AMP, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3245), 1, anon_sym_LBRACK, STATE(3264), 1, sym_parameter_list, STATE(3672), 1, sym__scope_resolution, STATE(3824), 1, sym__declarator, STATE(4105), 1, sym__abstract_declarator, STATE(5456), 1, sym_ms_based_modifier, ACTIONS(3720), 2, anon_sym_COMMA, anon_sym_RPAREN, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [29740] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2119), 1, sym_field_declaration_list, STATE(4332), 1, sym_virtual_specifier, STATE(5030), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3312), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3310), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [29804] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3724), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3722), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [29856] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2114), 1, sym_field_declaration_list, STATE(4320), 1, sym_virtual_specifier, STATE(5004), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3326), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3324), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [29920] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2101), 1, sym_field_declaration_list, STATE(4311), 1, sym_virtual_specifier, STATE(4993), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3330), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3328), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [29984] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2170), 1, sym_field_declaration_list, STATE(4200), 1, sym_virtual_specifier, STATE(4833), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3334), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3332), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [30048] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3728), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3726), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [30100] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3732), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3730), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [30152] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3736), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3734), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [30204] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2224), 1, sym_field_declaration_list, STATE(4243), 1, sym_virtual_specifier, STATE(4888), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3346), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3344), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [30268] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3740), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3738), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [30320] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3744), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3742), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [30372] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3748), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3746), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [30424] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3752), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3750), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [30476] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3756), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3754), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [30528] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3760), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3758), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [30580] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3766), 1, anon_sym_LBRACK_RBRACK, ACTIONS(3764), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACK, anon_sym_EQ, anon_sym_DOT, ACTIONS(3762), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [30634] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3770), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3768), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [30686] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3774), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3772), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [30738] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3778), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3776), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [30790] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3782), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3780), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [30842] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3066), 17, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_COLON, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3073), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [30894] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3400), 17, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_COLON, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3398), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [30946] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3786), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3784), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [30998] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3790), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3788), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [31050] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3794), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3792), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [31102] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3798), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3796), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [31154] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(2486), 1, anon_sym_LPAREN2, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3245), 1, anon_sym_LBRACK, ACTIONS(3257), 1, anon_sym_STAR, ACTIONS(3259), 1, anon_sym_AMP_AMP, ACTIONS(3261), 1, anon_sym_AMP, STATE(3273), 1, sym_parameter_list, STATE(3672), 1, sym__scope_resolution, STATE(3824), 1, sym__declarator, STATE(4064), 1, sym__abstract_declarator, STATE(5456), 1, sym_ms_based_modifier, ACTIONS(3720), 2, anon_sym_COMMA, anon_sym_GT2, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [31246] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3418), 17, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_COLON, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3416), 26, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [31300] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3418), 17, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_COLON, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3416), 26, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [31354] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3802), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3800), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [31406] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3806), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3804), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [31458] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3814), 1, anon_sym_AMP_AMP, ACTIONS(3816), 1, anon_sym_PIPE, ACTIONS(3818), 1, anon_sym_CARET, ACTIONS(3820), 1, anon_sym_AMP, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3832), 1, anon_sym_EQ, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3810), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(3822), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(3824), 2, anon_sym_GT, anon_sym_LT, ACTIONS(3826), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(3828), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3812), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3808), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [31541] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3814), 1, anon_sym_AMP_AMP, ACTIONS(3816), 1, anon_sym_PIPE, ACTIONS(3818), 1, anon_sym_CARET, ACTIONS(3820), 1, anon_sym_AMP, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(3840), 1, anon_sym_DOT_DOT_DOT, ACTIONS(3844), 1, anon_sym_PIPE_PIPE, ACTIONS(3846), 1, anon_sym_EQ, ACTIONS(3848), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(3810), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(3822), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(3824), 2, anon_sym_GT, anon_sym_LT, ACTIONS(3826), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(3828), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3812), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3842), 15, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [31630] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3850), 1, anon_sym_STAR, ACTIONS(3852), 1, anon_sym_AMP_AMP, ACTIONS(3854), 1, anon_sym_AMP, ACTIONS(3856), 1, anon_sym_LBRACK, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3672), 1, sym__scope_resolution, STATE(3819), 1, sym__declarator, STATE(5456), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(1850), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(2391), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [31721] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3810), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(3828), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3812), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3832), 6, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_EQ, ACTIONS(3808), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [31790] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3810), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3812), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3832), 8, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, ACTIONS(3808), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [31857] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(2246), 1, anon_sym_LBRACE, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(3860), 1, anon_sym_LBRACK, STATE(1932), 1, sym_new_declarator, STATE(2087), 2, sym_argument_list, sym_initializer_list, ACTIONS(3391), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3387), 21, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [31918] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3864), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3862), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [31969] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3868), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3866), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [32020] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3872), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3870), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [32071] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3876), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3874), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [32122] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3868), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACK, anon_sym_EQ, anon_sym_DOT, ACTIONS(3866), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [32173] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3880), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3878), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [32224] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(2246), 1, anon_sym_LBRACE, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(3860), 1, anon_sym_LBRACK, STATE(1926), 1, sym_new_declarator, STATE(2091), 2, sym_argument_list, sym_initializer_list, ACTIONS(3408), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3406), 21, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [32285] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3884), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3882), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [32336] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3888), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, ACTIONS(3886), 25, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, [32397] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3814), 1, anon_sym_AMP_AMP, ACTIONS(3816), 1, anon_sym_PIPE, ACTIONS(3818), 1, anon_sym_CARET, ACTIONS(3820), 1, anon_sym_AMP, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(3844), 1, anon_sym_PIPE_PIPE, ACTIONS(3892), 1, anon_sym_EQ, STATE(1863), 1, sym_argument_list, ACTIONS(3810), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(3822), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(3824), 2, anon_sym_GT, anon_sym_LT, ACTIONS(3826), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(3828), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3812), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3890), 17, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [32482] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3894), 1, anon_sym_STAR, ACTIONS(3896), 1, anon_sym_AMP_AMP, ACTIONS(3898), 1, anon_sym_AMP, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3672), 1, sym__scope_resolution, STATE(3729), 1, sym__declarator, STATE(5088), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(2472), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(3191), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [32573] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3418), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3416), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [32624] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3764), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3762), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [32675] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3894), 1, anon_sym_STAR, ACTIONS(3896), 1, anon_sym_AMP_AMP, ACTIONS(3898), 1, anon_sym_AMP, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3672), 1, sym__scope_resolution, STATE(3739), 1, sym__declarator, STATE(5088), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(2408), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(3191), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [32766] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(2985), 1, anon_sym_EQ, ACTIONS(3022), 1, anon_sym_COLON, ACTIONS(3377), 1, anon_sym_LT, STATE(2530), 1, sym_template_argument_list, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2963), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2955), 15, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [32831] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3902), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, ACTIONS(3900), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [32894] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3906), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3904), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [32945] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3096), 1, sym_identifier, ACTIONS(3288), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3666), 1, sym__scope_resolution, STATE(3905), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(2481), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(3191), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [33036] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(2246), 1, anon_sym_LBRACE, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(3860), 1, anon_sym_LBRACK, STATE(1937), 1, sym_new_declarator, STATE(2076), 2, sym_argument_list, sym_initializer_list, ACTIONS(3422), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3420), 21, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [33097] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3810), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(3828), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3812), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3910), 6, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_EQ, ACTIONS(3908), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [33166] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3916), 1, anon_sym_LT, STATE(1909), 1, sym_template_argument_list, ACTIONS(3914), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3912), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [33221] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(2985), 1, anon_sym_EQ, ACTIONS(3036), 1, anon_sym_COLON, ACTIONS(3377), 1, anon_sym_LT, STATE(2530), 1, sym_template_argument_list, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2963), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2955), 15, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [33286] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3919), 1, sym_identifier, ACTIONS(3921), 1, anon_sym_STAR, ACTIONS(3923), 1, anon_sym_AMP_AMP, ACTIONS(3925), 1, anon_sym_AMP, ACTIONS(3927), 1, anon_sym_COLON_COLON, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3661), 1, sym__scope_resolution, STATE(4040), 1, sym__declarator, STATE(5190), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(1841), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(2421), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [33377] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3919), 1, sym_identifier, ACTIONS(3921), 1, anon_sym_STAR, ACTIONS(3923), 1, anon_sym_AMP_AMP, ACTIONS(3925), 1, anon_sym_AMP, ACTIONS(3927), 1, anon_sym_COLON_COLON, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3661), 1, sym__scope_resolution, STATE(4037), 1, sym__declarator, STATE(5190), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(2502), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(3191), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [33468] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3931), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3929), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [33519] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3935), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3933), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [33570] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3814), 1, anon_sym_AMP_AMP, ACTIONS(3816), 1, anon_sym_PIPE, ACTIONS(3818), 1, anon_sym_CARET, ACTIONS(3820), 1, anon_sym_AMP, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(3844), 1, anon_sym_PIPE_PIPE, ACTIONS(3939), 1, anon_sym_EQ, STATE(1863), 1, sym_argument_list, ACTIONS(3810), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(3822), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(3824), 2, anon_sym_GT, anon_sym_LT, ACTIONS(3826), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(3828), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3812), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3937), 17, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [33655] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(2985), 1, anon_sym_EQ, ACTIONS(3024), 1, anon_sym_COLON, ACTIONS(3377), 1, anon_sym_LT, STATE(2530), 1, sym_template_argument_list, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2963), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2955), 15, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [33720] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(2246), 1, anon_sym_LBRACE, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(3860), 1, anon_sym_LBRACK, STATE(1946), 1, sym_new_declarator, STATE(2166), 2, sym_argument_list, sym_initializer_list, ACTIONS(3404), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3402), 21, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [33781] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3941), 1, anon_sym_LBRACK_RBRACK, ACTIONS(3764), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACK, anon_sym_EQ, anon_sym_DOT, ACTIONS(3762), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [33834] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3486), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3488), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [33885] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3440), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3442), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [33936] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3850), 1, anon_sym_STAR, ACTIONS(3852), 1, anon_sym_AMP_AMP, ACTIONS(3854), 1, anon_sym_AMP, ACTIONS(3856), 1, anon_sym_LBRACK, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3672), 1, sym__scope_resolution, STATE(3824), 1, sym__declarator, STATE(5456), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(2395), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(3191), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [34027] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3850), 1, anon_sym_STAR, ACTIONS(3852), 1, anon_sym_AMP_AMP, ACTIONS(3854), 1, anon_sym_AMP, ACTIONS(3856), 1, anon_sym_LBRACK, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3672), 1, sym__scope_resolution, STATE(3825), 1, sym__declarator, STATE(5456), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(2392), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(3191), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [34118] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3894), 1, anon_sym_STAR, ACTIONS(3896), 1, anon_sym_AMP_AMP, ACTIONS(3898), 1, anon_sym_AMP, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3672), 1, sym__scope_resolution, STATE(3773), 1, sym__declarator, STATE(5088), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(1828), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(2493), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [34209] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(3377), 1, anon_sym_LT, ACTIONS(3943), 1, anon_sym_COMMA, ACTIONS(3946), 1, anon_sym_RBRACK, ACTIONS(3949), 1, anon_sym_EQ, STATE(2530), 1, sym_template_argument_list, STATE(4508), 1, aux_sym_structured_binding_declarator_repeat1, ACTIONS(3951), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2963), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2955), 13, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [34278] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3955), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, ACTIONS(3953), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [34341] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3850), 1, anon_sym_STAR, ACTIONS(3852), 1, anon_sym_AMP_AMP, ACTIONS(3854), 1, anon_sym_AMP, ACTIONS(3856), 1, anon_sym_LBRACK, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3672), 1, sym__scope_resolution, STATE(3824), 1, sym__declarator, STATE(5456), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(1851), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(2395), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [34432] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3672), 1, sym__scope_resolution, STATE(3800), 1, sym__declarator, STATE(5333), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(1886), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(2399), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [34523] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3000), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACK, anon_sym_EQ, anon_sym_DOT, ACTIONS(2993), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [34574] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3000), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACK, anon_sym_EQ, anon_sym_DOT, ACTIONS(2993), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [34625] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3000), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACK, anon_sym_EQ, anon_sym_DOT, ACTIONS(2993), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [34676] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3000), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACK, anon_sym_EQ, anon_sym_DOT, ACTIONS(2993), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [34727] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(2985), 1, anon_sym_EQ, ACTIONS(2987), 1, anon_sym_COLON, ACTIONS(3377), 1, anon_sym_LT, STATE(2530), 1, sym_template_argument_list, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2963), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2955), 15, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [34792] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3000), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACK, anon_sym_EQ, anon_sym_DOT, ACTIONS(2993), 28, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [34843] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3965), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3963), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [34894] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3969), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3967), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [34945] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3096), 1, sym_identifier, ACTIONS(3288), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3666), 1, sym__scope_resolution, STATE(3981), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(1835), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(2504), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [35036] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3814), 1, anon_sym_AMP_AMP, ACTIONS(3816), 1, anon_sym_PIPE, ACTIONS(3818), 1, anon_sym_CARET, ACTIONS(3820), 1, anon_sym_AMP, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(3844), 1, anon_sym_PIPE_PIPE, ACTIONS(3973), 1, anon_sym_EQ, STATE(1863), 1, sym_argument_list, ACTIONS(3810), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(3822), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(3824), 2, anon_sym_GT, anon_sym_LT, ACTIONS(3826), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(3828), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3812), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3971), 17, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [35121] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3977), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3975), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [35172] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3981), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3979), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [35223] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(3377), 1, anon_sym_LT, ACTIONS(3946), 1, anon_sym_RBRACK, ACTIONS(3949), 1, anon_sym_EQ, ACTIONS(3983), 1, anon_sym_COMMA, STATE(2530), 1, sym_template_argument_list, STATE(4508), 1, aux_sym_structured_binding_declarator_repeat1, ACTIONS(3951), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2963), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2955), 13, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [35292] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1749), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(1751), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [35343] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(2486), 1, anon_sym_LPAREN2, ACTIONS(2488), 1, anon_sym_STAR, ACTIONS(2490), 1, anon_sym_AMP_AMP, ACTIONS(2492), 1, anon_sym_AMP, ACTIONS(3096), 1, sym_identifier, ACTIONS(3245), 1, anon_sym_LBRACK, ACTIONS(3288), 1, anon_sym_COLON_COLON, ACTIONS(3720), 1, anon_sym_RPAREN, STATE(3264), 1, sym_parameter_list, STATE(3666), 1, sym__scope_resolution, STATE(3981), 1, sym__declarator, STATE(4105), 1, sym__abstract_declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [35434] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1756), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(1758), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [35485] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3987), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, ACTIONS(3985), 25, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, [35546] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3991), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, ACTIONS(3989), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [35609] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3995), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3993), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [35660] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3919), 1, sym_identifier, ACTIONS(3921), 1, anon_sym_STAR, ACTIONS(3923), 1, anon_sym_AMP_AMP, ACTIONS(3925), 1, anon_sym_AMP, ACTIONS(3927), 1, anon_sym_COLON_COLON, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3661), 1, sym__scope_resolution, STATE(4037), 1, sym__declarator, STATE(5190), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(1879), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(2502), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [35751] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3999), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3997), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [35802] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3096), 1, sym_identifier, ACTIONS(3288), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3666), 1, sym__scope_resolution, STATE(3981), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(2504), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(3191), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [35893] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3919), 1, sym_identifier, ACTIONS(3921), 1, anon_sym_STAR, ACTIONS(3923), 1, anon_sym_AMP_AMP, ACTIONS(3925), 1, anon_sym_AMP, ACTIONS(3927), 1, anon_sym_COLON_COLON, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3661), 1, sym__scope_resolution, STATE(4045), 1, sym__declarator, STATE(5190), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(2475), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(3191), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [35984] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3814), 1, anon_sym_AMP_AMP, ACTIONS(3816), 1, anon_sym_PIPE, ACTIONS(3818), 1, anon_sym_CARET, ACTIONS(3820), 1, anon_sym_AMP, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(3844), 1, anon_sym_PIPE_PIPE, ACTIONS(4003), 1, anon_sym_EQ, STATE(1863), 1, sym_argument_list, ACTIONS(3810), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(3822), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(3824), 2, anon_sym_GT, anon_sym_LT, ACTIONS(3826), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(3828), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3812), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(4001), 17, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [36069] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4007), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(4005), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [36120] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4011), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(4009), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [36171] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(2985), 1, anon_sym_EQ, ACTIONS(3030), 1, anon_sym_COLON, ACTIONS(3377), 1, anon_sym_LT, STATE(2530), 1, sym_template_argument_list, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2963), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2955), 15, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [36236] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(2985), 1, anon_sym_EQ, ACTIONS(3377), 1, anon_sym_LT, ACTIONS(4013), 1, anon_sym_COLON, STATE(2530), 1, sym_template_argument_list, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2963), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2955), 15, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [36301] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4015), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(1936), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [36352] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3672), 1, sym__scope_resolution, STATE(3803), 1, sym__declarator, STATE(5333), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(2409), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(3191), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [36443] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3448), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3450), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [36494] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3814), 1, anon_sym_AMP_AMP, ACTIONS(3816), 1, anon_sym_PIPE, ACTIONS(3818), 1, anon_sym_CARET, ACTIONS(3820), 1, anon_sym_AMP, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(3840), 1, anon_sym_DOT_DOT_DOT, ACTIONS(3844), 1, anon_sym_PIPE_PIPE, ACTIONS(4019), 1, anon_sym_EQ, STATE(1863), 1, sym_argument_list, ACTIONS(3810), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(3822), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(3824), 2, anon_sym_GT, anon_sym_LT, ACTIONS(3826), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(3828), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3812), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(4017), 16, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [36581] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3096), 1, sym_identifier, ACTIONS(3288), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3666), 1, sym__scope_resolution, STATE(3962), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(1878), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(2456), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [36672] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(4021), 1, anon_sym_COLON, STATE(1959), 1, sym__enum_base_clause, STATE(2023), 1, sym_enumerator_list, ACTIONS(3492), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3490), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [36729] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4025), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(4023), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [36780] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4029), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(4027), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [36831] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(4021), 1, anon_sym_COLON, STATE(1980), 1, sym__enum_base_clause, STATE(2012), 1, sym_enumerator_list, ACTIONS(3475), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3473), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [36888] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3000), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(2993), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [36939] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3418), 18, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym___based, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DOT, sym_identifier, anon_sym_final, anon_sym_override, ACTIONS(3416), 25, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [36990] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3000), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(2993), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [37041] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3820), 1, anon_sym_AMP, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3810), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(3822), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(3824), 2, anon_sym_GT, anon_sym_LT, ACTIONS(3826), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(3828), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3812), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3832), 3, anon_sym_PIPE, anon_sym_CARET, anon_sym_EQ, ACTIONS(3808), 19, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [37118] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3818), 1, anon_sym_CARET, ACTIONS(3820), 1, anon_sym_AMP, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3810), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(3822), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(3824), 2, anon_sym_GT, anon_sym_LT, ACTIONS(3826), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(3828), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3832), 2, anon_sym_PIPE, anon_sym_EQ, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3812), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3808), 19, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [37197] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3894), 1, anon_sym_STAR, ACTIONS(3896), 1, anon_sym_AMP_AMP, ACTIONS(3898), 1, anon_sym_AMP, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3672), 1, sym__scope_resolution, STATE(3729), 1, sym__declarator, STATE(5088), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(1831), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(2472), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [37288] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3672), 1, sym__scope_resolution, STATE(3800), 1, sym__declarator, STATE(5333), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(2399), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(3191), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [37379] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3000), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(2993), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [37430] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3000), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(2993), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [37481] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3672), 1, sym__scope_resolution, STATE(3794), 1, sym__declarator, STATE(5333), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(1900), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(2451), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [37572] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4033), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(4031), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [37623] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3000), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(2993), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [37674] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3816), 1, anon_sym_PIPE, ACTIONS(3818), 1, anon_sym_CARET, ACTIONS(3820), 1, anon_sym_AMP, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3832), 1, anon_sym_EQ, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3810), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(3822), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(3824), 2, anon_sym_GT, anon_sym_LT, ACTIONS(3826), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(3828), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3812), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3808), 19, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [37755] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2963), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(2955), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [37806] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3810), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(3822), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(3824), 2, anon_sym_GT, anon_sym_LT, ACTIONS(3826), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(3828), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3812), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3832), 4, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_EQ, ACTIONS(3808), 19, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [37881] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4037), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(4035), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [37932] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4041), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(4039), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [37983] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3810), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(3824), 2, anon_sym_GT, anon_sym_LT, ACTIONS(3826), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(3828), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3812), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3832), 4, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_EQ, ACTIONS(3808), 21, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [38056] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4045), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(4043), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [38107] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3832), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, ACTIONS(3808), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [38170] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4049), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(4047), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [38221] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3812), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3832), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, ACTIONS(3808), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [38286] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3965), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3963), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [38337] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4053), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(4051), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [38388] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2963), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(2955), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [38439] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3521), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3519), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [38490] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4057), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(4055), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [38541] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4065), 1, anon_sym_DQUOTE_DQUOTE, ACTIONS(4063), 2, anon_sym_delete, anon_sym_new, ACTIONS(4061), 15, anon_sym_BANG, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DASH_GT, ACTIONS(4059), 24, anon_sym_COMMA, anon_sym_TILDE, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_co_await, anon_sym_DASH_GT_STAR, anon_sym_LPAREN_RPAREN, anon_sym_LBRACK_RBRACK, [38595] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(3361), 1, anon_sym_LT, STATE(2713), 1, sym_template_argument_list, ACTIONS(3364), 2, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(3366), 9, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2963), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2955), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [38657] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4029), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACK, anon_sym_EQ, anon_sym_DOT, ACTIONS(4027), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [38707] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(3308), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3531), 1, anon_sym_LBRACK, ACTIONS(3525), 2, anon_sym_RPAREN, anon_sym_LPAREN2, ACTIONS(2963), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(2955), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [38763] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4073), 1, anon_sym_DQUOTE_DQUOTE, ACTIONS(4071), 2, anon_sym_delete, anon_sym_new, ACTIONS(4069), 15, anon_sym_BANG, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DASH_GT, ACTIONS(4067), 24, anon_sym_COMMA, anon_sym_TILDE, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_co_await, anon_sym_DASH_GT_STAR, anon_sym_LPAREN_RPAREN, anon_sym_LBRACK_RBRACK, [38817] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2246), 1, anon_sym_LBRACE, ACTIONS(3858), 1, anon_sym_LPAREN2, STATE(2086), 2, sym_argument_list, sym_initializer_list, ACTIONS(3446), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3444), 22, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [38873] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3048), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3050), 32, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [38923] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3044), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3046), 32, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [38973] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3040), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3042), 32, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [39023] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3523), 1, anon_sym_LT, STATE(1801), 1, sym_template_argument_list, ACTIONS(2953), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(2961), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [39079] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, STATE(2200), 1, sym_template_argument_list, ACTIONS(3454), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3452), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [39133] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2246), 1, anon_sym_LBRACE, ACTIONS(3858), 1, anon_sym_LPAREN2, STATE(2103), 2, sym_argument_list, sym_initializer_list, ACTIONS(3471), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3469), 22, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [39189] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3418), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3416), 31, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [39241] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3066), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3073), 32, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [39291] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3032), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3034), 32, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [39341] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3521), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACK, anon_sym_EQ, anon_sym_DOT, ACTIONS(3519), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [39391] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2246), 1, anon_sym_LBRACE, ACTIONS(3858), 1, anon_sym_LPAREN2, STATE(2096), 2, sym_argument_list, sym_initializer_list, ACTIONS(3458), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3456), 22, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [39447] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(4075), 1, anon_sym_LT, STATE(1960), 1, sym_template_argument_list, ACTIONS(2963), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(2955), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [39505] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(3308), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3531), 1, anon_sym_LBRACK, ACTIONS(3525), 2, anon_sym_RPAREN, anon_sym_LPAREN2, ACTIONS(2963), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(2955), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [39561] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2998), 1, anon_sym_LBRACE, ACTIONS(3380), 1, anon_sym_LT, STATE(1960), 1, sym_template_argument_list, ACTIONS(3000), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(2993), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [39619] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3400), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3398), 32, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [39669] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3300), 20, anon_sym_DASH, anon_sym_PLUS, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_primitive_type, anon_sym_sizeof, sym_true, sym_false, sym_null, sym_identifier, anon_sym_template, anon_sym_delete, anon_sym_co_await, anon_sym_new, sym_this, sym_nullptr, ACTIONS(3302), 22, sym_raw_string_literal, anon_sym_LPAREN2, anon_sym_BANG, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, sym_number_literal, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [39719] = 5, ACTIONS(3), 1, sym_comment, STATE(1943), 1, aux_sym_sized_type_specifier_repeat1, ACTIONS(4078), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(3271), 18, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_primitive_type, anon_sym_DOT, sym_identifier, ACTIONS(3273), 19, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [39773] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2430), 1, anon_sym_DQUOTE_DQUOTE, ACTIONS(4081), 2, anon_sym_delete, anon_sym_new, ACTIONS(2426), 15, anon_sym_BANG, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DASH_GT, ACTIONS(2424), 24, anon_sym_COMMA, anon_sym_TILDE, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_co_await, anon_sym_DASH_GT_STAR, anon_sym_LPAREN_RPAREN, anon_sym_LBRACK_RBRACK, [39827] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3418), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3416), 31, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [39879] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2246), 1, anon_sym_LBRACE, ACTIONS(3858), 1, anon_sym_LPAREN2, STATE(2079), 2, sym_argument_list, sym_initializer_list, ACTIONS(3438), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3436), 22, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [39935] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3412), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3410), 31, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [39987] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3764), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACK, anon_sym_EQ, anon_sym_DOT, ACTIONS(3762), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [40037] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(2985), 1, anon_sym_EQ, ACTIONS(3308), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3531), 1, anon_sym_LBRACK, ACTIONS(3525), 2, anon_sym_RPAREN, anon_sym_LPAREN2, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2963), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2955), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [40097] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(3377), 1, anon_sym_LT, ACTIONS(3949), 1, anon_sym_EQ, STATE(2530), 1, sym_template_argument_list, ACTIONS(3951), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2963), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2955), 15, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [40159] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3008), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3010), 32, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [40209] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2422), 1, anon_sym_DQUOTE_DQUOTE, ACTIONS(4083), 2, anon_sym_delete, anon_sym_new, ACTIONS(2404), 15, anon_sym_BANG, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DASH_GT, ACTIONS(2402), 24, anon_sym_COMMA, anon_sym_TILDE, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_co_await, anon_sym_DASH_GT_STAR, anon_sym_LPAREN_RPAREN, anon_sym_LBRACK_RBRACK, [40263] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4085), 1, sym_identifier, ACTIONS(4089), 1, sym_primitive_type, STATE(1943), 1, aux_sym_sized_type_specifier_repeat1, ACTIONS(4087), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(3282), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DOT, ACTIONS(3280), 19, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [40321] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3018), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3020), 32, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [40371] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3026), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3028), 32, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [40421] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2459), 1, sym_field_declaration_list, STATE(4328), 1, sym_virtual_specifier, STATE(5022), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3350), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3348), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [40482] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2438), 1, sym_field_declaration_list, STATE(4356), 1, sym_virtual_specifier, STATE(5029), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3312), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3310), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [40543] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(4093), 1, sym_raw_string_literal, STATE(1961), 2, sym_string_literal, aux_sym_concatenated_string_repeat1, ACTIONS(101), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, ACTIONS(3253), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, sym_literal_suffix, ACTIONS(3251), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [40598] = 4, ACTIONS(3), 1, sym_comment, STATE(2039), 1, sym_enumerator_list, ACTIONS(3513), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3511), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [40649] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3073), 2, anon_sym_COLON_COLON, anon_sym_LBRACE, ACTIONS(3075), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3068), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [40700] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(4098), 1, sym_raw_string_literal, STATE(1961), 2, sym_string_literal, aux_sym_concatenated_string_repeat1, ACTIONS(4095), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, ACTIONS(3225), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, sym_literal_suffix, ACTIONS(3223), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [40755] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2985), 1, anon_sym_EQ, ACTIONS(2989), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2963), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2955), 17, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [40808] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2442), 1, sym_field_declaration_list, STATE(4352), 1, sym_virtual_specifier, STATE(5045), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3326), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3324), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [40869] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_LBRACE, ACTIONS(3377), 1, anon_sym_LT, ACTIONS(4101), 1, anon_sym_EQ, STATE(2530), 1, sym_template_argument_list, ACTIONS(4103), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2955), 13, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, ACTIONS(2963), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_COLON, anon_sym_DOT, [40930] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4105), 1, anon_sym_LT, STATE(2200), 1, sym_template_argument_list, ACTIONS(2998), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(2991), 25, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [40985] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2480), 1, sym_field_declaration_list, STATE(4286), 1, sym_virtual_specifier, STATE(4952), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3338), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3336), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [41046] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2478), 1, sym_field_declaration_list, STATE(4290), 1, sym_virtual_specifier, STATE(4961), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3334), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3332), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [41107] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2483), 1, sym_field_declaration_list, STATE(4282), 1, sym_virtual_specifier, STATE(4942), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3322), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3320), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [41168] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, STATE(2200), 1, sym_template_argument_list, ACTIONS(3452), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3454), 25, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [41223] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2466), 1, sym_field_declaration_list, STATE(4318), 1, sym_virtual_specifier, STATE(4987), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3342), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3340), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [41284] = 5, ACTIONS(3), 1, sym_comment, STATE(1714), 1, sym__enum_base_clause, STATE(1771), 1, sym_enumerator_list, ACTIONS(3475), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3473), 25, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [41337] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2463), 1, sym_field_declaration_list, STATE(4323), 1, sym_virtual_specifier, STATE(5011), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3346), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3344), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [41398] = 5, ACTIONS(3), 1, sym_comment, STATE(1716), 1, sym__enum_base_clause, STATE(1797), 1, sym_enumerator_list, ACTIONS(3492), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3490), 25, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [41451] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4105), 1, anon_sym_LT, STATE(2200), 1, sym_template_argument_list, ACTIONS(2979), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3371), 25, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [41506] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4109), 1, sym_literal_suffix, ACTIONS(4111), 1, sym_raw_string_literal, STATE(1958), 2, sym_string_literal, aux_sym_concatenated_string_repeat1, ACTIONS(101), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, ACTIONS(2963), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(2955), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [41563] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3517), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3515), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [41614] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2446), 1, sym_field_declaration_list, STATE(4348), 1, sym_virtual_specifier, STATE(5056), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3330), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3328), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [41675] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4105), 1, anon_sym_LT, STATE(2200), 1, sym_template_argument_list, ACTIONS(2961), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(2953), 25, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [41730] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3860), 1, anon_sym_LBRACK, STATE(1988), 1, sym_new_declarator, ACTIONS(3536), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3534), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [41783] = 4, ACTIONS(3), 1, sym_comment, STATE(2025), 1, sym_enumerator_list, ACTIONS(3509), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3507), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [41834] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4121), 1, anon_sym_LT_EQ, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4113), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4117), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4123), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4127), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4115), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(4119), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(3832), 5, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(3808), 15, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_GT2, [41906] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3573), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3571), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, sym_literal_suffix, [41954] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4121), 1, anon_sym_LT_EQ, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4133), 1, anon_sym_PIPE_PIPE, ACTIONS(4135), 1, anon_sym_AMP_AMP, ACTIONS(4137), 1, anon_sym_PIPE, ACTIONS(4139), 1, anon_sym_CARET, ACTIONS(4141), 1, anon_sym_AMP, STATE(2228), 1, sym_argument_list, ACTIONS(3973), 2, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(4113), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4117), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4123), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4127), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4115), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(4119), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(3971), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_GT2, [42036] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3517), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3515), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [42084] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4121), 1, anon_sym_LT_EQ, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4133), 1, anon_sym_PIPE_PIPE, ACTIONS(4135), 1, anon_sym_AMP_AMP, ACTIONS(4137), 1, anon_sym_PIPE, ACTIONS(4139), 1, anon_sym_CARET, ACTIONS(4141), 1, anon_sym_AMP, STATE(2228), 1, sym_argument_list, ACTIONS(4003), 2, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(4113), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4117), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4123), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4127), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4115), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(4119), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(4001), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_GT2, [42166] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4127), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3902), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(3900), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_GT2, [42226] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4121), 1, anon_sym_LT_EQ, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4133), 1, anon_sym_PIPE_PIPE, ACTIONS(4135), 1, anon_sym_AMP_AMP, ACTIONS(4137), 1, anon_sym_PIPE, ACTIONS(4139), 1, anon_sym_CARET, ACTIONS(4141), 1, anon_sym_AMP, ACTIONS(4143), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4145), 1, anon_sym_QMARK, STATE(2228), 1, sym_argument_list, ACTIONS(3846), 2, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(4113), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4117), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4123), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4127), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4115), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(4119), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(3842), 11, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_GT2, [42312] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3794), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3792), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [42360] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4113), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4127), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4115), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3832), 10, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(3808), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_GT2, [42424] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4113), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4123), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4127), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4115), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3832), 8, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(3808), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_GT2, [42490] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4121), 1, anon_sym_LT_EQ, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4113), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4123), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4127), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4115), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(4119), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(3832), 5, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(3808), 17, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_GT2, [42560] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3517), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3515), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [42608] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4121), 1, anon_sym_LT_EQ, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4141), 1, anon_sym_AMP, STATE(2228), 1, sym_argument_list, ACTIONS(4113), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4117), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4123), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4127), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4115), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(4119), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(3832), 4, anon_sym_PIPE, anon_sym_CARET, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(3808), 15, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_GT2, [42682] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4121), 1, anon_sym_LT_EQ, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4139), 1, anon_sym_CARET, ACTIONS(4141), 1, anon_sym_AMP, STATE(2228), 1, sym_argument_list, ACTIONS(4113), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4117), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4123), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4127), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3832), 3, anon_sym_PIPE, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(4115), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(4119), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(3808), 15, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_GT2, [42758] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4121), 1, anon_sym_LT_EQ, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4137), 1, anon_sym_PIPE, ACTIONS(4139), 1, anon_sym_CARET, ACTIONS(4141), 1, anon_sym_AMP, STATE(2228), 1, sym_argument_list, ACTIONS(3832), 2, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(4113), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4117), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4123), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4127), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4115), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(4119), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(3808), 15, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_GT2, [42836] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4121), 1, anon_sym_LT_EQ, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4135), 1, anon_sym_AMP_AMP, ACTIONS(4137), 1, anon_sym_PIPE, ACTIONS(4139), 1, anon_sym_CARET, ACTIONS(4141), 1, anon_sym_AMP, STATE(2228), 1, sym_argument_list, ACTIONS(3832), 2, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(4113), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4117), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4123), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4127), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4115), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(4119), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(3808), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_GT2, [42916] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4127), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3832), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(3808), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_GT2, [42976] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4127), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4115), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3832), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(3808), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_GT2, [43038] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3547), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3545), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [43086] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(2486), 1, anon_sym_LPAREN2, ACTIONS(3233), 1, sym_identifier, ACTIONS(3237), 1, anon_sym_STAR, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3245), 1, anon_sym_LBRACK, ACTIONS(4147), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4151), 1, anon_sym_AMP_AMP, ACTIONS(4153), 1, anon_sym_AMP, ACTIONS(4155), 1, anon_sym_EQ, STATE(3264), 1, sym_parameter_list, STATE(3672), 1, sym__scope_resolution, STATE(3878), 1, sym__declarator, STATE(4125), 1, sym__abstract_declarator, STATE(4424), 1, sym_variadic_declarator, STATE(4425), 1, sym_variadic_reference_declarator, STATE(5456), 1, sym_ms_based_modifier, ACTIONS(4149), 2, anon_sym_COMMA, anon_sym_RPAREN, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [43178] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4157), 1, anon_sym_LBRACK_RBRACK, ACTIONS(3764), 17, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACK, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3762), 22, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [43228] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3698), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3696), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [43276] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3702), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3700), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [43324] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3714), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3712), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [43372] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(2486), 1, anon_sym_LPAREN2, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3245), 1, anon_sym_LBRACK, ACTIONS(3257), 1, anon_sym_STAR, ACTIONS(4147), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4159), 1, anon_sym_AMP_AMP, ACTIONS(4161), 1, anon_sym_AMP, ACTIONS(4163), 1, anon_sym_EQ, STATE(3273), 1, sym_parameter_list, STATE(3672), 1, sym__scope_resolution, STATE(3873), 1, sym__declarator, STATE(4116), 1, sym__abstract_declarator, STATE(4424), 1, sym_variadic_declarator, STATE(4425), 1, sym_variadic_reference_declarator, STATE(5456), 1, sym_ms_based_modifier, ACTIONS(4149), 2, anon_sym_COMMA, anon_sym_GT2, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [43464] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3740), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3738), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [43512] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3687), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3685), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [43560] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4121), 1, anon_sym_LT_EQ, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4133), 1, anon_sym_PIPE_PIPE, ACTIONS(4135), 1, anon_sym_AMP_AMP, ACTIONS(4137), 1, anon_sym_PIPE, ACTIONS(4139), 1, anon_sym_CARET, ACTIONS(4141), 1, anon_sym_AMP, ACTIONS(4143), 1, anon_sym_DOT_DOT_DOT, STATE(2228), 1, sym_argument_list, ACTIONS(4019), 2, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(4113), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4117), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4123), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4127), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4115), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(4119), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(4017), 12, anon_sym_COMMA, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_GT2, [43644] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3718), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3716), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [43692] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3732), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3730), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [43740] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3710), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3708), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [43788] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3694), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3692), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [43836] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3639), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3637), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [43884] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4165), 1, anon_sym_LT, STATE(2225), 1, sym_template_argument_list, ACTIONS(3914), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3912), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [43936] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3627), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3625), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [43984] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3671), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3669), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [44032] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3679), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3677), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [44080] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3782), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3780), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [44128] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3683), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3681), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [44176] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3559), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3557), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [44224] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4121), 1, anon_sym_LT_EQ, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4133), 1, anon_sym_PIPE_PIPE, ACTIONS(4135), 1, anon_sym_AMP_AMP, ACTIONS(4137), 1, anon_sym_PIPE, ACTIONS(4139), 1, anon_sym_CARET, ACTIONS(4141), 1, anon_sym_AMP, STATE(2228), 1, sym_argument_list, ACTIONS(3939), 2, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(4113), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4117), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4123), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4127), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4115), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(4119), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(3937), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_GT2, [44306] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3760), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3758), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [44354] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3770), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3768), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [44402] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3786), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3784), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [44450] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3790), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3788), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [44498] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3806), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3804), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [44546] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3605), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3603), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [44594] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3706), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3704), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [44642] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3736), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3734), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [44690] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3744), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3742), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [44738] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3748), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3746), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [44786] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3752), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3750), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [44834] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3756), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3754), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [44882] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3774), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3772), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [44930] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3798), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3796), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [44978] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3778), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3776), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [45026] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3728), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3726), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [45074] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, STATE(2228), 1, sym_argument_list, ACTIONS(3888), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(3886), 20, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_GT2, [45132] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3724), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3722), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [45180] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3675), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3673), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [45228] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4121), 1, anon_sym_LT_EQ, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4133), 1, anon_sym_PIPE_PIPE, ACTIONS(4135), 1, anon_sym_AMP_AMP, ACTIONS(4137), 1, anon_sym_PIPE, ACTIONS(4139), 1, anon_sym_CARET, ACTIONS(4141), 1, anon_sym_AMP, STATE(2228), 1, sym_argument_list, ACTIONS(3892), 2, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(4113), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4117), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4123), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4127), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4115), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(4119), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(3890), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_GT2, [45310] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3667), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3665), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [45358] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3663), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3661), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [45406] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3659), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3657), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [45454] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3655), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3653), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [45502] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3651), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3649), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [45550] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4113), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4123), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4127), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4115), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3910), 8, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(3908), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_GT2, [45616] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4127), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3955), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(3953), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_GT2, [45676] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3647), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3645), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [45724] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3643), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3641), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [45772] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3635), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3633), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [45820] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3631), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3629), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [45868] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3621), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3619), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [45916] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3617), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3615), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [45964] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3609), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3607), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [46012] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3601), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3599), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [46060] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3597), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3595), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [46108] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3593), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3591), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [46156] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3589), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3587), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [46204] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3585), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3583), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [46252] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3581), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3579), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [46300] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3577), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3575), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [46348] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3569), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3567), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [46396] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3563), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3561), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [46444] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4127), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3991), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(3989), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_GT2, [46504] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3517), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3515), 29, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [46554] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, STATE(2228), 1, sym_argument_list, ACTIONS(3987), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(3985), 20, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_GT2, [46612] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3555), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3553), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [46660] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3551), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3549), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [46708] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3802), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3800), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [46756] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4168), 1, sym_literal_suffix, ACTIONS(2963), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(2955), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [46806] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, STATE(2301), 1, sym_field_declaration_list, STATE(4343), 1, sym_virtual_specifier, STATE(4956), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3344), 12, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_GT2, ACTIONS(3346), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [46865] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3790), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3788), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [46912] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3028), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3026), 25, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [46959] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3010), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3008), 25, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [47006] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3981), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3979), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [47053] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3732), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3730), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [47100] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4176), 1, anon_sym_LBRACE, STATE(2331), 1, sym_enumerator_list, ACTIONS(3511), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3513), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [47151] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3977), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3975), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [47198] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3410), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3412), 25, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [47247] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4180), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(4178), 33, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, [47294] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3710), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3708), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [47341] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2518), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2516), 33, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, [47388] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3728), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3726), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [47435] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3724), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3722), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [47482] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4007), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(4005), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [47529] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4011), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(4009), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [47576] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4045), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(4043), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [47623] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3050), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3048), 25, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [47670] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3046), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3044), 25, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [47717] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3935), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3933), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [47764] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3515), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3517), 25, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [47813] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3042), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3040), 25, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [47860] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4029), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(4027), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [47907] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3906), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3904), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [47954] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4033), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(4031), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [48001] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3440), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3442), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [48048] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3364), 2, anon_sym_EQ, anon_sym_GT_GT_EQ, ACTIONS(3366), 9, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2955), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(2963), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, [48099] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3675), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3673), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [48146] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3667), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3665), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [48193] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3663), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3661), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [48240] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, STATE(2200), 1, sym_template_argument_list, ACTIONS(2979), 11, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_DASH_GT, ACTIONS(3371), 25, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [48293] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4025), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(4023), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [48340] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3659), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3657), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [48387] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3655), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3653), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [48434] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3651), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3649), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [48481] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3040), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3042), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [48528] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3044), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3046), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [48575] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3048), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3050), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [48622] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3694), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3692), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [48669] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, STATE(2281), 1, sym_field_declaration_list, STATE(4270), 1, sym_virtual_specifier, STATE(4933), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3320), 12, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_GT2, ACTIONS(3322), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [48728] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4182), 6, anon_sym_AMP, anon_sym___based, anon_sym_LBRACK, sym_identifier, anon_sym_template, anon_sym_operator, STATE(2209), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, ACTIONS(4184), 10, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_EQ, anon_sym_GT2, [48789] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, STATE(2289), 1, sym_field_declaration_list, STATE(4285), 1, sym_virtual_specifier, STATE(4954), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3336), 12, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_GT2, ACTIONS(3338), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [48848] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3647), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3645), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [48895] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3643), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3641), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [48942] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3635), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3633), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [48989] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3631), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3629), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [49036] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3868), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3866), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [49083] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3621), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3619), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [49130] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3617), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3615), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [49177] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3864), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3862), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [49224] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3018), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3020), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [49271] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3026), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3028), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [49318] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3008), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3010), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [49365] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3639), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3637), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [49412] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, STATE(2293), 1, sym_field_declaration_list, STATE(4294), 1, sym_virtual_specifier, STATE(4969), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3332), 12, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_GT2, ACTIONS(3334), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [49471] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3627), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3625), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [49518] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3517), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3515), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [49565] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3609), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3607), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [49612] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3671), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3669), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [49659] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3601), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3599), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [49706] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3597), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3595), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [49753] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3593), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3591), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [49800] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3032), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3034), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [49847] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3589), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3587), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [49894] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3500), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3498), 33, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, [49941] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3679), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3677), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [49988] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3306), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, sym_literal_suffix, ACTIONS(3304), 30, sym_raw_string_literal, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [50035] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3585), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3583), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [50082] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3581), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3579), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [50129] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3577), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3575), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [50176] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3782), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3780), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [50223] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3569), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3567), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [50270] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3563), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3561), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [50317] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3991), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, ACTIONS(3989), 19, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [50376] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4192), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(4190), 33, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, [50423] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4194), 6, anon_sym_AMP, anon_sym___based, anon_sym_LBRACK, sym_identifier, anon_sym_template, anon_sym_operator, STATE(2154), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, ACTIONS(4196), 10, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_EQ, anon_sym_GT2, [50484] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3412), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3410), 26, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [50533] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3764), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3762), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [50580] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3555), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3553), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [50627] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3551), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3549), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [50674] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3802), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3800), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [50721] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3840), 1, anon_sym_DOT_DOT_DOT, ACTIONS(3846), 1, anon_sym_EQ, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4202), 1, anon_sym_PIPE_PIPE, ACTIONS(4204), 1, anon_sym_AMP_AMP, ACTIONS(4206), 1, anon_sym_PIPE, ACTIONS(4208), 1, anon_sym_CARET, ACTIONS(4210), 1, anon_sym_AMP, ACTIONS(4220), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4198), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4212), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4214), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4216), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4218), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4200), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3842), 11, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [50806] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4222), 6, anon_sym_AMP, anon_sym___based, anon_sym_LBRACK, sym_identifier, anon_sym_template, anon_sym_operator, STATE(2209), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, ACTIONS(4224), 10, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_EQ, anon_sym_GT2, [50867] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4003), 1, anon_sym_EQ, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4202), 1, anon_sym_PIPE_PIPE, ACTIONS(4204), 1, anon_sym_AMP_AMP, ACTIONS(4206), 1, anon_sym_PIPE, ACTIONS(4208), 1, anon_sym_CARET, ACTIONS(4210), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4198), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4212), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4214), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4216), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4218), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4200), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(4001), 13, anon_sym_DOT_DOT_DOT, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [50948] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3973), 1, anon_sym_EQ, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4202), 1, anon_sym_PIPE_PIPE, ACTIONS(4204), 1, anon_sym_AMP_AMP, ACTIONS(4206), 1, anon_sym_PIPE, ACTIONS(4208), 1, anon_sym_CARET, ACTIONS(4210), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4198), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4212), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4214), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4216), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4218), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4200), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3971), 13, anon_sym_DOT_DOT_DOT, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [51029] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3902), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, ACTIONS(3900), 19, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [51088] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4198), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4200), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3832), 8, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, ACTIONS(3808), 19, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [51151] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4198), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4218), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4200), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3832), 6, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_EQ, ACTIONS(3808), 19, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [51216] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4198), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4214), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4216), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4218), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4200), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3832), 4, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_EQ, ACTIONS(3808), 17, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [51285] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4198), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4212), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4214), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4216), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4218), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4200), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3832), 4, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_EQ, ACTIONS(3808), 15, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [51356] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4210), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4198), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4212), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4214), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4216), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4218), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3832), 3, anon_sym_PIPE, anon_sym_CARET, anon_sym_EQ, ACTIONS(4200), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3808), 15, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [51429] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3416), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3418), 25, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [51478] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3416), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3418), 25, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [51527] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3416), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3418), 25, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [51574] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4053), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(4051), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [51621] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4208), 1, anon_sym_CARET, ACTIONS(4210), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(3832), 2, anon_sym_PIPE, anon_sym_EQ, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4198), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4212), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4214), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4216), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4218), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4200), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3808), 15, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [51696] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3683), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3681), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [51743] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4226), 6, anon_sym_AMP, anon_sym___based, anon_sym_LBRACK, sym_identifier, anon_sym_template, anon_sym_operator, STATE(2112), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, ACTIONS(4228), 10, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_EQ, anon_sym_GT2, [51804] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3559), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3557), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [51851] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3931), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3929), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [51898] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3418), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3416), 26, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [51947] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3832), 1, anon_sym_EQ, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4206), 1, anon_sym_PIPE, ACTIONS(4208), 1, anon_sym_CARET, ACTIONS(4210), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4198), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4212), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4214), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4216), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4218), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4200), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3808), 15, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [52024] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3832), 1, anon_sym_EQ, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4204), 1, anon_sym_AMP_AMP, ACTIONS(4206), 1, anon_sym_PIPE, ACTIONS(4208), 1, anon_sym_CARET, ACTIONS(4210), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4198), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4212), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4214), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4216), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4218), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4200), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3808), 14, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [52103] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3832), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, ACTIONS(3808), 19, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [52162] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3418), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3416), 26, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [52211] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4200), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3832), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, ACTIONS(3808), 19, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [52272] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3840), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4019), 1, anon_sym_EQ, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4202), 1, anon_sym_PIPE_PIPE, ACTIONS(4204), 1, anon_sym_AMP_AMP, ACTIONS(4206), 1, anon_sym_PIPE, ACTIONS(4208), 1, anon_sym_CARET, ACTIONS(4210), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4198), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4212), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4214), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4216), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4218), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4200), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(4017), 12, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [52355] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3939), 1, anon_sym_EQ, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4202), 1, anon_sym_PIPE_PIPE, ACTIONS(4204), 1, anon_sym_AMP_AMP, ACTIONS(4206), 1, anon_sym_PIPE, ACTIONS(4208), 1, anon_sym_CARET, ACTIONS(4210), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4198), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4212), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4214), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4216), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4218), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4200), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3937), 13, anon_sym_DOT_DOT_DOT, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [52436] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3486), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3488), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [52483] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3888), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, ACTIONS(3886), 21, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, [52540] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3892), 1, anon_sym_EQ, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4202), 1, anon_sym_PIPE_PIPE, ACTIONS(4204), 1, anon_sym_AMP_AMP, ACTIONS(4206), 1, anon_sym_PIPE, ACTIONS(4208), 1, anon_sym_CARET, ACTIONS(4210), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4198), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4212), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4214), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4216), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4218), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4200), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3890), 13, anon_sym_DOT_DOT_DOT, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [52621] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3605), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3603), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [52668] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2963), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(2955), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [52715] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4198), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4218), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4200), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(3910), 6, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_EQ, ACTIONS(3908), 19, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [52780] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3398), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3400), 25, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [52827] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3834), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3955), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, ACTIONS(3953), 19, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, [52886] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3718), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3716), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [52933] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2963), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(2955), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [52980] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2514), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(2512), 33, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, anon_sym_explicit, sym_auto, anon_sym_typename, anon_sym_template, anon_sym_operator, [53027] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3999), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3997), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [53074] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3613), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3611), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [53121] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3034), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3032), 25, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [53168] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3995), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3993), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [53215] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3687), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3685), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [53262] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3521), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3519), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [53309] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3987), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, ACTIONS(3985), 21, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, [53366] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3400), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3398), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [53413] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3517), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3515), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [53460] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3073), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3066), 25, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [53507] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4041), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(4039), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [53554] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3066), 12, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_COLON, anon_sym_DOT, ACTIONS(3073), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [53601] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4230), 1, anon_sym_LT, STATE(1909), 1, sym_template_argument_list, ACTIONS(3914), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3912), 24, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [53652] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3294), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, sym_literal_suffix, ACTIONS(3292), 30, sym_raw_string_literal, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [53699] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3965), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3963), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [53746] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3547), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3545), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [53793] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3778), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3776), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [53840] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3702), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3700), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [53887] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4240), 1, anon_sym___attribute__, ACTIONS(4243), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4246), 1, anon_sym___declspec, ACTIONS(4252), 1, anon_sym_virtual, ACTIONS(4237), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(4233), 6, anon_sym_AMP, anon_sym___based, anon_sym_LBRACK, sym_identifier, anon_sym_template, anon_sym_operator, ACTIONS(4249), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2209), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, ACTIONS(4235), 10, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_EQ, anon_sym_GT2, [53948] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4255), 1, sym_identifier, ACTIONS(4260), 1, sym_primitive_type, STATE(1769), 1, aux_sym_sized_type_specifier_repeat1, ACTIONS(4258), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(3280), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_GT2, ACTIONS(3282), 19, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_virtual, anon_sym_template, anon_sym_operator, [54003] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, STATE(2200), 1, sym_template_argument_list, ACTIONS(2998), 11, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_DASH_GT, ACTIONS(2991), 25, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [54056] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4049), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(4047), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [54103] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3698), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3696), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [54150] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3798), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3796), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [54197] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3774), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3772), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [54244] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1749), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(1751), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [54291] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, STATE(2297), 1, sym_field_declaration_list, STATE(4250), 1, sym_virtual_specifier, STATE(4774), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3324), 12, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_GT2, ACTIONS(3326), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [54350] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, STATE(2286), 1, sym_field_declaration_list, STATE(4254), 1, sym_virtual_specifier, STATE(4786), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3328), 12, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_GT2, ACTIONS(3330), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [54409] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1756), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(1758), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [54456] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3756), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3754), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [54503] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3752), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3750), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [54550] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3872), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3870), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [54597] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3748), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3746), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [54644] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3744), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3742), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [54691] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4037), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(4035), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [54738] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3736), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3734), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [54785] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3706), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3704), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [54832] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3965), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3963), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [54879] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3714), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3712), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [54926] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3806), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3804), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [54973] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4015), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(1936), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [55020] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3786), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3784), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [55067] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, STATE(2279), 1, sym_field_declaration_list, STATE(4340), 1, sym_virtual_specifier, STATE(4951), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3348), 12, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_GT2, ACTIONS(3350), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [55126] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3020), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3018), 25, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [55173] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, STATE(2310), 1, sym_field_declaration_list, STATE(4346), 1, sym_virtual_specifier, STATE(4963), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3340), 12, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_GT2, ACTIONS(3342), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [55232] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3949), 1, anon_sym_EQ, ACTIONS(3951), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2963), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2955), 15, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [55283] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, STATE(2265), 1, sym_field_declaration_list, STATE(4234), 1, sym_virtual_specifier, STATE(4766), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3310), 12, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_GT2, ACTIONS(3312), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [55342] = 5, ACTIONS(3), 1, sym_comment, STATE(2238), 1, aux_sym_sized_type_specifier_repeat1, ACTIONS(4262), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(3273), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3271), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_primitive_type, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [55393] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3000), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(2993), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [55440] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3884), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3882), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [55487] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(4272), 2, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(4268), 4, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, ACTIONS(4270), 5, anon_sym_AMP, anon_sym___based, anon_sym_LBRACK, anon_sym_explicit, anon_sym_operator, ACTIONS(4275), 12, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, anon_sym_decltype, sym_auto, anon_sym_typename, ACTIONS(4265), 16, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, [55540] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3969), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3967), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [55587] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3000), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(2993), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [55634] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3000), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(2993), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [55681] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4176), 1, anon_sym_LBRACE, STATE(2280), 1, sym_enumerator_list, ACTIONS(3507), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3509), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [55732] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3000), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(2993), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [55779] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3448), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3450), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [55826] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3000), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(2993), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [55873] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3770), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3768), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [55920] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3760), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3758), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [55967] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3740), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_const, anon_sym_DOT, ACTIONS(3738), 30, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [56014] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3880), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3878), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [56061] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3876), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(3874), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [56108] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4057), 16, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_GT_GT_EQ, anon_sym_DOT, ACTIONS(4055), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [56155] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3700), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3702), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [56201] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3629), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3631), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [56247] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3066), 1, anon_sym_const, ACTIONS(3077), 2, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(3070), 4, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, ACTIONS(3073), 7, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(3075), 7, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3068), 17, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [56301] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3758), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3760), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [56347] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3575), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3577), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [56393] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3567), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3569), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [56439] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3692), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3694), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [56485] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3768), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3770), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [56531] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3784), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3786), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [56577] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3561), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3563), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [56623] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3619), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3621), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [56669] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3583), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3585), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [56715] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3032), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3034), 24, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [56761] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3008), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3010), 24, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [56807] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3026), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3028), 24, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [56853] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3708), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3710), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [56899] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3018), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3020), 24, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [56945] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3796), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3798), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [56991] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3587), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3589), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [57037] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3730), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3732), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [57083] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(2486), 1, anon_sym_LPAREN2, ACTIONS(3233), 1, sym_identifier, ACTIONS(3237), 1, anon_sym_STAR, ACTIONS(3239), 1, anon_sym_AMP_AMP, ACTIONS(3241), 1, anon_sym_AMP, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3245), 1, anon_sym_LBRACK, ACTIONS(4147), 1, anon_sym_DOT_DOT_DOT, STATE(3264), 1, sym_parameter_list, STATE(3672), 1, sym__scope_resolution, STATE(3822), 1, sym__declarator, STATE(4092), 1, sym__abstract_declarator, STATE(4535), 1, sym_variadic_declarator, STATE(5456), 1, sym_ms_based_modifier, ACTIONS(4277), 2, anon_sym_COMMA, anon_sym_RPAREN, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [57169] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3591), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3593), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [57215] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3772), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3774), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [57261] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3716), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3718), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [57307] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3754), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3756), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [57353] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3788), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3790), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [57399] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3669), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3671), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [57445] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3673), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3675), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [57491] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3750), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3752), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [57537] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3665), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3667), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [57583] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3677), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3679), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [57629] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3661), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3663), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [57675] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3595), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3597), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [57721] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3746), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3748), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [57767] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3780), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3782), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [57813] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3657), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3659), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [57859] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3681), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3683), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [57905] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3776), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3778), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [57951] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3557), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3559), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [57997] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3599), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3601), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [58043] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3653), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3655), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [58089] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3649), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3651), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [58135] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3645), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3647), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [58181] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3048), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3050), 24, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [58227] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3044), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3046), 24, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [58273] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3040), 14, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_EQ, anon_sym_DOT, ACTIONS(3042), 24, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [58319] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3742), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3744), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [58365] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4260), 1, sym_primitive_type, ACTIONS(4279), 1, sym_identifier, STATE(1769), 1, aux_sym_sized_type_specifier_repeat1, ACTIONS(4258), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(3280), 11, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3282), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_noexcept, anon_sym_throw, [58419] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3641), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3643), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [58465] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3607), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3609), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [58511] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3734), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3736), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [58557] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3515), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3517), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [58603] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(2486), 1, anon_sym_LPAREN2, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3245), 1, anon_sym_LBRACK, ACTIONS(3257), 1, anon_sym_STAR, ACTIONS(3259), 1, anon_sym_AMP_AMP, ACTIONS(3261), 1, anon_sym_AMP, ACTIONS(4147), 1, anon_sym_DOT_DOT_DOT, STATE(3273), 1, sym_parameter_list, STATE(3672), 1, sym__scope_resolution, STATE(3822), 1, sym__declarator, STATE(4084), 1, sym__abstract_declarator, STATE(4535), 1, sym_variadic_declarator, STATE(5456), 1, sym_ms_based_modifier, ACTIONS(4277), 2, anon_sym_COMMA, anon_sym_GT2, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [58689] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3704), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3706), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [58735] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3633), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3635), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [58781] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3603), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3605), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [58827] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3545), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3547), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [58873] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3696), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3698), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [58919] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3579), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3581), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [58965] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3804), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3806), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [59011] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3615), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3617), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [59057] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3712), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3714), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [59103] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1710), 1, anon_sym_enum, ACTIONS(1712), 1, anon_sym_class, ACTIONS(1714), 1, anon_sym_struct, ACTIONS(1716), 1, anon_sym_union, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(1722), 1, anon_sym_typename, ACTIONS(4281), 1, sym_identifier, ACTIONS(4283), 1, anon_sym_RPAREN, ACTIONS(4285), 1, anon_sym_COLON_COLON, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(3233), 1, sym__type_specifier, STATE(4023), 1, sym__scope_resolution, STATE(4564), 1, sym_type_descriptor, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, STATE(2380), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [59189] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4101), 1, anon_sym_EQ, ACTIONS(4103), 10, anon_sym_STAR_EQ, anon_sym_SLASH_EQ, anon_sym_PERCENT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_AMP_EQ, anon_sym_CARET_EQ, anon_sym_PIPE_EQ, ACTIONS(2963), 13, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2955), 14, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [59239] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3738), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3740), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [59285] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3800), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3802), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [59331] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1710), 1, anon_sym_enum, ACTIONS(1712), 1, anon_sym_class, ACTIONS(1714), 1, anon_sym_struct, ACTIONS(1716), 1, anon_sym_union, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(1722), 1, anon_sym_typename, ACTIONS(4281), 1, sym_identifier, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(4287), 1, anon_sym_RPAREN, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(3233), 1, sym__type_specifier, STATE(4023), 1, sym__scope_resolution, STATE(4398), 1, sym_type_descriptor, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, STATE(2380), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [59417] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3418), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3416), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [59463] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3625), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3627), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [59509] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3685), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3687), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [59555] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3549), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3551), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [59601] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3515), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3517), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [59647] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3726), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3728), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [59693] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3553), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3555), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [59739] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4235), 1, anon_sym_COLON_COLON, ACTIONS(4292), 1, anon_sym___attribute__, ACTIONS(4295), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4298), 1, anon_sym___declspec, ACTIONS(4304), 1, anon_sym_virtual, ACTIONS(4289), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(4301), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2329), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, ACTIONS(4233), 14, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, sym_auto, anon_sym_typename, anon_sym_template, [59799] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3637), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3639), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [59845] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3722), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3724), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [59891] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2514), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_GT2, ACTIONS(2512), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_explicit, anon_sym_template, anon_sym_operator, [59936] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4307), 1, anon_sym_LT, STATE(1934), 1, sym_template_argument_list, ACTIONS(3371), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_COLON, anon_sym_DOT, ACTIONS(2979), 26, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [59987] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1710), 1, anon_sym_enum, ACTIONS(1712), 1, anon_sym_class, ACTIONS(1714), 1, anon_sym_struct, ACTIONS(1716), 1, anon_sym_union, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(1722), 1, anon_sym_typename, ACTIONS(4281), 1, sym_identifier, ACTIONS(4285), 1, anon_sym_COLON_COLON, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(3233), 1, sym__type_specifier, STATE(4023), 1, sym__scope_resolution, STATE(5083), 1, sym_type_descriptor, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, STATE(2380), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [60070] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4309), 1, anon_sym_LT, STATE(1934), 1, sym_template_argument_list, ACTIONS(2991), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_COLON, anon_sym_DOT, ACTIONS(2998), 26, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [60121] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4312), 1, sym_literal_suffix, ACTIONS(4314), 1, sym_raw_string_literal, STATE(2339), 2, sym_string_literal, aux_sym_concatenated_string_repeat1, ACTIONS(2322), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, ACTIONS(2963), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2955), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [60174] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1710), 1, anon_sym_enum, ACTIONS(1712), 1, anon_sym_class, ACTIONS(1714), 1, anon_sym_struct, ACTIONS(1716), 1, anon_sym_union, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(1722), 1, anon_sym_typename, ACTIONS(4281), 1, sym_identifier, ACTIONS(4285), 1, anon_sym_COLON_COLON, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(3233), 1, sym__type_specifier, STATE(4023), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(5452), 1, sym_type_descriptor, ACTIONS(1720), 2, sym_primitive_type, sym_auto, STATE(2380), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [60257] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1710), 1, anon_sym_enum, ACTIONS(1712), 1, anon_sym_class, ACTIONS(1714), 1, anon_sym_struct, ACTIONS(1716), 1, anon_sym_union, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(1722), 1, anon_sym_typename, ACTIONS(4281), 1, sym_identifier, ACTIONS(4285), 1, anon_sym_COLON_COLON, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(3233), 1, sym__type_specifier, STATE(4023), 1, sym__scope_resolution, STATE(5228), 1, sym_type_descriptor, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, STATE(2380), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [60340] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(4316), 1, sym_raw_string_literal, STATE(2347), 2, sym_string_literal, aux_sym_concatenated_string_repeat1, ACTIONS(2322), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, ACTIONS(3253), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, sym_literal_suffix, ACTIONS(3251), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [60391] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1710), 1, anon_sym_enum, ACTIONS(1712), 1, anon_sym_class, ACTIONS(1714), 1, anon_sym_struct, ACTIONS(1716), 1, anon_sym_union, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(1722), 1, anon_sym_typename, ACTIONS(4281), 1, sym_identifier, ACTIONS(4285), 1, anon_sym_COLON_COLON, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(3233), 1, sym__type_specifier, STATE(4023), 1, sym__scope_resolution, STATE(5176), 1, sym_type_descriptor, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, STATE(2380), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [60474] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2518), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_GT2, ACTIONS(2516), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_explicit, anon_sym_template, anon_sym_operator, [60519] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1710), 1, anon_sym_enum, ACTIONS(1712), 1, anon_sym_class, ACTIONS(1714), 1, anon_sym_struct, ACTIONS(1716), 1, anon_sym_union, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(1722), 1, anon_sym_typename, ACTIONS(4281), 1, sym_identifier, ACTIONS(4285), 1, anon_sym_COLON_COLON, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(3233), 1, sym__type_specifier, STATE(4023), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(5393), 1, sym_type_descriptor, ACTIONS(1720), 2, sym_primitive_type, sym_auto, STATE(2380), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [60602] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3304), 3, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, ACTIONS(3306), 34, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___cdecl, anon_sym___clrcall, anon_sym___stdcall, anon_sym___fastcall, anon_sym___thiscall, anon_sym___vectorcall, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, sym_auto, anon_sym_typename, anon_sym_template, [60647] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1710), 1, anon_sym_enum, ACTIONS(1712), 1, anon_sym_class, ACTIONS(1714), 1, anon_sym_struct, ACTIONS(1716), 1, anon_sym_union, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(1722), 1, anon_sym_typename, ACTIONS(4281), 1, sym_identifier, ACTIONS(4285), 1, anon_sym_COLON_COLON, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(3233), 1, sym__type_specifier, STATE(4023), 1, sym__scope_resolution, STATE(5321), 1, sym_type_descriptor, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, STATE(2380), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [60730] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1710), 1, anon_sym_enum, ACTIONS(1712), 1, anon_sym_class, ACTIONS(1714), 1, anon_sym_struct, ACTIONS(1716), 1, anon_sym_union, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(1722), 1, anon_sym_typename, ACTIONS(4281), 1, sym_identifier, ACTIONS(4285), 1, anon_sym_COLON_COLON, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(3233), 1, sym__type_specifier, STATE(4023), 1, sym__scope_resolution, STATE(5024), 1, sym_type_descriptor, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, STATE(2380), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [60813] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(4325), 1, anon_sym___attribute__, ACTIONS(4328), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4331), 1, anon_sym___declspec, ACTIONS(4337), 1, anon_sym_virtual, ACTIONS(4340), 1, anon_sym_explicit, ACTIONS(4320), 5, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, ACTIONS(4322), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(4318), 6, anon_sym_AMP, anon_sym___based, anon_sym_LBRACK, sym_identifier, anon_sym_template, anon_sym_operator, ACTIONS(4334), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2346), 10, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, sym_explicit_function_specifier, sym__constructor_specifiers, aux_sym_operator_cast_definition_repeat1, [60874] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(4346), 1, sym_raw_string_literal, STATE(2347), 2, sym_string_literal, aux_sym_concatenated_string_repeat1, ACTIONS(4343), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, ACTIONS(3225), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, sym_literal_suffix, ACTIONS(3223), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [60925] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1710), 1, anon_sym_enum, ACTIONS(1712), 1, anon_sym_class, ACTIONS(1714), 1, anon_sym_struct, ACTIONS(1716), 1, anon_sym_union, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(1722), 1, anon_sym_typename, ACTIONS(4281), 1, sym_identifier, ACTIONS(4285), 1, anon_sym_COLON_COLON, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(3233), 1, sym__type_specifier, STATE(4023), 1, sym__scope_resolution, STATE(5351), 1, sym_type_descriptor, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, STATE(2380), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [61008] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3292), 3, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, ACTIONS(3294), 34, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___cdecl, anon_sym___clrcall, anon_sym___stdcall, anon_sym___fastcall, anon_sym___thiscall, anon_sym___vectorcall, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, sym_auto, anon_sym_typename, anon_sym_template, [61053] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4349), 1, anon_sym_enum, ACTIONS(4351), 1, anon_sym_class, ACTIONS(4353), 1, anon_sym_struct, ACTIONS(4355), 1, anon_sym_union, ACTIONS(4357), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3766), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(2383), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [61133] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2610), 1, sym_field_declaration_list, STATE(4149), 1, sym_virtual_specifier, STATE(4684), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3340), 8, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_DASH_GT, ACTIONS(3342), 21, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [61189] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2532), 1, sym_field_declaration_list, STATE(4148), 1, sym_virtual_specifier, STATE(4682), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3320), 8, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_DASH_GT, ACTIONS(3322), 21, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [61245] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4349), 1, anon_sym_enum, ACTIONS(4351), 1, anon_sym_class, ACTIONS(4353), 1, anon_sym_struct, ACTIONS(4355), 1, anon_sym_union, ACTIONS(4357), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3744), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(2356), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [61325] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4105), 1, anon_sym_LT, ACTIONS(4363), 1, anon_sym_EQ, STATE(2200), 1, sym_template_argument_list, ACTIONS(4361), 2, anon_sym_COMMA, anon_sym_GT2, ACTIONS(2979), 7, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, ACTIONS(3371), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, [61379] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2613), 1, sym_field_declaration_list, STATE(4143), 1, sym_virtual_specifier, STATE(4624), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3336), 8, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_DASH_GT, ACTIONS(3338), 21, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [61435] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4349), 1, anon_sym_enum, ACTIONS(4351), 1, anon_sym_class, ACTIONS(4353), 1, anon_sym_struct, ACTIONS(4355), 1, anon_sym_union, ACTIONS(4357), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3746), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(3253), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [61515] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(2486), 1, anon_sym_LPAREN2, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3245), 1, anon_sym_LBRACK, ACTIONS(3257), 1, anon_sym_STAR, ACTIONS(3259), 1, anon_sym_AMP_AMP, ACTIONS(3261), 1, anon_sym_AMP, STATE(3273), 1, sym_parameter_list, STATE(3672), 1, sym__scope_resolution, STATE(3822), 1, sym__declarator, STATE(4084), 1, sym__abstract_declarator, STATE(5456), 1, sym_ms_based_modifier, ACTIONS(4277), 2, anon_sym_COMMA, anon_sym_GT2, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [61595] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2306), 1, anon_sym_enum, ACTIONS(2308), 1, anon_sym_class, ACTIONS(2310), 1, anon_sym_struct, ACTIONS(2312), 1, anon_sym_union, ACTIONS(2326), 1, anon_sym_decltype, ACTIONS(2330), 1, anon_sym_typename, ACTIONS(4365), 1, sym_identifier, ACTIONS(4367), 1, anon_sym_COLON_COLON, STATE(1953), 1, aux_sym_sized_type_specifier_repeat1, STATE(2371), 1, sym_template_type, STATE(2499), 1, sym_qualified_type_identifier, STATE(3256), 1, sym__type_specifier, STATE(4016), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(2328), 2, sym_primitive_type, sym_auto, STATE(3253), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(2302), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2501), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [61675] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1836), 14, anon_sym_DASH, anon_sym_PLUS, sym_primitive_type, anon_sym_sizeof, sym_true, sym_false, sym_null, sym_identifier, anon_sym_template, anon_sym_delete, anon_sym_co_await, anon_sym_new, sym_this, sym_nullptr, ACTIONS(1838), 22, sym_raw_string_literal, anon_sym_LPAREN2, anon_sym_BANG, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, sym_number_literal, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [61719] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4349), 1, anon_sym_enum, ACTIONS(4351), 1, anon_sym_class, ACTIONS(4353), 1, anon_sym_struct, ACTIONS(4355), 1, anon_sym_union, ACTIONS(4357), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3771), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(3253), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [61799] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2611), 1, sym_field_declaration_list, STATE(4220), 1, sym_virtual_specifier, STATE(4661), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3332), 8, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_DASH_GT, ACTIONS(3334), 21, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [61855] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4349), 1, anon_sym_enum, ACTIONS(4351), 1, anon_sym_class, ACTIONS(4353), 1, anon_sym_struct, ACTIONS(4355), 1, anon_sym_union, ACTIONS(4357), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3752), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(2375), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [61935] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3066), 1, anon_sym_const, ACTIONS(3077), 1, anon_sym_AMP, ACTIONS(3070), 5, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACK, ACTIONS(3073), 7, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(3075), 7, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3068), 15, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [61987] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4349), 1, anon_sym_enum, ACTIONS(4351), 1, anon_sym_class, ACTIONS(4353), 1, anon_sym_struct, ACTIONS(4355), 1, anon_sym_union, ACTIONS(4357), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3777), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(2360), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [62067] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4349), 1, anon_sym_enum, ACTIONS(4351), 1, anon_sym_class, ACTIONS(4353), 1, anon_sym_struct, ACTIONS(4355), 1, anon_sym_union, ACTIONS(4357), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3724), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(2372), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [62147] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(2486), 1, anon_sym_LPAREN2, ACTIONS(3233), 1, sym_identifier, ACTIONS(3237), 1, anon_sym_STAR, ACTIONS(3239), 1, anon_sym_AMP_AMP, ACTIONS(3241), 1, anon_sym_AMP, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3245), 1, anon_sym_LBRACK, STATE(3264), 1, sym_parameter_list, STATE(3672), 1, sym__scope_resolution, STATE(3822), 1, sym__declarator, STATE(4092), 1, sym__abstract_declarator, STATE(5456), 1, sym_ms_based_modifier, ACTIONS(4277), 2, anon_sym_COMMA, anon_sym_RPAREN, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [62227] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4349), 1, anon_sym_enum, ACTIONS(4351), 1, anon_sym_class, ACTIONS(4353), 1, anon_sym_struct, ACTIONS(4355), 1, anon_sym_union, ACTIONS(4357), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3776), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(2377), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [62307] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, STATE(2200), 1, sym_template_argument_list, ACTIONS(2961), 9, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_DASH_GT, ACTIONS(2953), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [62357] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4349), 1, anon_sym_enum, ACTIONS(4351), 1, anon_sym_class, ACTIONS(4353), 1, anon_sym_struct, ACTIONS(4355), 1, anon_sym_union, ACTIONS(4357), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3747), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(2373), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [62437] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3066), 1, anon_sym_const, ACTIONS(3077), 1, anon_sym_AMP, ACTIONS(3070), 7, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACK, anon_sym_GT2, ACTIONS(3073), 7, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(3075), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3068), 11, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [62489] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3517), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3515), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [62535] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4349), 1, anon_sym_enum, ACTIONS(4351), 1, anon_sym_class, ACTIONS(4353), 1, anon_sym_struct, ACTIONS(4355), 1, anon_sym_union, ACTIONS(4357), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3725), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(3253), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [62615] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4349), 1, anon_sym_enum, ACTIONS(4351), 1, anon_sym_class, ACTIONS(4353), 1, anon_sym_struct, ACTIONS(4355), 1, anon_sym_union, ACTIONS(4357), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3730), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(3253), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [62695] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1836), 14, anon_sym_DASH, anon_sym_PLUS, sym_primitive_type, anon_sym_sizeof, sym_true, sym_false, sym_null, sym_identifier, anon_sym_template, anon_sym_delete, anon_sym_co_await, anon_sym_new, sym_this, sym_nullptr, ACTIONS(1838), 22, sym_raw_string_literal, anon_sym_LPAREN2, anon_sym_BANG, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, sym_number_literal, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [62739] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4349), 1, anon_sym_enum, ACTIONS(4351), 1, anon_sym_class, ACTIONS(4353), 1, anon_sym_struct, ACTIONS(4355), 1, anon_sym_union, ACTIONS(4357), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3736), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(3253), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [62819] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4349), 1, anon_sym_enum, ACTIONS(4351), 1, anon_sym_class, ACTIONS(4353), 1, anon_sym_struct, ACTIONS(4355), 1, anon_sym_union, ACTIONS(4357), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3757), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(2379), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [62899] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4349), 1, anon_sym_enum, ACTIONS(4351), 1, anon_sym_class, ACTIONS(4353), 1, anon_sym_struct, ACTIONS(4355), 1, anon_sym_union, ACTIONS(4357), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3774), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(3253), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [62979] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1844), 14, anon_sym_DASH, anon_sym_PLUS, sym_primitive_type, anon_sym_sizeof, sym_true, sym_false, sym_null, sym_identifier, anon_sym_template, anon_sym_delete, anon_sym_co_await, anon_sym_new, sym_this, sym_nullptr, ACTIONS(1846), 22, sym_raw_string_literal, anon_sym_LPAREN2, anon_sym_BANG, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, sym_number_literal, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [63023] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4349), 1, anon_sym_enum, ACTIONS(4351), 1, anon_sym_class, ACTIONS(4353), 1, anon_sym_struct, ACTIONS(4355), 1, anon_sym_union, ACTIONS(4357), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3741), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(3253), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [63103] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1710), 1, anon_sym_enum, ACTIONS(1712), 1, anon_sym_class, ACTIONS(1714), 1, anon_sym_struct, ACTIONS(1716), 1, anon_sym_union, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(1722), 1, anon_sym_typename, ACTIONS(4281), 1, sym_identifier, ACTIONS(4285), 1, anon_sym_COLON_COLON, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(3219), 1, sym__type_specifier, STATE(4023), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, STATE(3253), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [63183] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2586), 1, sym_field_declaration_list, STATE(4191), 1, sym_virtual_specifier, STATE(4793), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3310), 8, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_DASH_GT, ACTIONS(3312), 21, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [63239] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2592), 1, sym_field_declaration_list, STATE(4187), 1, sym_virtual_specifier, STATE(4861), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3324), 8, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_DASH_GT, ACTIONS(3326), 21, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [63295] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4349), 1, anon_sym_enum, ACTIONS(4351), 1, anon_sym_class, ACTIONS(4353), 1, anon_sym_struct, ACTIONS(4355), 1, anon_sym_union, ACTIONS(4357), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3781), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, STATE(3253), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [63375] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2598), 1, sym_field_declaration_list, STATE(4183), 1, sym_virtual_specifier, STATE(4758), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3328), 8, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_DASH_GT, ACTIONS(3330), 21, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [63431] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1844), 14, anon_sym_DASH, anon_sym_PLUS, sym_primitive_type, anon_sym_sizeof, sym_true, sym_false, sym_null, sym_identifier, anon_sym_template, anon_sym_delete, anon_sym_co_await, anon_sym_new, sym_this, sym_nullptr, ACTIONS(1846), 22, sym_raw_string_literal, anon_sym_LPAREN2, anon_sym_BANG, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, sym_number_literal, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [63475] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4180), 12, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_GT2, ACTIONS(4178), 24, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_explicit, anon_sym_template, anon_sym_operator, [63519] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2558), 1, sym_field_declaration_list, STATE(4158), 1, sym_virtual_specifier, STATE(4707), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3348), 8, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_DASH_GT, ACTIONS(3350), 21, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [63575] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2545), 1, sym_field_declaration_list, STATE(4153), 1, sym_virtual_specifier, STATE(4702), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3344), 8, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_DASH_GT, ACTIONS(3346), 21, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [63631] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3581), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3579), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [63674] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3752), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3750), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [63717] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3850), 1, anon_sym_STAR, ACTIONS(3852), 1, anon_sym_AMP_AMP, ACTIONS(3854), 1, anon_sym_AMP, ACTIONS(3856), 1, anon_sym_LBRACK, STATE(3672), 1, sym__scope_resolution, STATE(3824), 1, sym__declarator, STATE(5456), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [63792] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3850), 1, anon_sym_STAR, ACTIONS(3852), 1, anon_sym_AMP_AMP, ACTIONS(3854), 1, anon_sym_AMP, ACTIONS(3856), 1, anon_sym_LBRACK, STATE(3672), 1, sym__scope_resolution, STATE(3828), 1, sym__declarator, STATE(5456), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [63867] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1860), 14, anon_sym_DASH, anon_sym_PLUS, sym_primitive_type, anon_sym_sizeof, sym_true, sym_false, sym_null, sym_identifier, anon_sym_template, anon_sym_delete, anon_sym_co_await, anon_sym_new, sym_this, sym_nullptr, ACTIONS(1862), 21, sym_raw_string_literal, anon_sym_LPAREN2, anon_sym_BANG, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, sym_number_literal, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [63910] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, STATE(2200), 1, sym_template_argument_list, ACTIONS(3454), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_COLON, anon_sym_DOT, ACTIONS(3452), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [63957] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3850), 1, anon_sym_STAR, ACTIONS(3852), 1, anon_sym_AMP_AMP, ACTIONS(3854), 1, anon_sym_AMP, ACTIONS(3856), 1, anon_sym_LBRACK, STATE(3672), 1, sym__scope_resolution, STATE(3825), 1, sym__declarator, STATE(5456), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [64032] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2286), 1, sym_field_declaration_list, STATE(4254), 1, sym_virtual_specifier, STATE(4786), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3330), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(3328), 25, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_extern, anon_sym___attribute__, anon_sym_LBRACK_LBRACK, anon_sym___declspec, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_virtual, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [64087] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2297), 1, sym_field_declaration_list, STATE(4250), 1, sym_virtual_specifier, STATE(4774), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3326), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(3324), 25, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_extern, anon_sym___attribute__, anon_sym_LBRACK_LBRACK, anon_sym___declspec, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_virtual, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [64142] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2265), 1, sym_field_declaration_list, STATE(4234), 1, sym_virtual_specifier, STATE(4766), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3312), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(3310), 25, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_extern, anon_sym___attribute__, anon_sym_LBRACK_LBRACK, anon_sym___declspec, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_virtual, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [64197] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3672), 1, sym__scope_resolution, STATE(3803), 1, sym__declarator, STATE(5333), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [64272] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4369), 1, sym_identifier, ACTIONS(4371), 1, anon_sym_COLON_COLON, ACTIONS(4377), 1, anon_sym_enum, ACTIONS(4379), 1, anon_sym_class, ACTIONS(4381), 1, anon_sym_struct, ACTIONS(4383), 1, anon_sym_union, ACTIONS(4385), 1, anon_sym_decltype, ACTIONS(4387), 1, anon_sym_typename, STATE(3118), 1, sym_type_qualifier, STATE(3578), 1, aux_sym_sized_type_specifier_repeat1, STATE(3579), 1, sym__type_specifier, STATE(3884), 1, sym_template_type, STATE(3925), 1, sym_qualified_type_identifier, STATE(4029), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4375), 2, sym_primitive_type, sym_auto, ACTIONS(4373), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3964), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [64351] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2289), 1, sym_field_declaration_list, STATE(4285), 1, sym_virtual_specifier, STATE(4954), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3338), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(3336), 25, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_extern, anon_sym___attribute__, anon_sym_LBRACK_LBRACK, anon_sym___declspec, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_virtual, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [64406] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, ACTIONS(4389), 1, anon_sym_SEMI, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(4196), 5, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4194), 6, anon_sym_AMP, anon_sym___based, anon_sym_LBRACK, sym_identifier, anon_sym_template, anon_sym_operator, STATE(2154), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [64465] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3306), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, sym_literal_suffix, ACTIONS(3304), 24, sym_raw_string_literal, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, anon_sym_GT2, [64508] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1884), 14, anon_sym_DASH, anon_sym_PLUS, sym_primitive_type, anon_sym_sizeof, sym_true, sym_false, sym_null, sym_identifier, anon_sym_template, anon_sym_delete, anon_sym_co_await, anon_sym_new, sym_this, sym_nullptr, ACTIONS(1886), 21, sym_raw_string_literal, anon_sym_LPAREN2, anon_sym_BANG, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, sym_number_literal, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [64551] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, ACTIONS(4391), 1, anon_sym_SEMI, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(4196), 5, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4194), 6, anon_sym_AMP, anon_sym___based, anon_sym_LBRACK, sym_identifier, anon_sym_template, anon_sym_operator, STATE(2154), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [64610] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, ACTIONS(4393), 1, anon_sym_SEMI, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(4196), 5, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4194), 6, anon_sym_AMP, anon_sym___based, anon_sym_LBRACK, sym_identifier, anon_sym_template, anon_sym_operator, STATE(2154), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [64669] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1712), 1, anon_sym_class, ACTIONS(1714), 1, anon_sym_struct, ACTIONS(1716), 1, anon_sym_union, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(4281), 1, sym_identifier, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(4395), 1, anon_sym_enum, ACTIONS(4397), 1, anon_sym_typename, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(3086), 1, sym_type_qualifier, STATE(3682), 1, sym__type_specifier, STATE(4023), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [64748] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3894), 1, anon_sym_STAR, ACTIONS(3896), 1, anon_sym_AMP_AMP, ACTIONS(3898), 1, anon_sym_AMP, STATE(3672), 1, sym__scope_resolution, STATE(3742), 1, sym__declarator, STATE(5088), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [64823] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3672), 1, sym__scope_resolution, STATE(3805), 1, sym__declarator, STATE(5333), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [64898] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2281), 1, sym_field_declaration_list, STATE(4270), 1, sym_virtual_specifier, STATE(4933), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3322), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(3320), 25, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_extern, anon_sym___attribute__, anon_sym_LBRACK_LBRACK, anon_sym___declspec, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_virtual, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [64953] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, ACTIONS(4399), 1, anon_sym_SEMI, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(4196), 5, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4194), 6, anon_sym_AMP, anon_sym___based, anon_sym_LBRACK, sym_identifier, anon_sym_template, anon_sym_operator, STATE(2154), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [65012] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3294), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, sym_literal_suffix, ACTIONS(3292), 24, sym_raw_string_literal, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, anon_sym_GT2, [65055] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(4401), 1, anon_sym_COLON, STATE(2249), 1, sym_enumerator_list, STATE(2531), 1, sym__enum_base_clause, ACTIONS(3492), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3490), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [65104] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(2486), 1, anon_sym_LPAREN2, ACTIONS(2488), 1, anon_sym_STAR, ACTIONS(2490), 1, anon_sym_AMP_AMP, ACTIONS(2492), 1, anon_sym_AMP, ACTIONS(3096), 1, sym_identifier, ACTIONS(3245), 1, anon_sym_LBRACK, ACTIONS(3288), 1, anon_sym_COLON_COLON, ACTIONS(4277), 1, anon_sym_RPAREN, STATE(3264), 1, sym_parameter_list, STATE(3666), 1, sym__scope_resolution, STATE(3929), 1, sym__declarator, STATE(4092), 1, sym__abstract_declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [65183] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3416), 12, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_GT2, ACTIONS(3418), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [65226] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4307), 1, anon_sym_LT, STATE(1934), 1, sym_template_argument_list, ACTIONS(2953), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_COLON, anon_sym_DOT, ACTIONS(2961), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [65275] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(2410), 1, anon_sym_enum, ACTIONS(2412), 1, anon_sym_class, ACTIONS(2414), 1, anon_sym_struct, ACTIONS(2416), 1, anon_sym_union, ACTIONS(2418), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2302), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3033), 1, sym_type_qualifier, STATE(3179), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(2408), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [65354] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, ACTIONS(4403), 1, anon_sym_SEMI, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(4196), 5, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4194), 6, anon_sym_AMP, anon_sym___based, anon_sym_LBRACK, sym_identifier, anon_sym_template, anon_sym_operator, STATE(2154), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [65413] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2306), 1, anon_sym_enum, ACTIONS(2308), 1, anon_sym_class, ACTIONS(2310), 1, anon_sym_struct, ACTIONS(2312), 1, anon_sym_union, ACTIONS(2326), 1, anon_sym_decltype, ACTIONS(2330), 1, anon_sym_typename, ACTIONS(4365), 1, sym_identifier, ACTIONS(4367), 1, anon_sym_COLON_COLON, STATE(1953), 1, aux_sym_sized_type_specifier_repeat1, STATE(2371), 1, sym_template_type, STATE(2499), 1, sym_qualified_type_identifier, STATE(2896), 1, sym_type_qualifier, STATE(3548), 1, sym__type_specifier, STATE(4016), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(2328), 2, sym_primitive_type, sym_auto, ACTIONS(2302), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2501), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [65492] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1756), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(1758), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_else, anon_sym_while, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_catch, [65535] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3919), 1, sym_identifier, ACTIONS(3921), 1, anon_sym_STAR, ACTIONS(3923), 1, anon_sym_AMP_AMP, ACTIONS(3925), 1, anon_sym_AMP, ACTIONS(3927), 1, anon_sym_COLON_COLON, STATE(3661), 1, sym__scope_resolution, STATE(4037), 1, sym__declarator, STATE(5190), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [65610] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3802), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3800), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [65653] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3551), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3549), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [65696] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3555), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3553), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [65739] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(4405), 1, anon_sym_COLON, STATE(2245), 1, sym__enum_base_clause, STATE(2261), 1, sym_enumerator_list, ACTIONS(3473), 11, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_GT2, ACTIONS(3475), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [65790] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3563), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3561), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [65833] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3569), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3567), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [65876] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2293), 1, sym_field_declaration_list, STATE(4294), 1, sym_virtual_specifier, STATE(4969), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3334), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(3332), 25, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_extern, anon_sym___attribute__, anon_sym_LBRACK_LBRACK, anon_sym___declspec, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_virtual, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [65931] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3577), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3575), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [65974] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3585), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3583), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [66017] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3589), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3587), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [66060] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3593), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3591), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [66103] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3597), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3595), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [66146] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3601), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3599), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [66189] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3609), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3607), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [66232] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1710), 1, anon_sym_enum, ACTIONS(1712), 1, anon_sym_class, ACTIONS(1714), 1, anon_sym_struct, ACTIONS(1716), 1, anon_sym_union, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(1722), 1, anon_sym_typename, ACTIONS(4281), 1, sym_identifier, ACTIONS(4285), 1, anon_sym_COLON_COLON, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(2933), 1, sym_type_qualifier, STATE(3571), 1, sym__type_specifier, STATE(4023), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [66311] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3617), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3615), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [66354] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3621), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3619), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [66397] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3631), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3629), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [66440] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3635), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3633), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [66483] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3643), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3641), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [66526] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3647), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3645), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [66569] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3651), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3649), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [66612] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3655), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3653), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [66655] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3659), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3657), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [66698] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3663), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3661), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [66741] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3667), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3665), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [66784] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3675), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3673), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [66827] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3724), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3722), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [66870] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3728), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3726), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [66913] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3672), 1, sym__scope_resolution, STATE(3800), 1, sym__declarator, STATE(5333), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [66988] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2279), 1, sym_field_declaration_list, STATE(4340), 1, sym_virtual_specifier, STATE(4951), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3350), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(3348), 25, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_extern, anon_sym___attribute__, anon_sym_LBRACK_LBRACK, anon_sym___declspec, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_virtual, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [67043] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(4405), 1, anon_sym_COLON, STATE(2078), 1, sym__enum_base_clause, STATE(2262), 1, sym_enumerator_list, ACTIONS(3490), 11, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_GT2, ACTIONS(3492), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [67094] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, ACTIONS(4407), 1, anon_sym_SEMI, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(4196), 5, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4194), 6, anon_sym_AMP, anon_sym___based, anon_sym_LBRACK, sym_identifier, anon_sym_template, anon_sym_operator, STATE(2154), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [67153] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3778), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3776), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [67196] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3096), 1, sym_identifier, ACTIONS(3288), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, STATE(3666), 1, sym__scope_resolution, STATE(3981), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [67271] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3798), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3796), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [67314] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3774), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3772), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [67357] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3756), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3754), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [67400] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1397), 1, anon_sym_enum, ACTIONS(1399), 1, anon_sym_class, ACTIONS(1401), 1, anon_sym_struct, ACTIONS(1403), 1, anon_sym_union, ACTIONS(1405), 1, anon_sym_decltype, ACTIONS(2651), 1, sym_identifier, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4411), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2555), 1, sym_qualified_type_identifier, STATE(2771), 1, aux_sym_sized_type_specifier_repeat1, STATE(2879), 1, sym__type_specifier, STATE(2904), 1, sym_type_qualifier, STATE(4035), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1395), 2, sym_primitive_type, sym_auto, ACTIONS(4409), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2577), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [67479] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(2412), 1, anon_sym_class, ACTIONS(2414), 1, anon_sym_struct, ACTIONS(2416), 1, anon_sym_union, ACTIONS(4413), 1, anon_sym_enum, ACTIONS(4415), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2302), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(2894), 1, sym_type_qualifier, STATE(3196), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(2408), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [67558] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3748), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3746), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [67601] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3744), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3742), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [67644] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3736), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3734), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [67687] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3706), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3704), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [67730] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3605), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3603), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [67773] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3806), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3804), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [67816] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3790), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3788), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [67859] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3786), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3784), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [67902] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3770), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3768), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [67945] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3760), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3758), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [67988] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3894), 1, anon_sym_STAR, ACTIONS(3896), 1, anon_sym_AMP_AMP, ACTIONS(3898), 1, anon_sym_AMP, STATE(3672), 1, sym__scope_resolution, STATE(3739), 1, sym__declarator, STATE(5088), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [68063] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2301), 1, sym_field_declaration_list, STATE(4343), 1, sym_virtual_specifier, STATE(4956), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3346), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(3344), 25, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_extern, anon_sym___attribute__, anon_sym_LBRACK_LBRACK, anon_sym___declspec, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_virtual, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [68118] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2310), 1, sym_field_declaration_list, STATE(4346), 1, sym_virtual_specifier, STATE(4963), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3342), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(3340), 25, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_extern, anon_sym___attribute__, anon_sym_LBRACK_LBRACK, anon_sym___declspec, anon_sym_EQ, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_virtual, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [68173] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3919), 1, sym_identifier, ACTIONS(3921), 1, anon_sym_STAR, ACTIONS(3923), 1, anon_sym_AMP_AMP, ACTIONS(3925), 1, anon_sym_AMP, ACTIONS(3927), 1, anon_sym_COLON_COLON, STATE(3661), 1, sym__scope_resolution, STATE(4031), 1, sym__declarator, STATE(5190), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [68248] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2651), 1, sym_identifier, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(4417), 1, anon_sym_enum, ACTIONS(4419), 1, anon_sym_class, ACTIONS(4421), 1, anon_sym_struct, ACTIONS(4423), 1, anon_sym_union, ACTIONS(4425), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2302), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3017), 1, sym__type_specifier, STATE(3078), 1, sym_type_qualifier, STATE(4015), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(2408), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [68327] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2651), 1, sym_identifier, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(4419), 1, anon_sym_class, ACTIONS(4421), 1, anon_sym_struct, ACTIONS(4423), 1, anon_sym_union, ACTIONS(4427), 1, anon_sym_enum, ACTIONS(4429), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2302), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(2952), 1, sym_type_qualifier, STATE(2956), 1, sym__type_specifier, STATE(4015), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(2408), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(57), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [68406] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3559), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3557), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [68449] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3683), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3681), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [68492] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3782), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3780), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [68535] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3096), 1, sym_identifier, ACTIONS(3288), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, STATE(3666), 1, sym__scope_resolution, STATE(3908), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [68610] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3679), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3677), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [68653] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3671), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3669), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [68696] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3627), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3625), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [68739] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3639), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3637), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [68782] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3694), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3692), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [68825] = 5, ACTIONS(3), 1, sym_comment, STATE(2516), 1, sym__enum_base_clause, STATE(2596), 1, sym_enumerator_list, ACTIONS(3490), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3492), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [68872] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3710), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3708), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [68915] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3732), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3730), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [68958] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3718), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3716), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [69001] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3687), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3685), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [69044] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3740), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3738), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [69087] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3894), 1, anon_sym_STAR, ACTIONS(3896), 1, anon_sym_AMP_AMP, ACTIONS(3898), 1, anon_sym_AMP, STATE(3672), 1, sym__scope_resolution, STATE(3729), 1, sym__declarator, STATE(5088), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [69162] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3714), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3712), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [69205] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3702), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3700), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [69248] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3698), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3696), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [69291] = 5, ACTIONS(3), 1, sym_comment, STATE(2523), 1, sym__enum_base_clause, STATE(2582), 1, sym_enumerator_list, ACTIONS(3473), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3475), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [69338] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3547), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3545), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [69381] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3517), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3515), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [69424] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(3100), 1, anon_sym___attribute__, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3110), 1, anon_sym_virtual, ACTIONS(4431), 1, anon_sym_SEMI, ACTIONS(3098), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(4196), 5, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, ACTIONS(3108), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4194), 6, anon_sym_AMP, anon_sym___based, anon_sym_LBRACK, sym_identifier, anon_sym_template, anon_sym_operator, STATE(2154), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [69483] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3517), 11, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_const, anon_sym_DOT, ACTIONS(3515), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [69526] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3919), 1, sym_identifier, ACTIONS(3921), 1, anon_sym_STAR, ACTIONS(3923), 1, anon_sym_AMP_AMP, ACTIONS(3925), 1, anon_sym_AMP, ACTIONS(3927), 1, anon_sym_COLON_COLON, STATE(3661), 1, sym__scope_resolution, STATE(4045), 1, sym__declarator, STATE(5190), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [69601] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1749), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(1751), 27, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_else, anon_sym_while, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_catch, [69644] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3096), 1, sym_identifier, ACTIONS(3288), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, STATE(3666), 1, sym__scope_resolution, STATE(3905), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [69719] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(4401), 1, anon_sym_COLON, STATE(2110), 1, sym_enumerator_list, STATE(2509), 1, sym__enum_base_clause, ACTIONS(3475), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3473), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [69768] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4433), 1, anon_sym_LPAREN2, ACTIONS(4435), 1, anon_sym_LBRACK, STATE(2560), 1, sym_new_declarator, STATE(2615), 2, sym_argument_list, sym_initializer_list, ACTIONS(3404), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3402), 20, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [69820] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4433), 1, anon_sym_LPAREN2, ACTIONS(4435), 1, anon_sym_LBRACK, STATE(2606), 1, sym_new_declarator, STATE(2640), 2, sym_argument_list, sym_initializer_list, ACTIONS(3408), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3406), 20, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [69872] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4440), 1, anon_sym___attribute__, ACTIONS(4443), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4446), 1, anon_sym___declspec, ACTIONS(4452), 1, anon_sym_virtual, ACTIONS(4233), 4, anon_sym_AMP, anon_sym___based, sym_identifier, anon_sym_operator, ACTIONS(4437), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(4449), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4235), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, STATE(2508), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [69928] = 4, ACTIONS(3), 1, sym_comment, STATE(2073), 1, sym_enumerator_list, ACTIONS(3509), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3507), 25, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [69972] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4457), 1, anon_sym___attribute__, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4461), 1, anon_sym___declspec, ACTIONS(4465), 1, anon_sym_virtual, ACTIONS(4226), 4, anon_sym_AMP, anon_sym___based, sym_identifier, anon_sym_operator, ACTIONS(4455), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(4463), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4228), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, STATE(2521), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [70028] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4467), 1, anon_sym_SEMI, STATE(2281), 1, sym_field_declaration_list, STATE(4270), 1, sym_virtual_specifier, STATE(4933), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3320), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3322), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [70084] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4467), 1, anon_sym_SEMI, STATE(2289), 1, sym_field_declaration_list, STATE(4285), 1, sym_virtual_specifier, STATE(4954), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3336), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3338), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [70140] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4433), 1, anon_sym_LPAREN2, ACTIONS(4435), 1, anon_sym_LBRACK, STATE(2609), 1, sym_new_declarator, STATE(2616), 2, sym_argument_list, sym_initializer_list, ACTIONS(3391), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3387), 20, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [70192] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4467), 1, anon_sym_SEMI, STATE(2293), 1, sym_field_declaration_list, STATE(4294), 1, sym_virtual_specifier, STATE(4969), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3332), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3334), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [70248] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4469), 1, anon_sym_SEMI, STATE(2293), 1, sym_field_declaration_list, STATE(4294), 1, sym_virtual_specifier, STATE(4969), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3332), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3334), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [70304] = 4, ACTIONS(3), 1, sym_comment, STATE(2607), 1, sym_enumerator_list, ACTIONS(3511), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3513), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [70348] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4469), 1, anon_sym_SEMI, STATE(2289), 1, sym_field_declaration_list, STATE(4285), 1, sym_virtual_specifier, STATE(4954), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3336), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3338), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [70404] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4435), 1, anon_sym_LBRACK, STATE(2537), 1, sym_new_declarator, ACTIONS(3536), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3534), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [70450] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4471), 1, anon_sym_LT, STATE(2202), 1, sym_template_argument_list, ACTIONS(2991), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_GT_GT, anon_sym_COLON, anon_sym_DOT, ACTIONS(2998), 21, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [70498] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4469), 1, anon_sym_SEMI, STATE(2281), 1, sym_field_declaration_list, STATE(4270), 1, sym_virtual_specifier, STATE(4933), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3320), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3322), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [70554] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4457), 1, anon_sym___attribute__, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4461), 1, anon_sym___declspec, ACTIONS(4465), 1, anon_sym_virtual, ACTIONS(4182), 4, anon_sym_AMP, anon_sym___based, sym_identifier, anon_sym_operator, ACTIONS(4455), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(4463), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4184), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, STATE(2508), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [70610] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4457), 1, anon_sym___attribute__, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4461), 1, anon_sym___declspec, ACTIONS(4465), 1, anon_sym_virtual, ACTIONS(4222), 4, anon_sym_AMP, anon_sym___based, sym_identifier, anon_sym_operator, ACTIONS(4455), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(4463), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4224), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, STATE(2508), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [70666] = 4, ACTIONS(3), 1, sym_comment, STATE(2578), 1, sym_enumerator_list, ACTIONS(3507), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3509), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [70710] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4474), 1, anon_sym_SEMI, STATE(2281), 1, sym_field_declaration_list, STATE(4270), 1, sym_virtual_specifier, STATE(4933), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3320), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3322), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [70766] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4474), 1, anon_sym_SEMI, STATE(2289), 1, sym_field_declaration_list, STATE(4285), 1, sym_virtual_specifier, STATE(4954), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3336), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3338), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [70822] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4474), 1, anon_sym_SEMI, STATE(2293), 1, sym_field_declaration_list, STATE(4294), 1, sym_virtual_specifier, STATE(4969), 1, sym_base_class_clause, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(3332), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3334), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [70878] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4457), 1, anon_sym___attribute__, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4461), 1, anon_sym___declspec, ACTIONS(4465), 1, anon_sym_virtual, ACTIONS(4194), 4, anon_sym_AMP, anon_sym___based, sym_identifier, anon_sym_operator, ACTIONS(4455), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(4463), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4196), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, STATE(2522), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [70934] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4476), 1, anon_sym_LT, STATE(2202), 1, sym_template_argument_list, ACTIONS(3371), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_GT_GT, anon_sym_COLON, anon_sym_DOT, ACTIONS(2979), 21, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [70982] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4433), 1, anon_sym_LPAREN2, ACTIONS(4435), 1, anon_sym_LBRACK, STATE(2579), 1, sym_new_declarator, STATE(2650), 2, sym_argument_list, sym_initializer_list, ACTIONS(3422), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3420), 20, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [71034] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3073), 2, anon_sym_COLON_COLON, anon_sym_LBRACE, ACTIONS(3075), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_COLON, anon_sym_DOT, ACTIONS(3068), 23, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [71078] = 4, ACTIONS(3), 1, sym_comment, STATE(2085), 1, sym_enumerator_list, ACTIONS(3513), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3511), 25, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [71122] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3669), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3671), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [71163] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3575), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3577), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [71204] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3567), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3569), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [71245] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(4478), 1, sym_identifier, ACTIONS(4480), 1, anon_sym_LPAREN2, ACTIONS(4482), 1, anon_sym_STAR, ACTIONS(4484), 1, anon_sym_AMP_AMP, ACTIONS(4486), 1, anon_sym_AMP, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(4047), 1, sym__field_declarator, STATE(5243), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(3191), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(3192), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3876), 8, sym_parenthesized_field_declarator, sym_attributed_field_declarator, sym_pointer_field_declarator, sym_function_field_declarator, sym_array_field_declarator, sym_reference_field_declarator, sym_template_method, sym_operator_name, [71314] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3738), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3740), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [71355] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3794), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3792), 25, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [71396] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3704), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3706), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [71437] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3696), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3698), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [71478] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(4478), 1, sym_identifier, ACTIONS(4480), 1, anon_sym_LPAREN2, ACTIONS(4482), 1, anon_sym_STAR, ACTIONS(4484), 1, anon_sym_AMP_AMP, ACTIONS(4486), 1, anon_sym_AMP, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(4046), 1, sym__field_declarator, STATE(5243), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(3191), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(3195), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3876), 8, sym_parenthesized_field_declarator, sym_attributed_field_declarator, sym_pointer_field_declarator, sym_function_field_declarator, sym_array_field_declarator, sym_reference_field_declarator, sym_template_method, sym_operator_name, [71547] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(4480), 1, anon_sym_LPAREN2, ACTIONS(4488), 1, sym_identifier, ACTIONS(4490), 1, anon_sym_STAR, ACTIONS(4492), 1, anon_sym_AMP_AMP, ACTIONS(4494), 1, anon_sym_AMP, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3726), 1, sym__field_declarator, STATE(5140), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(2571), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(3186), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3876), 8, sym_parenthesized_field_declarator, sym_attributed_field_declarator, sym_pointer_field_declarator, sym_function_field_declarator, sym_array_field_declarator, sym_reference_field_declarator, sym_template_method, sym_operator_name, [71616] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3298), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3296), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [71657] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3734), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3736), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [71698] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3561), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3563), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [71739] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3742), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3744), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [71780] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4435), 1, anon_sym_LBRACK, ACTIONS(4496), 1, anon_sym_LPAREN2, STATE(2621), 1, sym_new_declarator, STATE(2615), 2, sym_argument_list, sym_initializer_list, ACTIONS(3404), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3402), 19, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [71831] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3302), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3300), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [71872] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3746), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3748), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [71913] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(4480), 1, anon_sym_LPAREN2, ACTIONS(4488), 1, sym_identifier, ACTIONS(4490), 1, anon_sym_STAR, ACTIONS(4492), 1, anon_sym_AMP_AMP, ACTIONS(4494), 1, anon_sym_AMP, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3726), 1, sym__field_declarator, STATE(5140), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(3186), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(3191), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3876), 8, sym_parenthesized_field_declarator, sym_attributed_field_declarator, sym_pointer_field_declarator, sym_function_field_declarator, sym_array_field_declarator, sym_reference_field_declarator, sym_template_method, sym_operator_name, [71982] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3700), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3702), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [72023] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3607), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3609), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [72064] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3599), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3601), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [72105] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3750), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3752), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [72146] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3587), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3589), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [72187] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3515), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3517), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [72228] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3545), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3547), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [72269] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(4478), 1, sym_identifier, ACTIONS(4480), 1, anon_sym_LPAREN2, ACTIONS(4482), 1, anon_sym_STAR, ACTIONS(4484), 1, anon_sym_AMP_AMP, ACTIONS(4486), 1, anon_sym_AMP, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(4047), 1, sym__field_declarator, STATE(5243), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(2540), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(3192), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3876), 8, sym_parenthesized_field_declarator, sym_attributed_field_declarator, sym_pointer_field_declarator, sym_function_field_declarator, sym_array_field_declarator, sym_reference_field_declarator, sym_template_method, sym_operator_name, [72338] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3754), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3756), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [72379] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4435), 1, anon_sym_LBRACK, ACTIONS(4496), 1, anon_sym_LPAREN2, STATE(2629), 1, sym_new_declarator, STATE(2616), 2, sym_argument_list, sym_initializer_list, ACTIONS(3391), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3387), 19, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [72430] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4433), 1, anon_sym_LPAREN2, STATE(2652), 2, sym_argument_list, sym_initializer_list, ACTIONS(3438), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3436), 21, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [72477] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3685), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3687), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [72518] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3716), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3718), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [72559] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3772), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3774), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [72600] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3583), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3585), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [72641] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3579), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3581), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [72682] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3796), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3798), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [72723] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3553), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3555), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [72764] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3549), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3551), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [72805] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4435), 1, anon_sym_LBRACK, ACTIONS(4496), 1, anon_sym_LPAREN2, STATE(2659), 1, sym_new_declarator, STATE(2640), 2, sym_argument_list, sym_initializer_list, ACTIONS(3408), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3406), 19, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [72856] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3595), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3597), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [72897] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(4480), 1, anon_sym_LPAREN2, ACTIONS(4488), 1, sym_identifier, ACTIONS(4490), 1, anon_sym_STAR, ACTIONS(4492), 1, anon_sym_AMP_AMP, ACTIONS(4494), 1, anon_sym_AMP, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3749), 1, sym__field_declarator, STATE(5140), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(3188), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(3191), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3876), 8, sym_parenthesized_field_declarator, sym_attributed_field_declarator, sym_pointer_field_declarator, sym_function_field_declarator, sym_array_field_declarator, sym_reference_field_declarator, sym_template_method, sym_operator_name, [72966] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(4480), 1, anon_sym_LPAREN2, ACTIONS(4488), 1, sym_identifier, ACTIONS(4490), 1, anon_sym_STAR, ACTIONS(4492), 1, anon_sym_AMP_AMP, ACTIONS(4494), 1, anon_sym_AMP, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3735), 1, sym__field_declarator, STATE(5140), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(2549), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(3185), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3876), 8, sym_parenthesized_field_declarator, sym_attributed_field_declarator, sym_pointer_field_declarator, sym_function_field_declarator, sym_array_field_declarator, sym_reference_field_declarator, sym_template_method, sym_operator_name, [73035] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3681), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3683), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [73076] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3591), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3593), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [73117] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4498), 1, sym_literal_suffix, ACTIONS(2963), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(2955), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [73160] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(4478), 1, sym_identifier, ACTIONS(4480), 1, anon_sym_LPAREN2, ACTIONS(4482), 1, anon_sym_STAR, ACTIONS(4484), 1, anon_sym_AMP_AMP, ACTIONS(4486), 1, anon_sym_AMP, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(4012), 1, sym__field_declarator, STATE(5243), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(2535), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(3189), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3876), 8, sym_parenthesized_field_declarator, sym_attributed_field_declarator, sym_pointer_field_declarator, sym_function_field_declarator, sym_array_field_declarator, sym_reference_field_declarator, sym_template_method, sym_operator_name, [73229] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3515), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3517), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [73270] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3788), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3790), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [73311] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4433), 1, anon_sym_LPAREN2, STATE(2651), 2, sym_argument_list, sym_initializer_list, ACTIONS(3458), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3456), 21, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [73358] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3730), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3732), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [73399] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3708), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3710), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [73440] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3692), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3694), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [73481] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3800), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3802), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [73522] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3637), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3639), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [73563] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3615), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3617), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [73604] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3619), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3621), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [73645] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3625), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3627), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [73686] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3784), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3786), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [73727] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3629), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3631), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [73768] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3633), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3635), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [73809] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3641), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3643), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [73850] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3645), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3647), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [73891] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3776), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3778), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [73932] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3649), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3651), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [73973] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3653), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3655), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [74014] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3768), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3770), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [74055] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3657), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3659), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [74096] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3661), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3663), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [74137] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3804), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3806), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [74178] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3677), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3679), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [74219] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3665), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3667), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [74260] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4435), 1, anon_sym_LBRACK, ACTIONS(4496), 1, anon_sym_LPAREN2, STATE(2636), 1, sym_new_declarator, STATE(2650), 2, sym_argument_list, sym_initializer_list, ACTIONS(3422), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3420), 19, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [74311] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3673), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3675), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [74352] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3573), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3571), 25, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, sym_literal_suffix, [74393] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3758), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3760), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [74434] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4433), 1, anon_sym_LPAREN2, STATE(2626), 2, sym_argument_list, sym_initializer_list, ACTIONS(3446), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3444), 21, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [74481] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3722), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3724), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [74522] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3726), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3728), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [74563] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4433), 1, anon_sym_LPAREN2, STATE(2622), 2, sym_argument_list, sym_initializer_list, ACTIONS(3471), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3469), 21, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [74610] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3603), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3605), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [74651] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3557), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3559), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [74692] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3712), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3714), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [74733] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3780), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3782), 23, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, [74774] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3888), 7, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3886), 20, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, [74824] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4053), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(4051), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [74864] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4011), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(4009), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [74904] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(2456), 1, anon_sym_LBRACE, ACTIONS(4500), 1, anon_sym_LPAREN2, ACTIONS(4502), 1, anon_sym_LBRACK, STATE(2673), 1, sym_new_declarator, STATE(3090), 2, sym_argument_list, sym_initializer_list, ACTIONS(3391), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3387), 16, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [74954] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4015), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(1936), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [74994] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3999), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3997), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [75034] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(2456), 1, anon_sym_LBRACE, ACTIONS(4500), 1, anon_sym_LPAREN2, ACTIONS(4502), 1, anon_sym_LBRACK, STATE(2670), 1, sym_new_declarator, STATE(3013), 2, sym_argument_list, sym_initializer_list, ACTIONS(3404), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3402), 16, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [75084] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4496), 1, anon_sym_LPAREN2, STATE(2652), 2, sym_argument_list, sym_initializer_list, ACTIONS(3438), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3436), 20, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [75130] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4025), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(4023), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [75170] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3302), 11, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_GT2, ACTIONS(3300), 21, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_explicit, anon_sym_template, anon_sym_operator, [75210] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4105), 1, anon_sym_LT, ACTIONS(4363), 1, anon_sym_EQ, STATE(2200), 1, sym_template_argument_list, ACTIONS(4361), 2, anon_sym_COMMA, anon_sym_GT2, ACTIONS(2961), 6, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACK_LBRACK, ACTIONS(2953), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [75260] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3410), 1, anon_sym_LBRACE, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3515), 10, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_EQ, ACTIONS(3517), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [75304] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4007), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(4005), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [75344] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(2456), 1, anon_sym_LBRACE, ACTIONS(4500), 1, anon_sym_LPAREN2, ACTIONS(4502), 1, anon_sym_LBRACK, STATE(2675), 1, sym_new_declarator, STATE(3052), 2, sym_argument_list, sym_initializer_list, ACTIONS(3408), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3406), 16, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [75394] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(4504), 1, anon_sym_COLON, STATE(2470), 1, sym_enumerator_list, STATE(2702), 1, sym__enum_base_clause, ACTIONS(3492), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3490), 19, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [75440] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4496), 1, anon_sym_LPAREN2, STATE(2622), 2, sym_argument_list, sym_initializer_list, ACTIONS(3471), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3469), 20, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [75486] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4045), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(4043), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [75526] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4049), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(4047), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [75566] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(4504), 1, anon_sym_COLON, STATE(2486), 1, sym_enumerator_list, STATE(2703), 1, sym__enum_base_clause, ACTIONS(3475), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3473), 19, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [75612] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4105), 1, anon_sym_LT, ACTIONS(4506), 1, anon_sym_LBRACK, STATE(2672), 1, sym_template_argument_list, ACTIONS(2976), 3, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, ACTIONS(2961), 6, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_EQ, ACTIONS(2953), 19, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [75662] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3969), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3967), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [75702] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3995), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3993), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [75742] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4496), 1, anon_sym_LPAREN2, STATE(2651), 2, sym_argument_list, sym_initializer_list, ACTIONS(3458), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3456), 20, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [75788] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3884), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3882), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [75828] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3876), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3874), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [75868] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3955), 7, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3953), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, [75920] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3935), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3933), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [75960] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4511), 1, sym_identifier, ACTIONS(4516), 1, sym_primitive_type, STATE(2238), 1, aux_sym_sized_type_specifier_repeat1, ACTIONS(4514), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(3280), 8, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, ACTIONS(3282), 17, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_virtual, anon_sym_operator, [76008] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(1353), 1, anon_sym_enum, ACTIONS(1355), 1, anon_sym_class, ACTIONS(1357), 1, anon_sym_struct, ACTIONS(1359), 1, anon_sym_union, ACTIONS(1361), 1, anon_sym_typename, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(4518), 1, sym_identifier, ACTIONS(4520), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4524), 1, anon_sym_EQ, STATE(2092), 1, sym_template_type, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(2319), 1, sym__type_specifier, STATE(4015), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(4522), 2, anon_sym_COMMA, anon_sym_GT2, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [76086] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4057), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(4055), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [76126] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4192), 11, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_GT2, ACTIONS(4190), 21, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_explicit, anon_sym_template, anon_sym_operator, [76166] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3298), 11, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_GT2, ACTIONS(3296), 21, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_explicit, anon_sym_template, anon_sym_operator, [76206] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3410), 1, anon_sym_LBRACE, ACTIONS(3515), 11, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_EQ, ACTIONS(3517), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [76248] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(2456), 1, anon_sym_LBRACE, ACTIONS(4500), 1, anon_sym_LPAREN2, ACTIONS(4502), 1, anon_sym_LBRACK, STATE(2693), 1, sym_new_declarator, STATE(3010), 2, sym_argument_list, sym_initializer_list, ACTIONS(3422), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3420), 16, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [76298] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3880), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3878), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [76338] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3987), 7, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3985), 20, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, [76388] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3981), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3979), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [76428] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4033), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(4031), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [76468] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3977), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3975), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [76508] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3864), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3862), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [76548] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3500), 11, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_GT2, ACTIONS(3498), 21, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_explicit, anon_sym_template, anon_sym_operator, [76588] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3832), 7, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3808), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, [76640] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3002), 1, anon_sym_LBRACK, ACTIONS(4105), 1, anon_sym_LT, STATE(2672), 1, sym_template_argument_list, ACTIONS(2995), 3, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, ACTIONS(2998), 6, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_EQ, ACTIONS(2991), 19, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [76690] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3906), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3904), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [76730] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4526), 1, anon_sym_LPAREN2, STATE(1916), 1, sym_argument_list, ACTIONS(3515), 10, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, anon_sym_EQ, ACTIONS(3517), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [76774] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4496), 1, anon_sym_LPAREN2, STATE(2626), 2, sym_argument_list, sym_initializer_list, ACTIONS(3446), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3444), 20, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [76820] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3902), 7, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3900), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_QMARK, [76872] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2963), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(2955), 24, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [76912] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, STATE(2200), 1, sym_template_argument_list, ACTIONS(3454), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3452), 19, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [76955] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(3832), 4, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3808), 15, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, [77012] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3971), 6, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, [77085] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(3832), 6, anon_sym_DASH, anon_sym_PLUS, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3808), 15, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, [77140] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(4553), 1, anon_sym_COLON, STATE(2245), 1, sym__enum_base_clause, STATE(2261), 1, sym_enumerator_list, ACTIONS(3475), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(3473), 24, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_extern, anon_sym___attribute__, anon_sym_LBRACK_LBRACK, anon_sym___declspec, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_noexcept, anon_sym_throw, [77187] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(4553), 1, anon_sym_COLON, STATE(2078), 1, sym__enum_base_clause, STATE(2262), 1, sym_enumerator_list, ACTIONS(3492), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(3490), 24, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_extern, anon_sym___attribute__, anon_sym_LBRACK_LBRACK, anon_sym___declspec, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_virtual, anon_sym_noexcept, anon_sym_throw, [77234] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3842), 4, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, anon_sym_RBRACE, [77311] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, STATE(1863), 1, sym_argument_list, ACTIONS(3832), 2, anon_sym_PIPE, anon_sym_AMP, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3808), 11, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, [77374] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2456), 1, anon_sym_LBRACE, ACTIONS(4500), 1, anon_sym_LPAREN2, STATE(3009), 2, sym_argument_list, sym_initializer_list, ACTIONS(3438), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3436), 17, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [77419] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3937), 6, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, [77492] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(3068), 1, anon_sym_SEMI, ACTIONS(3077), 1, anon_sym_LBRACK, ACTIONS(3070), 3, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, ACTIONS(3073), 7, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_EQ, ACTIONS(3066), 19, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [77537] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2456), 1, anon_sym_LBRACE, ACTIONS(4500), 1, anon_sym_LPAREN2, STATE(3028), 2, sym_argument_list, sym_initializer_list, ACTIONS(3471), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3469), 17, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [77582] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, STATE(1863), 1, sym_argument_list, ACTIONS(3832), 2, anon_sym_PIPE, anon_sym_AMP, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3808), 9, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, [77647] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2456), 1, anon_sym_LBRACE, ACTIONS(4500), 1, anon_sym_LPAREN2, STATE(3088), 2, sym_argument_list, sym_initializer_list, ACTIONS(3446), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3444), 17, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [77692] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3808), 7, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, [77763] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4476), 1, anon_sym_LT, STATE(2202), 1, sym_template_argument_list, ACTIONS(2953), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2961), 19, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [77808] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4017), 5, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, [77883] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3910), 4, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3908), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, [77942] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3832), 1, anon_sym_PIPE, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4543), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3808), 9, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, [78009] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3890), 6, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, [78082] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3832), 4, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3808), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, [78141] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4001), 6, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, [78214] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(4463), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4565), 1, anon_sym___attribute__, ACTIONS(4567), 1, anon_sym_LBRACK, ACTIONS(4571), 1, anon_sym_DASH_GT, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, STATE(3217), 2, sym_attribute_specifier, aux_sym_function_declarator_repeat1, ACTIONS(4569), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4559), 7, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, STATE(3003), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [78275] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3832), 1, anon_sym_PIPE, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3808), 8, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, [78344] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(4463), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4565), 1, anon_sym___attribute__, ACTIONS(4571), 1, anon_sym_DASH_GT, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(4579), 1, anon_sym_LBRACK, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, STATE(2684), 2, sym_attribute_specifier, aux_sym_function_declarator_repeat1, ACTIONS(4569), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4577), 7, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, STATE(2887), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [78405] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(4581), 1, anon_sym_COLON, STATE(2078), 1, sym__enum_base_clause, STATE(2262), 1, sym_enumerator_list, ACTIONS(3490), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3492), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [78452] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4583), 1, anon_sym_COMMA, ACTIONS(4585), 1, anon_sym_SEMI, ACTIONS(4587), 1, anon_sym_RBRACE, STATE(1863), 1, sym_argument_list, STATE(4405), 1, aux_sym_initializer_list_repeat1, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [78535] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(4463), 1, anon_sym_const, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4591), 1, anon_sym_STAR, ACTIONS(4593), 1, anon_sym_AMP_AMP, ACTIONS(4595), 1, anon_sym_AMP, ACTIONS(4597), 1, anon_sym_LBRACK, STATE(3132), 1, sym_parameter_list, STATE(3269), 1, sym__abstract_declarator, STATE(3211), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(4569), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(3720), 11, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [78594] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(4463), 1, anon_sym_const, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4591), 1, anon_sym_STAR, ACTIONS(4593), 1, anon_sym_AMP_AMP, ACTIONS(4595), 1, anon_sym_AMP, ACTIONS(4597), 1, anon_sym_LBRACK, STATE(3132), 1, sym_parameter_list, STATE(3285), 1, sym__abstract_declarator, STATE(2689), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(4569), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(3235), 11, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [78653] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(3308), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3531), 1, anon_sym_LBRACK, ACTIONS(3525), 2, anon_sym_RPAREN, anon_sym_LPAREN2, ACTIONS(2963), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(2955), 19, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [78698] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(4581), 1, anon_sym_COLON, STATE(2245), 1, sym__enum_base_clause, STATE(2261), 1, sym_enumerator_list, ACTIONS(3473), 7, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3475), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [78745] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2456), 1, anon_sym_LBRACE, ACTIONS(4500), 1, anon_sym_LPAREN2, STATE(3049), 2, sym_argument_list, sym_initializer_list, ACTIONS(3458), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3456), 17, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [78790] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3808), 8, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_QMARK, [78859] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(4433), 1, anon_sym_LPAREN2, ACTIONS(4599), 1, sym_identifier, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(4603), 1, anon_sym_enum, ACTIONS(4605), 1, anon_sym_class, ACTIONS(4607), 1, anon_sym_struct, ACTIONS(4609), 1, anon_sym_union, ACTIONS(4611), 1, anon_sym_typename, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(2569), 1, sym__type_specifier, STATE(2997), 1, sym_argument_list, STATE(4042), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [78933] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4613), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4623), 1, anon_sym_PIPE_PIPE, ACTIONS(4625), 1, anon_sym_AMP_AMP, ACTIONS(4627), 1, anon_sym_PIPE, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, ACTIONS(4643), 1, anon_sym_QMARK, ACTIONS(4647), 1, anon_sym_GT2, STATE(2228), 1, sym_argument_list, STATE(4499), 1, aux_sym_template_argument_list_repeat1, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, [79015] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4433), 1, anon_sym_LPAREN2, ACTIONS(4649), 1, sym_identifier, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(4657), 1, anon_sym_enum, ACTIONS(4659), 1, anon_sym_class, ACTIONS(4661), 1, anon_sym_struct, ACTIONS(4663), 1, anon_sym_union, ACTIONS(4665), 1, anon_sym_decltype, ACTIONS(4667), 1, anon_sym_typename, STATE(1627), 1, aux_sym_sized_type_specifier_repeat1, STATE(1673), 1, sym__type_specifier, STATE(1717), 1, sym_template_type, STATE(1770), 1, sym_qualified_type_identifier, STATE(2944), 1, sym_argument_list, STATE(4019), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4655), 2, sym_primitive_type, sym_auto, ACTIONS(4653), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(1754), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [79089] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4433), 1, anon_sym_LPAREN2, ACTIONS(4669), 1, sym_identifier, ACTIONS(4671), 1, anon_sym_COLON_COLON, ACTIONS(4677), 1, anon_sym_enum, ACTIONS(4679), 1, anon_sym_class, ACTIONS(4681), 1, anon_sym_struct, ACTIONS(4683), 1, anon_sym_union, ACTIONS(4685), 1, anon_sym_decltype, ACTIONS(4687), 1, anon_sym_typename, STATE(1680), 1, aux_sym_sized_type_specifier_repeat1, STATE(1824), 1, sym__type_specifier, STATE(1976), 1, sym_template_type, STATE(1984), 1, sym_qualified_type_identifier, STATE(2937), 1, sym_argument_list, STATE(4048), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4675), 2, sym_primitive_type, sym_auto, ACTIONS(4673), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(1992), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [79163] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4691), 2, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(4689), 28, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, anon_sym_virtual, sym_auto, anon_sym_typename, anon_sym_template, [79201] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4613), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4623), 1, anon_sym_PIPE_PIPE, ACTIONS(4625), 1, anon_sym_AMP_AMP, ACTIONS(4627), 1, anon_sym_PIPE, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, ACTIONS(4643), 1, anon_sym_QMARK, ACTIONS(4693), 1, anon_sym_GT2, STATE(2228), 1, sym_argument_list, STATE(4530), 1, aux_sym_template_argument_list_repeat1, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, [79283] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4697), 2, anon_sym_RPAREN, anon_sym_SEMI, [79361] = 4, ACTIONS(3), 1, sym_comment, STATE(2449), 1, sym_enumerator_list, ACTIONS(3513), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3511), 19, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [79401] = 4, ACTIONS(3), 1, sym_comment, STATE(2468), 1, sym_enumerator_list, ACTIONS(3509), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3507), 19, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [79441] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4433), 1, anon_sym_LPAREN2, ACTIONS(4649), 1, sym_identifier, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(4657), 1, anon_sym_enum, ACTIONS(4659), 1, anon_sym_class, ACTIONS(4661), 1, anon_sym_struct, ACTIONS(4663), 1, anon_sym_union, ACTIONS(4665), 1, anon_sym_decltype, ACTIONS(4667), 1, anon_sym_typename, STATE(1627), 1, aux_sym_sized_type_specifier_repeat1, STATE(1672), 1, sym__type_specifier, STATE(1717), 1, sym_template_type, STATE(1770), 1, sym_qualified_type_identifier, STATE(2909), 1, sym_argument_list, STATE(4019), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4655), 2, sym_primitive_type, sym_auto, ACTIONS(4653), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(1754), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [79515] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(4433), 1, anon_sym_LPAREN2, ACTIONS(4599), 1, sym_identifier, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(4605), 1, anon_sym_class, ACTIONS(4607), 1, anon_sym_struct, ACTIONS(4609), 1, anon_sym_union, ACTIONS(4699), 1, anon_sym_enum, ACTIONS(4701), 1, anon_sym_typename, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(2569), 1, sym__type_specifier, STATE(3008), 1, sym_argument_list, STATE(4042), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [79589] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4703), 1, anon_sym_COMMA, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4729), 1, anon_sym_RBRACK, ACTIONS(4731), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, STATE(4503), 1, aux_sym_lambda_capture_specifier_repeat1, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [79669] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4733), 1, anon_sym_COMMA, ACTIONS(4735), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, STATE(4517), 1, aux_sym_argument_list_repeat1, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [79749] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4737), 1, anon_sym_RPAREN, ACTIONS(4739), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [79829] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4743), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4741), 2, anon_sym_COMMA, anon_sym_SEMI, [79907] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4745), 1, anon_sym_COMMA, ACTIONS(4747), 1, anon_sym_RBRACE, STATE(1863), 1, sym_argument_list, STATE(4494), 1, aux_sym_initializer_list_repeat1, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [79987] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4613), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4623), 1, anon_sym_PIPE_PIPE, ACTIONS(4625), 1, anon_sym_AMP_AMP, ACTIONS(4627), 1, anon_sym_PIPE, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, ACTIONS(4643), 1, anon_sym_QMARK, ACTIONS(4749), 1, anon_sym_GT2, STATE(2228), 1, sym_argument_list, STATE(4383), 1, aux_sym_template_argument_list_repeat1, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, [80069] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2326), 1, anon_sym_decltype, ACTIONS(4433), 1, anon_sym_LPAREN2, ACTIONS(4751), 1, sym_identifier, ACTIONS(4753), 1, anon_sym_COLON_COLON, ACTIONS(4755), 1, anon_sym_enum, ACTIONS(4757), 1, anon_sym_class, ACTIONS(4759), 1, anon_sym_struct, ACTIONS(4761), 1, anon_sym_union, ACTIONS(4763), 1, anon_sym_typename, STATE(1953), 1, aux_sym_sized_type_specifier_repeat1, STATE(2371), 1, sym_template_type, STATE(2499), 1, sym_qualified_type_identifier, STATE(2620), 1, sym__type_specifier, STATE(3024), 1, sym_argument_list, STATE(4033), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(2328), 2, sym_primitive_type, sym_auto, ACTIONS(2302), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2501), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [80143] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3073), 2, anon_sym_COLON_COLON, anon_sym_LBRACE, ACTIONS(3075), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3068), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [80183] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4613), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4623), 1, anon_sym_PIPE_PIPE, ACTIONS(4625), 1, anon_sym_AMP_AMP, ACTIONS(4627), 1, anon_sym_PIPE, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, ACTIONS(4643), 1, anon_sym_QMARK, ACTIONS(4765), 1, anon_sym_GT2, STATE(2228), 1, sym_argument_list, STATE(4408), 1, aux_sym_template_argument_list_repeat1, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, [80265] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(4767), 1, anon_sym_STAR, ACTIONS(4769), 1, anon_sym_AMP_AMP, ACTIONS(4771), 1, anon_sym_AMP, STATE(3169), 1, sym_parameter_list, STATE(3305), 1, sym__abstract_declarator, STATE(3187), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(3720), 10, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [80323] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4733), 1, anon_sym_COMMA, ACTIONS(4775), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, STATE(4477), 1, aux_sym_argument_list_repeat1, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [80403] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4733), 1, anon_sym_COMMA, ACTIONS(4777), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, STATE(4381), 1, aux_sym_argument_list_repeat1, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [80483] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4587), 1, anon_sym_RBRACE, ACTIONS(4779), 1, anon_sym_COMMA, STATE(1863), 1, sym_argument_list, STATE(4405), 1, aux_sym_initializer_list_repeat1, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [80563] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4613), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4623), 1, anon_sym_PIPE_PIPE, ACTIONS(4625), 1, anon_sym_AMP_AMP, ACTIONS(4627), 1, anon_sym_PIPE, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, ACTIONS(4643), 1, anon_sym_QMARK, ACTIONS(4781), 1, anon_sym_GT2, STATE(2228), 1, sym_argument_list, STATE(4525), 1, aux_sym_template_argument_list_repeat1, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, [80645] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4613), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4623), 1, anon_sym_PIPE_PIPE, ACTIONS(4625), 1, anon_sym_AMP_AMP, ACTIONS(4627), 1, anon_sym_PIPE, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, ACTIONS(4643), 1, anon_sym_QMARK, ACTIONS(4783), 1, anon_sym_GT2, STATE(2228), 1, sym_argument_list, STATE(4596), 1, aux_sym_template_argument_list_repeat1, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, [80727] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(4767), 1, anon_sym_STAR, ACTIONS(4769), 1, anon_sym_AMP_AMP, ACTIONS(4771), 1, anon_sym_AMP, STATE(3169), 1, sym_parameter_list, STATE(3287), 1, sym__abstract_declarator, STATE(2715), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(3235), 10, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [80785] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2326), 1, anon_sym_decltype, ACTIONS(4433), 1, anon_sym_LPAREN2, ACTIONS(4751), 1, sym_identifier, ACTIONS(4753), 1, anon_sym_COLON_COLON, ACTIONS(4755), 1, anon_sym_enum, ACTIONS(4757), 1, anon_sym_class, ACTIONS(4759), 1, anon_sym_struct, ACTIONS(4761), 1, anon_sym_union, ACTIONS(4763), 1, anon_sym_typename, STATE(1953), 1, aux_sym_sized_type_specifier_repeat1, STATE(2371), 1, sym_template_type, STATE(2499), 1, sym_qualified_type_identifier, STATE(2627), 1, sym__type_specifier, STATE(2931), 1, sym_argument_list, STATE(4033), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(2328), 2, sym_primitive_type, sym_auto, ACTIONS(2302), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2501), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [80859] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4785), 1, anon_sym_COMMA, ACTIONS(4787), 1, anon_sym_RBRACE, STATE(1863), 1, sym_argument_list, STATE(4523), 1, aux_sym_initializer_list_repeat1, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [80939] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(4433), 1, anon_sym_LPAREN2, ACTIONS(4599), 1, sym_identifier, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(4605), 1, anon_sym_class, ACTIONS(4607), 1, anon_sym_struct, ACTIONS(4609), 1, anon_sym_union, ACTIONS(4699), 1, anon_sym_enum, ACTIONS(4701), 1, anon_sym_typename, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(2546), 1, sym__type_specifier, STATE(3085), 1, sym_argument_list, STATE(4042), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [81013] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4739), 1, anon_sym_SEMI, ACTIONS(4789), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [81093] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4433), 1, anon_sym_LPAREN2, ACTIONS(4669), 1, sym_identifier, ACTIONS(4671), 1, anon_sym_COLON_COLON, ACTIONS(4677), 1, anon_sym_enum, ACTIONS(4679), 1, anon_sym_class, ACTIONS(4681), 1, anon_sym_struct, ACTIONS(4683), 1, anon_sym_union, ACTIONS(4685), 1, anon_sym_decltype, ACTIONS(4687), 1, anon_sym_typename, STATE(1680), 1, aux_sym_sized_type_specifier_repeat1, STATE(1846), 1, sym__type_specifier, STATE(1976), 1, sym_template_type, STATE(1984), 1, sym_qualified_type_identifier, STATE(2988), 1, sym_argument_list, STATE(4048), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4675), 2, sym_primitive_type, sym_auto, ACTIONS(4673), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(1992), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [81167] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4703), 1, anon_sym_COMMA, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, ACTIONS(4791), 1, anon_sym_RBRACK, STATE(1863), 1, sym_argument_list, STATE(4503), 1, aux_sym_lambda_capture_specifier_repeat1, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [81247] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(4433), 1, anon_sym_LPAREN2, ACTIONS(4599), 1, sym_identifier, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(4603), 1, anon_sym_enum, ACTIONS(4605), 1, anon_sym_class, ACTIONS(4607), 1, anon_sym_struct, ACTIONS(4609), 1, anon_sym_union, ACTIONS(4611), 1, anon_sym_typename, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(2507), 1, sym__type_specifier, STATE(3111), 1, sym_argument_list, STATE(4042), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [81321] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(4433), 1, anon_sym_LPAREN2, ACTIONS(4599), 1, sym_identifier, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(4603), 1, anon_sym_enum, ACTIONS(4605), 1, anon_sym_class, ACTIONS(4607), 1, anon_sym_struct, ACTIONS(4609), 1, anon_sym_union, ACTIONS(4611), 1, anon_sym_typename, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(2506), 1, sym__type_specifier, STATE(2979), 1, sym_argument_list, STATE(4042), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [81395] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4733), 1, anon_sym_COMMA, ACTIONS(4793), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, STATE(4498), 1, aux_sym_argument_list_repeat1, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [81475] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(4579), 1, anon_sym_LBRACK, ACTIONS(4795), 1, anon_sym___attribute__, ACTIONS(4797), 1, anon_sym_DASH_GT, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, STATE(2734), 2, sym_attribute_specifier, aux_sym_function_declarator_repeat1, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4577), 6, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_GT2, STATE(3135), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [81535] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4433), 1, anon_sym_LPAREN2, ACTIONS(4649), 1, sym_identifier, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(4659), 1, anon_sym_class, ACTIONS(4661), 1, anon_sym_struct, ACTIONS(4663), 1, anon_sym_union, ACTIONS(4665), 1, anon_sym_decltype, ACTIONS(4799), 1, anon_sym_enum, ACTIONS(4801), 1, anon_sym_typename, STATE(1627), 1, aux_sym_sized_type_specifier_repeat1, STATE(1672), 1, sym__type_specifier, STATE(1717), 1, sym_template_type, STATE(1770), 1, sym_qualified_type_identifier, STATE(3042), 1, sym_argument_list, STATE(4019), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4655), 2, sym_primitive_type, sym_auto, ACTIONS(4653), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(1754), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [81609] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4613), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4623), 1, anon_sym_PIPE_PIPE, ACTIONS(4625), 1, anon_sym_AMP_AMP, ACTIONS(4627), 1, anon_sym_PIPE, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, ACTIONS(4643), 1, anon_sym_QMARK, ACTIONS(4803), 1, anon_sym_GT2, STATE(2228), 1, sym_argument_list, STATE(4401), 1, aux_sym_template_argument_list_repeat1, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, [81691] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4567), 1, anon_sym_LBRACK, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(4795), 1, anon_sym___attribute__, ACTIONS(4797), 1, anon_sym_DASH_GT, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, STATE(3184), 2, sym_attribute_specifier, aux_sym_function_declarator_repeat1, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4559), 6, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_GT2, STATE(3137), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [81751] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4733), 1, anon_sym_COMMA, ACTIONS(4805), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, STATE(4607), 1, aux_sym_argument_list_repeat1, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [81831] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4613), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4623), 1, anon_sym_PIPE_PIPE, ACTIONS(4625), 1, anon_sym_AMP_AMP, ACTIONS(4627), 1, anon_sym_PIPE, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, ACTIONS(4643), 1, anon_sym_QMARK, ACTIONS(4807), 1, anon_sym_GT2, STATE(2228), 1, sym_argument_list, STATE(4559), 1, aux_sym_template_argument_list_repeat1, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, [81913] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(4809), 1, anon_sym_STAR, ACTIONS(4811), 1, anon_sym_AMP_AMP, ACTIONS(4813), 1, anon_sym_AMP, STATE(3180), 1, sym_parameter_list, STATE(3296), 1, sym__abstract_declarator, STATE(2743), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(3235), 10, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [81971] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4433), 1, anon_sym_LPAREN2, ACTIONS(4649), 1, sym_identifier, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(4659), 1, anon_sym_class, ACTIONS(4661), 1, anon_sym_struct, ACTIONS(4663), 1, anon_sym_union, ACTIONS(4665), 1, anon_sym_decltype, ACTIONS(4799), 1, anon_sym_enum, ACTIONS(4801), 1, anon_sym_typename, STATE(1627), 1, aux_sym_sized_type_specifier_repeat1, STATE(1673), 1, sym__type_specifier, STATE(1717), 1, sym_template_type, STATE(1770), 1, sym_qualified_type_identifier, STATE(3051), 1, sym_argument_list, STATE(4019), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4655), 2, sym_primitive_type, sym_auto, ACTIONS(4653), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(1754), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [82045] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4733), 1, anon_sym_COMMA, ACTIONS(4815), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, STATE(4434), 1, aux_sym_argument_list_repeat1, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [82125] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4105), 1, anon_sym_LT, ACTIONS(4817), 1, anon_sym_LBRACK, STATE(2884), 1, sym_template_argument_list, ACTIONS(2976), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, ACTIONS(2961), 5, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, ACTIONS(2953), 19, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_virtual, anon_sym_operator, [82173] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4819), 1, anon_sym_COMMA, ACTIONS(4821), 1, anon_sym_RBRACE, STATE(1863), 1, sym_argument_list, STATE(4407), 1, aux_sym_initializer_list_repeat1, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [82253] = 5, ACTIONS(3), 1, sym_comment, STATE(2110), 1, sym_enumerator_list, STATE(2509), 1, sym__enum_base_clause, ACTIONS(3475), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3473), 20, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [82295] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(4809), 1, anon_sym_STAR, ACTIONS(4811), 1, anon_sym_AMP_AMP, ACTIONS(4813), 1, anon_sym_AMP, STATE(3180), 1, sym_parameter_list, STATE(3298), 1, sym__abstract_declarator, STATE(3187), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(3720), 10, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [82353] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4502), 1, anon_sym_LBRACK, STATE(2829), 1, sym_new_declarator, ACTIONS(3536), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3534), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [82395] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4613), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4623), 1, anon_sym_PIPE_PIPE, ACTIONS(4625), 1, anon_sym_AMP_AMP, ACTIONS(4627), 1, anon_sym_PIPE, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, ACTIONS(4643), 1, anon_sym_QMARK, ACTIONS(4823), 1, anon_sym_GT2, STATE(2228), 1, sym_argument_list, STATE(4591), 1, aux_sym_template_argument_list_repeat1, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, [82477] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4825), 1, anon_sym_COMMA, ACTIONS(4827), 1, anon_sym_RBRACE, STATE(1863), 1, sym_argument_list, STATE(4594), 1, aux_sym_initializer_list_repeat1, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [82557] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4567), 1, anon_sym_LBRACK, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(4795), 1, anon_sym___attribute__, ACTIONS(4829), 1, anon_sym_DASH_GT, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, STATE(3184), 2, sym_attribute_specifier, aux_sym_function_declarator_repeat1, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4559), 6, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, STATE(3127), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [82617] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3000), 1, anon_sym_LBRACK, ACTIONS(4105), 1, anon_sym_LT, STATE(2884), 1, sym_template_argument_list, ACTIONS(2995), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, ACTIONS(2998), 5, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, ACTIONS(2991), 19, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_virtual, anon_sym_operator, [82665] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(4579), 1, anon_sym_LBRACK, ACTIONS(4795), 1, anon_sym___attribute__, ACTIONS(4829), 1, anon_sym_DASH_GT, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, STATE(2747), 2, sym_attribute_specifier, aux_sym_function_declarator_repeat1, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4577), 6, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, STATE(3157), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [82725] = 25, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4613), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4623), 1, anon_sym_PIPE_PIPE, ACTIONS(4625), 1, anon_sym_AMP_AMP, ACTIONS(4627), 1, anon_sym_PIPE, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, ACTIONS(4643), 1, anon_sym_QMARK, ACTIONS(4831), 1, anon_sym_GT2, STATE(2228), 1, sym_argument_list, STATE(4541), 1, aux_sym_template_argument_list_repeat1, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, [82807] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(4433), 1, anon_sym_LPAREN2, ACTIONS(4599), 1, sym_identifier, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(4603), 1, anon_sym_enum, ACTIONS(4605), 1, anon_sym_class, ACTIONS(4607), 1, anon_sym_struct, ACTIONS(4609), 1, anon_sym_union, ACTIONS(4611), 1, anon_sym_typename, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(2546), 1, sym__type_specifier, STATE(3045), 1, sym_argument_list, STATE(4042), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [82881] = 5, ACTIONS(3), 1, sym_comment, STATE(2249), 1, sym_enumerator_list, STATE(2531), 1, sym__enum_base_clause, ACTIONS(3492), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3490), 20, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [82923] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4703), 1, anon_sym_COMMA, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, ACTIONS(4833), 1, anon_sym_RBRACK, STATE(1863), 1, sym_argument_list, STATE(4483), 1, aux_sym_lambda_capture_specifier_repeat1, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [83003] = 24, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4697), 1, anon_sym_SEMI, ACTIONS(4835), 1, anon_sym_COMMA, ACTIONS(4838), 1, anon_sym_RBRACE, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [83083] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3002), 1, anon_sym_LBRACK, ACTIONS(4107), 1, anon_sym_LT, STATE(3147), 1, sym_template_argument_list, ACTIONS(2995), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, ACTIONS(2998), 4, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, ACTIONS(2991), 19, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [83130] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4840), 2, anon_sym_COMMA, anon_sym_RBRACE, [83205] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4842), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [83282] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4613), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4623), 1, anon_sym_PIPE_PIPE, ACTIONS(4625), 1, anon_sym_AMP_AMP, ACTIONS(4627), 1, anon_sym_PIPE, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, ACTIONS(4643), 1, anon_sym_QMARK, STATE(2228), 1, sym_argument_list, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4844), 2, anon_sym_COMMA, anon_sym_GT2, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, [83359] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4846), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [83436] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3832), 1, anon_sym_PIPE, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3808), 6, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_RBRACK, anon_sym_QMARK, [83503] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4848), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [83580] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4850), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [83657] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4709), 1, anon_sym_SLASH, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(3832), 6, anon_sym_DASH, anon_sym_PLUS, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3808), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_RBRACK, anon_sym_QMARK, [83710] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4852), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [83787] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4854), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [83864] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4838), 2, anon_sym_COMMA, anon_sym_RBRACE, [83939] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4613), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4623), 1, anon_sym_PIPE_PIPE, ACTIONS(4625), 1, anon_sym_AMP_AMP, ACTIONS(4627), 1, anon_sym_PIPE, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, ACTIONS(4643), 1, anon_sym_QMARK, STATE(2228), 1, sym_argument_list, ACTIONS(3842), 2, anon_sym_COMMA, anon_sym_GT2, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, [84016] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4709), 1, anon_sym_SLASH, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(3832), 4, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3808), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_RBRACK, anon_sym_QMARK, [84071] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4709), 1, anon_sym_SLASH, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3832), 4, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3808), 11, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_RBRACK, anon_sym_QMARK, [84128] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4856), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [84205] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4516), 1, sym_primitive_type, ACTIONS(4858), 1, sym_identifier, STATE(2238), 1, aux_sym_sized_type_specifier_repeat1, ACTIONS(4514), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(3280), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, ACTIONS(3282), 12, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [84250] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4860), 1, anon_sym_COMMA, ACTIONS(4862), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [84327] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4591), 1, anon_sym_STAR, ACTIONS(4593), 1, anon_sym_AMP_AMP, ACTIONS(4595), 1, anon_sym_AMP, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(4866), 1, anon_sym_const, STATE(3132), 1, sym_parameter_list, STATE(3274), 1, sym__abstract_declarator, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(4864), 16, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [84380] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4868), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [84457] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4870), 2, anon_sym_COMMA, anon_sym_RBRACK, [84532] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4621), 1, anon_sym_SLASH, STATE(2228), 1, sym_argument_list, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3832), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, ACTIONS(3808), 11, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_QMARK, anon_sym_GT2, [84585] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3808), 6, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_RBRACK, anon_sym_QMARK, [84652] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3832), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, ACTIONS(3808), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_QMARK, anon_sym_GT2, [84701] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3808), 5, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_RBRACK, anon_sym_QMARK, [84770] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4613), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4623), 1, anon_sym_PIPE_PIPE, ACTIONS(4625), 1, anon_sym_AMP_AMP, ACTIONS(4627), 1, anon_sym_PIPE, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, ACTIONS(4643), 1, anon_sym_QMARK, STATE(2228), 1, sym_argument_list, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4872), 2, anon_sym_COMMA, anon_sym_GT2, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, [84847] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4625), 1, anon_sym_AMP_AMP, ACTIONS(4627), 1, anon_sym_PIPE, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(3808), 5, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_QMARK, anon_sym_GT2, [84918] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4627), 1, anon_sym_PIPE, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(3808), 6, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_QMARK, anon_sym_GT2, [84987] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4874), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [85064] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4876), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [85141] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4878), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [85218] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4880), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [85295] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4882), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [85372] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(3832), 1, anon_sym_PIPE, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(3808), 6, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_QMARK, anon_sym_GT2, [85441] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4884), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [85518] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3486), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3488), 21, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [85555] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4886), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [85632] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4888), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [85709] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4890), 1, anon_sym_COMMA, ACTIONS(4892), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [85786] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4894), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [85863] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4896), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [85940] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4613), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4623), 1, anon_sym_PIPE_PIPE, ACTIONS(4625), 1, anon_sym_AMP_AMP, ACTIONS(4627), 1, anon_sym_PIPE, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4017), 3, anon_sym_COMMA, anon_sym_QMARK, anon_sym_GT2, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, [86015] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(3832), 1, anon_sym_PIPE, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(3808), 7, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_QMARK, anon_sym_GT2, [86082] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4898), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [86159] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4900), 1, anon_sym_COMMA, ACTIONS(4902), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [86236] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4613), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4623), 1, anon_sym_PIPE_PIPE, ACTIONS(4625), 1, anon_sym_AMP_AMP, ACTIONS(4627), 1, anon_sym_PIPE, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, ACTIONS(4643), 1, anon_sym_QMARK, STATE(2228), 1, sym_argument_list, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4904), 2, anon_sym_COMMA, anon_sym_GT2, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, [86313] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4001), 4, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_QMARK, [86384] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4017), 3, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_QMARK, [86457] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, STATE(2228), 1, sym_argument_list, ACTIONS(3987), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, ACTIONS(3985), 15, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_GT2, [86504] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3573), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3571), 19, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, sym_literal_suffix, [86541] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4906), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [86618] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4908), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [86695] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4910), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [86772] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4912), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [86849] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4914), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [86926] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, STATE(2228), 1, sym_argument_list, ACTIONS(3832), 2, anon_sym_PIPE, anon_sym_AMP, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(3808), 9, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_GT2, [86989] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4916), 1, anon_sym_COMMA, ACTIONS(4918), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [87066] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4920), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [87143] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4591), 1, anon_sym_STAR, ACTIONS(4593), 1, anon_sym_AMP_AMP, ACTIONS(4595), 1, anon_sym_AMP, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(4922), 1, anon_sym_const, STATE(3132), 1, sym_parameter_list, STATE(3286), 1, sym__abstract_declarator, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(4277), 16, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [87196] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3448), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3450), 21, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [87233] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, STATE(2228), 1, sym_argument_list, ACTIONS(3832), 2, anon_sym_PIPE, anon_sym_AMP, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(3808), 7, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_QMARK, anon_sym_GT2, [87298] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4924), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [87375] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4926), 1, sym_literal_suffix, ACTIONS(2963), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2955), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [87414] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4928), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [87491] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3832), 5, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(3808), 10, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_GT2, [87550] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4930), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [87627] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4623), 1, anon_sym_PIPE_PIPE, ACTIONS(4625), 1, anon_sym_AMP_AMP, ACTIONS(4627), 1, anon_sym_PIPE, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(3937), 4, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_QMARK, anon_sym_GT2, [87700] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3910), 5, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(3908), 10, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_QMARK, anon_sym_GT2, [87759] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4932), 2, anon_sym_COMMA, anon_sym_RPAREN, [87834] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(3842), 2, anon_sym_COMMA, anon_sym_RBRACK, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [87909] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4934), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [87986] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4936), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [88063] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4741), 2, anon_sym_COMMA, anon_sym_SEMI, [88138] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4621), 1, anon_sym_SLASH, STATE(2228), 1, sym_argument_list, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3832), 6, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, ACTIONS(3808), 11, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_QMARK, anon_sym_GT2, [88193] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3794), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3792), 19, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [88230] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4938), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [88307] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3971), 4, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_QMARK, [88378] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4940), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [88455] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4942), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [88532] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3890), 4, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_QMARK, [88603] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4944), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [88680] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4946), 1, anon_sym_COMMA, ACTIONS(4948), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [88757] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, STATE(2228), 1, sym_argument_list, ACTIONS(3888), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, ACTIONS(3886), 15, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_GT2, [88804] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4950), 2, anon_sym_COMMA, anon_sym_RBRACE, [88879] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4709), 1, anon_sym_SLASH, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3910), 4, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3908), 11, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_RBRACK, anon_sym_QMARK, [88936] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2993), 1, anon_sym_SEMI, ACTIONS(3002), 1, anon_sym_LBRACK, ACTIONS(4107), 1, anon_sym_LT, STATE(2672), 1, sym_template_argument_list, ACTIONS(2995), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, ACTIONS(2998), 3, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, ACTIONS(2991), 19, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [88985] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4872), 2, anon_sym_COMMA, anon_sym_RPAREN, [89060] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4623), 1, anon_sym_PIPE_PIPE, ACTIONS(4625), 1, anon_sym_AMP_AMP, ACTIONS(4627), 1, anon_sym_PIPE, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(3971), 4, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_QMARK, anon_sym_GT2, [89133] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4952), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [89210] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4954), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [89287] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3937), 4, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_QMARK, [89358] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4956), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [89435] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4958), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [89512] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4709), 1, anon_sym_SLASH, STATE(1863), 1, sym_argument_list, ACTIONS(3832), 2, anon_sym_PIPE, anon_sym_AMP, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3808), 9, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, [89573] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3440), 8, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, anon_sym_DOT, ACTIONS(3442), 21, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, [89610] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4960), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [89687] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3832), 1, anon_sym_PIPE, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4719), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3808), 7, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_RBRACK, anon_sym_QMARK, [89752] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4962), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [89829] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4964), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [89906] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4966), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [89983] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3902), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, ACTIONS(3900), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_QMARK, anon_sym_GT2, [90032] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4844), 2, anon_sym_COMMA, anon_sym_RPAREN, [90107] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4968), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [90184] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4970), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [90261] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4972), 1, anon_sym_COMMA, ACTIONS(4974), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [90338] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4976), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [90415] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4978), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [90492] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3955), 9, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, ACTIONS(3953), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_QMARK, anon_sym_GT2, [90541] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3308), 1, anon_sym_SEMI, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(4506), 1, anon_sym_LBRACK, STATE(2672), 1, sym_template_argument_list, ACTIONS(2976), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, ACTIONS(2961), 3, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, ACTIONS(2953), 19, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [90590] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4980), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [90667] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4982), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [90744] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4984), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [90821] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4585), 1, anon_sym_SEMI, ACTIONS(4695), 1, anon_sym_COMMA, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [90898] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4986), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [90975] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4988), 1, anon_sym_COMMA, ACTIONS(4990), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [91052] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4623), 1, anon_sym_PIPE_PIPE, ACTIONS(4625), 1, anon_sym_AMP_AMP, ACTIONS(4627), 1, anon_sym_PIPE, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(3890), 4, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_QMARK, anon_sym_GT2, [91125] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2979), 1, anon_sym_SEMI, ACTIONS(4107), 1, anon_sym_LT, STATE(2200), 1, sym_template_argument_list, ACTIONS(2961), 5, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACK_LBRACK, ACTIONS(2953), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [91170] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4992), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [91247] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4994), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [91324] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, ACTIONS(4125), 1, anon_sym_LBRACK, ACTIONS(4129), 1, anon_sym_DOT, ACTIONS(4131), 1, anon_sym_DASH_GT, ACTIONS(4621), 1, anon_sym_SLASH, ACTIONS(4623), 1, anon_sym_PIPE_PIPE, ACTIONS(4625), 1, anon_sym_AMP_AMP, ACTIONS(4627), 1, anon_sym_PIPE, ACTIONS(4629), 1, anon_sym_CARET, ACTIONS(4631), 1, anon_sym_AMP, ACTIONS(4637), 1, anon_sym_LT_EQ, ACTIONS(4639), 1, anon_sym_LT_LT, ACTIONS(4641), 1, anon_sym_GT_GT, STATE(2228), 1, sym_argument_list, ACTIONS(4617), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4619), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4633), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4645), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4635), 3, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, ACTIONS(4001), 4, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_QMARK, anon_sym_GT2, [91397] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4996), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [91474] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(4506), 1, anon_sym_LBRACK, STATE(3147), 1, sym_template_argument_list, ACTIONS(2976), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, ACTIONS(2961), 4, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, ACTIONS(2953), 19, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [91521] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(4998), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [91598] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(5000), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [91675] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4591), 1, anon_sym_STAR, ACTIONS(4593), 1, anon_sym_AMP_AMP, ACTIONS(4595), 1, anon_sym_AMP, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(5004), 1, anon_sym_const, STATE(3132), 1, sym_parameter_list, STATE(3278), 1, sym__abstract_declarator, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(5002), 16, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [91728] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(5006), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [91805] = 23, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(4695), 1, anon_sym_COMMA, ACTIONS(5008), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [91882] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4709), 1, anon_sym_SLASH, STATE(1863), 1, sym_argument_list, ACTIONS(3832), 2, anon_sym_PIPE, anon_sym_AMP, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3808), 7, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_RBRACK, anon_sym_QMARK, [91945] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5010), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [92019] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3075), 1, anon_sym_LBRACK, ACTIONS(3070), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, ACTIONS(3073), 6, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_EQ, ACTIONS(3066), 19, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, sym_identifier, anon_sym_virtual, anon_sym_operator, [92059] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3486), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3488), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [92095] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(2412), 1, anon_sym_class, ACTIONS(2414), 1, anon_sym_struct, ACTIONS(2416), 1, anon_sym_union, ACTIONS(4413), 1, anon_sym_enum, ACTIONS(4415), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2302), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(2319), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(2408), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [92163] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(4463), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4567), 1, anon_sym_LBRACK, ACTIONS(4571), 1, anon_sym_DASH_GT, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(4569), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4559), 7, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, STATE(2929), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [92217] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2651), 1, sym_identifier, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(4419), 1, anon_sym_class, ACTIONS(4421), 1, anon_sym_struct, ACTIONS(4423), 1, anon_sym_union, ACTIONS(4427), 1, anon_sym_enum, ACTIONS(4429), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2302), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(2319), 1, sym__type_specifier, STATE(4015), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(2408), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [92285] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5018), 1, anon_sym_PIPE_PIPE, ACTIONS(5020), 1, anon_sym_AMP_AMP, ACTIONS(5022), 1, anon_sym_PIPE, ACTIONS(5024), 1, anon_sym_CARET, ACTIONS(5026), 1, anon_sym_AMP, ACTIONS(5036), 1, anon_sym_COLON, ACTIONS(5038), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, [92359] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5040), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [92433] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(2867), 1, anon_sym_RBRACK, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [92507] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4369), 1, sym_identifier, ACTIONS(4371), 1, anon_sym_COLON_COLON, ACTIONS(4377), 1, anon_sym_enum, ACTIONS(4379), 1, anon_sym_class, ACTIONS(4381), 1, anon_sym_struct, ACTIONS(4383), 1, anon_sym_union, ACTIONS(4385), 1, anon_sym_decltype, ACTIONS(4387), 1, anon_sym_typename, STATE(3578), 1, aux_sym_sized_type_specifier_repeat1, STATE(3884), 1, sym_template_type, STATE(3902), 1, sym__type_specifier, STATE(3925), 1, sym_qualified_type_identifier, STATE(4029), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4375), 2, sym_primitive_type, sym_auto, ACTIONS(4373), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(3964), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [92575] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3636), 1, sym__declarator, STATE(3672), 1, sym__scope_resolution, STATE(4433), 1, sym_init_declarator, STATE(5333), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [92641] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(2412), 1, anon_sym_class, ACTIONS(2414), 1, anon_sym_struct, ACTIONS(2416), 1, anon_sym_union, ACTIONS(4413), 1, anon_sym_enum, ACTIONS(4415), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2302), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3193), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(2408), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [92709] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2651), 1, sym_identifier, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(4417), 1, anon_sym_enum, ACTIONS(4419), 1, anon_sym_class, ACTIONS(4421), 1, anon_sym_struct, ACTIONS(4423), 1, anon_sym_union, ACTIONS(4425), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2302), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(4015), 1, sym__scope_resolution, STATE(4957), 1, sym__type_specifier, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(2408), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [92777] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2306), 1, anon_sym_enum, ACTIONS(2308), 1, anon_sym_class, ACTIONS(2310), 1, anon_sym_struct, ACTIONS(2312), 1, anon_sym_union, ACTIONS(2326), 1, anon_sym_decltype, ACTIONS(2330), 1, anon_sym_typename, ACTIONS(4365), 1, sym_identifier, ACTIONS(4367), 1, anon_sym_COLON_COLON, STATE(1953), 1, aux_sym_sized_type_specifier_repeat1, STATE(2371), 1, sym_template_type, STATE(2499), 1, sym_qualified_type_identifier, STATE(3547), 1, sym__type_specifier, STATE(4016), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(2328), 2, sym_primitive_type, sym_auto, ACTIONS(2302), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2501), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [92845] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5042), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [92919] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5044), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [92993] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, ACTIONS(5046), 1, anon_sym_RBRACK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [93067] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5048), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [93141] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5018), 1, anon_sym_PIPE_PIPE, ACTIONS(5020), 1, anon_sym_AMP_AMP, ACTIONS(5022), 1, anon_sym_PIPE, ACTIONS(5024), 1, anon_sym_CARET, ACTIONS(5026), 1, anon_sym_AMP, ACTIONS(5038), 1, anon_sym_QMARK, ACTIONS(5050), 1, anon_sym_COLON, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, [93215] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5052), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [93289] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(2917), 1, anon_sym_RBRACK, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [93363] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1397), 1, anon_sym_enum, ACTIONS(1399), 1, anon_sym_class, ACTIONS(1401), 1, anon_sym_struct, ACTIONS(1403), 1, anon_sym_union, ACTIONS(1405), 1, anon_sym_decltype, ACTIONS(2651), 1, sym_identifier, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4411), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2555), 1, sym_qualified_type_identifier, STATE(2771), 1, aux_sym_sized_type_specifier_repeat1, STATE(2773), 1, sym__type_specifier, STATE(4035), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1395), 2, sym_primitive_type, sym_auto, ACTIONS(4409), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2577), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [93431] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2306), 1, anon_sym_enum, ACTIONS(2308), 1, anon_sym_class, ACTIONS(2310), 1, anon_sym_struct, ACTIONS(2312), 1, anon_sym_union, ACTIONS(2326), 1, anon_sym_decltype, ACTIONS(2330), 1, anon_sym_typename, ACTIONS(4365), 1, sym_identifier, ACTIONS(4367), 1, anon_sym_COLON_COLON, STATE(1953), 1, aux_sym_sized_type_specifier_repeat1, STATE(2371), 1, sym_template_type, STATE(2492), 1, sym__type_specifier, STATE(2499), 1, sym_qualified_type_identifier, STATE(4016), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(2328), 2, sym_primitive_type, sym_auto, ACTIONS(2302), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2501), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [93499] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5054), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [93573] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3672), 1, sym__scope_resolution, STATE(3710), 1, sym__declarator, STATE(4883), 1, sym_init_declarator, STATE(5333), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [93639] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5018), 1, anon_sym_PIPE_PIPE, ACTIONS(5020), 1, anon_sym_AMP_AMP, ACTIONS(5022), 1, anon_sym_PIPE, ACTIONS(5024), 1, anon_sym_CARET, ACTIONS(5026), 1, anon_sym_AMP, ACTIONS(5038), 1, anon_sym_QMARK, ACTIONS(5056), 1, anon_sym_COLON, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, [93713] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4649), 1, sym_identifier, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(4657), 1, anon_sym_enum, ACTIONS(4659), 1, anon_sym_class, ACTIONS(4661), 1, anon_sym_struct, ACTIONS(4663), 1, anon_sym_union, ACTIONS(4665), 1, anon_sym_decltype, ACTIONS(4667), 1, anon_sym_typename, STATE(1627), 1, aux_sym_sized_type_specifier_repeat1, STATE(1677), 1, sym__type_specifier, STATE(1717), 1, sym_template_type, STATE(1770), 1, sym_qualified_type_identifier, STATE(4019), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4655), 2, sym_primitive_type, sym_auto, ACTIONS(4653), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(1754), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [93781] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3894), 1, anon_sym_STAR, ACTIONS(3896), 1, anon_sym_AMP_AMP, ACTIONS(3898), 1, anon_sym_AMP, STATE(3633), 1, sym__declarator, STATE(3672), 1, sym__scope_resolution, STATE(4560), 1, sym_init_declarator, STATE(5088), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [93847] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5058), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [93921] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5060), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [93995] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3440), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3442), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [94031] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(2410), 1, anon_sym_enum, ACTIONS(2412), 1, anon_sym_class, ACTIONS(2414), 1, anon_sym_struct, ACTIONS(2416), 1, anon_sym_union, ACTIONS(2418), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2302), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(2319), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(2408), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [94099] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3832), 1, anon_sym_PIPE, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5026), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3808), 6, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_COLON, anon_sym_QMARK, [94163] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5062), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [94237] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3894), 1, anon_sym_STAR, ACTIONS(3896), 1, anon_sym_AMP_AMP, ACTIONS(3898), 1, anon_sym_AMP, STATE(3639), 1, sym__declarator, STATE(3672), 1, sym__scope_resolution, STATE(4560), 1, sym_init_declarator, STATE(5088), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [94303] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5064), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [94377] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(5016), 1, anon_sym_SLASH, STATE(1863), 1, sym_argument_list, ACTIONS(3832), 2, anon_sym_PIPE, anon_sym_AMP, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3808), 6, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_COLON, anon_sym_QMARK, [94439] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(5016), 1, anon_sym_SLASH, STATE(1863), 1, sym_argument_list, ACTIONS(3832), 2, anon_sym_PIPE, anon_sym_AMP, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3808), 8, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_COLON, anon_sym_QMARK, [94499] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3832), 1, anon_sym_PIPE, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5024), 1, anon_sym_CARET, ACTIONS(5026), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3808), 5, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_COLON, anon_sym_QMARK, [94565] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(2877), 1, anon_sym_RBRACK, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [94639] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(4767), 1, anon_sym_STAR, ACTIONS(4769), 1, anon_sym_AMP_AMP, ACTIONS(4771), 1, anon_sym_AMP, ACTIONS(4866), 1, anon_sym_const, STATE(3169), 1, sym_parameter_list, STATE(3302), 1, sym__abstract_declarator, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(4864), 15, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [94691] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(2905), 1, anon_sym_RBRACK, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [94765] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3894), 1, anon_sym_STAR, ACTIONS(3896), 1, anon_sym_AMP_AMP, ACTIONS(3898), 1, anon_sym_AMP, STATE(3653), 1, sym__declarator, STATE(3672), 1, sym__scope_resolution, STATE(4560), 1, sym_init_declarator, STATE(5088), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [94831] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5022), 1, anon_sym_PIPE, ACTIONS(5024), 1, anon_sym_CARET, ACTIONS(5026), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3808), 5, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_COLON, anon_sym_QMARK, [94897] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5066), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [94971] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4015), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(1936), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [95007] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(5070), 1, anon_sym_AMP_AMP, ACTIONS(5073), 1, anon_sym_AMP, ACTIONS(5076), 1, anon_sym_LBRACK, ACTIONS(5078), 1, anon_sym_const, ACTIONS(5084), 1, anon_sym_DASH_GT, ACTIONS(5090), 1, anon_sym_noexcept, ACTIONS(5093), 1, anon_sym_throw, ACTIONS(5087), 2, anon_sym_final, anon_sym_override, ACTIONS(5081), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(5068), 7, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, STATE(2929), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [95061] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4649), 1, sym_identifier, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(4659), 1, anon_sym_class, ACTIONS(4661), 1, anon_sym_struct, ACTIONS(4663), 1, anon_sym_union, ACTIONS(4665), 1, anon_sym_decltype, ACTIONS(4799), 1, anon_sym_enum, ACTIONS(4801), 1, anon_sym_typename, STATE(1627), 1, aux_sym_sized_type_specifier_repeat1, STATE(1717), 1, sym_template_type, STATE(1770), 1, sym_qualified_type_identifier, STATE(1790), 1, sym__type_specifier, STATE(4019), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4655), 2, sym_primitive_type, sym_auto, ACTIONS(4653), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(1754), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [95129] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2326), 1, anon_sym_decltype, ACTIONS(4751), 1, sym_identifier, ACTIONS(4753), 1, anon_sym_COLON_COLON, ACTIONS(4755), 1, anon_sym_enum, ACTIONS(4757), 1, anon_sym_class, ACTIONS(4759), 1, anon_sym_struct, ACTIONS(4761), 1, anon_sym_union, ACTIONS(4763), 1, anon_sym_typename, STATE(1953), 1, aux_sym_sized_type_specifier_repeat1, STATE(2371), 1, sym_template_type, STATE(2499), 1, sym_qualified_type_identifier, STATE(2617), 1, sym__type_specifier, STATE(4033), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(2328), 2, sym_primitive_type, sym_auto, ACTIONS(2302), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2501), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [95197] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5096), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [95271] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1710), 1, anon_sym_enum, ACTIONS(1712), 1, anon_sym_class, ACTIONS(1714), 1, anon_sym_struct, ACTIONS(1716), 1, anon_sym_union, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(1722), 1, anon_sym_typename, ACTIONS(4281), 1, sym_identifier, ACTIONS(4285), 1, anon_sym_COLON_COLON, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(3570), 1, sym__type_specifier, STATE(4023), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [95339] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(5016), 1, anon_sym_SLASH, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3910), 4, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3908), 10, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_COLON, anon_sym_QMARK, [95395] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1710), 1, anon_sym_enum, ACTIONS(1712), 1, anon_sym_class, ACTIONS(1714), 1, anon_sym_struct, ACTIONS(1716), 1, anon_sym_union, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(1722), 1, anon_sym_typename, ACTIONS(4281), 1, sym_identifier, ACTIONS(4285), 1, anon_sym_COLON_COLON, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(2251), 1, sym__type_specifier, STATE(4023), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [95463] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5098), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [95537] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4669), 1, sym_identifier, ACTIONS(4671), 1, anon_sym_COLON_COLON, ACTIONS(4677), 1, anon_sym_enum, ACTIONS(4679), 1, anon_sym_class, ACTIONS(4681), 1, anon_sym_struct, ACTIONS(4683), 1, anon_sym_union, ACTIONS(4685), 1, anon_sym_decltype, ACTIONS(4687), 1, anon_sym_typename, STATE(1680), 1, aux_sym_sized_type_specifier_repeat1, STATE(1817), 1, sym__type_specifier, STATE(1976), 1, sym_template_type, STATE(1984), 1, sym_qualified_type_identifier, STATE(4048), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4675), 2, sym_primitive_type, sym_auto, ACTIONS(4673), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(1992), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [95605] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(5016), 1, anon_sym_SLASH, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3832), 4, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3808), 10, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_COLON, anon_sym_QMARK, [95661] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3628), 1, sym__declarator, STATE(3672), 1, sym__scope_resolution, STATE(4485), 1, sym_init_declarator, STATE(5333), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [95727] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5100), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [95801] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5102), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [95875] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3894), 1, anon_sym_STAR, ACTIONS(3896), 1, anon_sym_AMP_AMP, ACTIONS(3898), 1, anon_sym_AMP, STATE(3642), 1, sym__declarator, STATE(3672), 1, sym__scope_resolution, STATE(4560), 1, sym_init_declarator, STATE(5088), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [95941] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5104), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [96015] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4649), 1, sym_identifier, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(4657), 1, anon_sym_enum, ACTIONS(4659), 1, anon_sym_class, ACTIONS(4661), 1, anon_sym_struct, ACTIONS(4663), 1, anon_sym_union, ACTIONS(4665), 1, anon_sym_decltype, ACTIONS(4667), 1, anon_sym_typename, STATE(1627), 1, aux_sym_sized_type_specifier_repeat1, STATE(1668), 1, sym__type_specifier, STATE(1717), 1, sym_template_type, STATE(1770), 1, sym_qualified_type_identifier, STATE(4019), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4655), 2, sym_primitive_type, sym_auto, ACTIONS(4653), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(1754), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [96083] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5018), 1, anon_sym_PIPE_PIPE, ACTIONS(5020), 1, anon_sym_AMP_AMP, ACTIONS(5022), 1, anon_sym_PIPE, ACTIONS(5024), 1, anon_sym_CARET, ACTIONS(5026), 1, anon_sym_AMP, ACTIONS(5038), 1, anon_sym_QMARK, ACTIONS(5106), 1, anon_sym_COLON, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, [96157] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3448), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3450), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [96193] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3842), 1, anon_sym_COLON, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5018), 1, anon_sym_PIPE_PIPE, ACTIONS(5020), 1, anon_sym_AMP_AMP, ACTIONS(5022), 1, anon_sym_PIPE, ACTIONS(5024), 1, anon_sym_CARET, ACTIONS(5026), 1, anon_sym_AMP, ACTIONS(5038), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, [96267] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5108), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [96341] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5018), 1, anon_sym_PIPE_PIPE, ACTIONS(5020), 1, anon_sym_AMP_AMP, ACTIONS(5022), 1, anon_sym_PIPE, ACTIONS(5024), 1, anon_sym_CARET, ACTIONS(5026), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3890), 3, anon_sym_DOT_DOT_DOT, anon_sym_COLON, anon_sym_QMARK, [96411] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3999), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3997), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [96447] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3629), 1, sym__declarator, STATE(3672), 1, sym__scope_resolution, STATE(4604), 1, sym_init_declarator, STATE(5333), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [96513] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2651), 1, sym_identifier, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(4419), 1, anon_sym_class, ACTIONS(4421), 1, anon_sym_struct, ACTIONS(4423), 1, anon_sym_union, ACTIONS(4427), 1, anon_sym_enum, ACTIONS(4429), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2302), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(2923), 1, sym__type_specifier, STATE(4015), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(2408), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [96581] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3894), 1, anon_sym_STAR, ACTIONS(3896), 1, anon_sym_AMP_AMP, ACTIONS(3898), 1, anon_sym_AMP, STATE(3627), 1, sym__declarator, STATE(3672), 1, sym__scope_resolution, STATE(4560), 1, sym_init_declarator, STATE(5088), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [96647] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5110), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [96721] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5112), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [96795] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(4767), 1, anon_sym_STAR, ACTIONS(4769), 1, anon_sym_AMP_AMP, ACTIONS(4771), 1, anon_sym_AMP, ACTIONS(5004), 1, anon_sym_const, STATE(3169), 1, sym_parameter_list, STATE(3295), 1, sym__abstract_declarator, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(5002), 15, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [96847] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5018), 1, anon_sym_PIPE_PIPE, ACTIONS(5020), 1, anon_sym_AMP_AMP, ACTIONS(5022), 1, anon_sym_PIPE, ACTIONS(5024), 1, anon_sym_CARET, ACTIONS(5026), 1, anon_sym_AMP, ACTIONS(5038), 1, anon_sym_QMARK, ACTIONS(5114), 1, anon_sym_COLON, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, [96921] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4649), 1, sym_identifier, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(4657), 1, anon_sym_enum, ACTIONS(4659), 1, anon_sym_class, ACTIONS(4661), 1, anon_sym_struct, ACTIONS(4663), 1, anon_sym_union, ACTIONS(4665), 1, anon_sym_decltype, ACTIONS(4667), 1, anon_sym_typename, STATE(1627), 1, aux_sym_sized_type_specifier_repeat1, STATE(1717), 1, sym_template_type, STATE(1770), 1, sym_qualified_type_identifier, STATE(1790), 1, sym__type_specifier, STATE(4019), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4655), 2, sym_primitive_type, sym_auto, ACTIONS(4653), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(1754), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [96989] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4349), 1, anon_sym_enum, ACTIONS(4351), 1, anon_sym_class, ACTIONS(4353), 1, anon_sym_struct, ACTIONS(4355), 1, anon_sym_union, ACTIONS(4357), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(2319), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [97057] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5116), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [97131] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5118), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [97205] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3888), 7, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3886), 16, anon_sym_DOT_DOT_DOT, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, [97251] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5120), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [97325] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5122), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [97399] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3955), 7, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3953), 14, anon_sym_DOT_DOT_DOT, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_COLON, anon_sym_QMARK, [97447] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3995), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3993), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [97483] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5020), 1, anon_sym_AMP_AMP, ACTIONS(5022), 1, anon_sym_PIPE, ACTIONS(5024), 1, anon_sym_CARET, ACTIONS(5026), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3808), 4, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_COLON, anon_sym_QMARK, [97551] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1712), 1, anon_sym_class, ACTIONS(1714), 1, anon_sym_struct, ACTIONS(1716), 1, anon_sym_union, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(4281), 1, sym_identifier, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(4395), 1, anon_sym_enum, ACTIONS(4397), 1, anon_sym_typename, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(2251), 1, sym__type_specifier, STATE(4023), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [97619] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5124), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [97693] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5126), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [97767] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5018), 1, anon_sym_PIPE_PIPE, ACTIONS(5020), 1, anon_sym_AMP_AMP, ACTIONS(5022), 1, anon_sym_PIPE, ACTIONS(5024), 1, anon_sym_CARET, ACTIONS(5026), 1, anon_sym_AMP, ACTIONS(5038), 1, anon_sym_QMARK, ACTIONS(5128), 1, anon_sym_COLON, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, [97841] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5130), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [97915] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5132), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [97989] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5134), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [98063] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(4767), 1, anon_sym_STAR, ACTIONS(4769), 1, anon_sym_AMP_AMP, ACTIONS(4771), 1, anon_sym_AMP, ACTIONS(4922), 1, anon_sym_const, STATE(3169), 1, sym_parameter_list, STATE(3299), 1, sym__abstract_declarator, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(4277), 15, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [98115] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3672), 1, sym__scope_resolution, STATE(3674), 1, sym__declarator, STATE(4604), 1, sym_init_declarator, STATE(5333), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [98181] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5136), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [98255] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5138), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [98329] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(4599), 1, sym_identifier, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(4603), 1, anon_sym_enum, ACTIONS(4605), 1, anon_sym_class, ACTIONS(4607), 1, anon_sym_struct, ACTIONS(4609), 1, anon_sym_union, ACTIONS(4611), 1, anon_sym_typename, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(2529), 1, sym__type_specifier, STATE(4042), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [98397] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(2921), 1, anon_sym_RBRACK, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [98471] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2326), 1, anon_sym_decltype, ACTIONS(4751), 1, sym_identifier, ACTIONS(4753), 1, anon_sym_COLON_COLON, ACTIONS(4755), 1, anon_sym_enum, ACTIONS(4757), 1, anon_sym_class, ACTIONS(4759), 1, anon_sym_struct, ACTIONS(4761), 1, anon_sym_union, ACTIONS(4763), 1, anon_sym_typename, STATE(1953), 1, aux_sym_sized_type_specifier_repeat1, STATE(2371), 1, sym_template_type, STATE(2492), 1, sym__type_specifier, STATE(2499), 1, sym_qualified_type_identifier, STATE(4033), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(2328), 2, sym_primitive_type, sym_auto, ACTIONS(2302), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2501), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [98539] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5140), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [98613] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(5016), 1, anon_sym_SLASH, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(3832), 4, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3808), 12, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_COLON, anon_sym_QMARK, [98667] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3969), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3967), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [98703] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5142), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [98777] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5018), 1, anon_sym_PIPE_PIPE, ACTIONS(5020), 1, anon_sym_AMP_AMP, ACTIONS(5022), 1, anon_sym_PIPE, ACTIONS(5024), 1, anon_sym_CARET, ACTIONS(5026), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(4001), 3, anon_sym_DOT_DOT_DOT, anon_sym_COLON, anon_sym_QMARK, [98847] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(2819), 1, anon_sym_RBRACK, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [98921] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4669), 1, sym_identifier, ACTIONS(4671), 1, anon_sym_COLON_COLON, ACTIONS(4677), 1, anon_sym_enum, ACTIONS(4679), 1, anon_sym_class, ACTIONS(4681), 1, anon_sym_struct, ACTIONS(4683), 1, anon_sym_union, ACTIONS(4685), 1, anon_sym_decltype, ACTIONS(4687), 1, anon_sym_typename, STATE(1680), 1, aux_sym_sized_type_specifier_repeat1, STATE(1836), 1, sym__type_specifier, STATE(1976), 1, sym_template_type, STATE(1984), 1, sym_qualified_type_identifier, STATE(4048), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4675), 2, sym_primitive_type, sym_auto, ACTIONS(4673), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(1992), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [98989] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5144), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [99063] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3649), 1, sym__declarator, STATE(3672), 1, sym__scope_resolution, STATE(4574), 1, sym_init_declarator, STATE(5333), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [99129] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(5016), 1, anon_sym_SLASH, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(3832), 6, anon_sym_DASH, anon_sym_PLUS, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3808), 12, anon_sym_DOT_DOT_DOT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_COLON, anon_sym_QMARK, [99181] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(63), 1, anon_sym_enum, ACTIONS(65), 1, anon_sym_class, ACTIONS(67), 1, anon_sym_struct, ACTIONS(69), 1, anon_sym_union, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(113), 1, anon_sym_typename, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, STATE(2092), 1, sym_template_type, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(2319), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [99249] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5146), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [99323] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5148), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [99397] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5150), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [99471] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3668), 1, sym__declarator, STATE(3672), 1, sym__scope_resolution, STATE(4569), 1, sym_init_declarator, STATE(5333), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [99537] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(4599), 1, sym_identifier, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(4603), 1, anon_sym_enum, ACTIONS(4605), 1, anon_sym_class, ACTIONS(4607), 1, anon_sym_struct, ACTIONS(4609), 1, anon_sym_union, ACTIONS(4611), 1, anon_sym_typename, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(2559), 1, sym__type_specifier, STATE(4042), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [99605] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(3987), 7, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3985), 16, anon_sym_DOT_DOT_DOT, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_COLON, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, [99651] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5018), 1, anon_sym_PIPE_PIPE, ACTIONS(5020), 1, anon_sym_AMP_AMP, ACTIONS(5022), 1, anon_sym_PIPE, ACTIONS(5024), 1, anon_sym_CARET, ACTIONS(5026), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4017), 2, anon_sym_COLON, anon_sym_QMARK, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, [99723] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(4463), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4571), 1, anon_sym_DASH_GT, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(5154), 1, anon_sym_LBRACK, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(4569), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(5152), 7, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, STATE(2929), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [99777] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5018), 1, anon_sym_PIPE_PIPE, ACTIONS(5020), 1, anon_sym_AMP_AMP, ACTIONS(5022), 1, anon_sym_PIPE, ACTIONS(5024), 1, anon_sym_CARET, ACTIONS(5026), 1, anon_sym_AMP, ACTIONS(5038), 1, anon_sym_QMARK, ACTIONS(5156), 1, anon_sym_COLON, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, [99851] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2514), 9, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, ACTIONS(2512), 19, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_operator, [99887] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(4463), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4571), 1, anon_sym_DASH_GT, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(5160), 1, anon_sym_LBRACK, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(4569), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(5158), 7, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, STATE(2929), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [99941] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(5162), 1, anon_sym_STAR, ACTIONS(5164), 1, anon_sym_AMP_AMP, ACTIONS(5166), 1, anon_sym_AMP, STATE(3203), 1, sym_parameter_list, STATE(3445), 1, sym__abstract_declarator, STATE(3187), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(3720), 8, anon_sym_RPAREN, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [99997] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5168), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [100071] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5170), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [100145] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5172), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [100219] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(4599), 1, sym_identifier, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(4605), 1, anon_sym_class, ACTIONS(4607), 1, anon_sym_struct, ACTIONS(4609), 1, anon_sym_union, ACTIONS(4699), 1, anon_sym_enum, ACTIONS(4701), 1, anon_sym_typename, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(2559), 1, sym__type_specifier, STATE(4042), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [100287] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3977), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3975), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [100323] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3981), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3979), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [100359] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5174), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [100433] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, ACTIONS(5176), 1, anon_sym_RBRACK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [100507] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4053), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(4051), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [100543] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5018), 1, anon_sym_PIPE_PIPE, ACTIONS(5020), 1, anon_sym_AMP_AMP, ACTIONS(5022), 1, anon_sym_PIPE, ACTIONS(5024), 1, anon_sym_CARET, ACTIONS(5026), 1, anon_sym_AMP, ACTIONS(5038), 1, anon_sym_QMARK, ACTIONS(5178), 1, anon_sym_COLON, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, [100617] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5180), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [100691] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2963), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(2955), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [100727] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(4809), 1, anon_sym_STAR, ACTIONS(4811), 1, anon_sym_AMP_AMP, ACTIONS(4813), 1, anon_sym_AMP, ACTIONS(5004), 1, anon_sym_const, STATE(3180), 1, sym_parameter_list, STATE(3297), 1, sym__abstract_declarator, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(5002), 15, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [100779] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5018), 1, anon_sym_PIPE_PIPE, ACTIONS(5020), 1, anon_sym_AMP_AMP, ACTIONS(5022), 1, anon_sym_PIPE, ACTIONS(5024), 1, anon_sym_CARET, ACTIONS(5026), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3937), 3, anon_sym_DOT_DOT_DOT, anon_sym_COLON, anon_sym_QMARK, [100849] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5182), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [100923] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5184), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [100997] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4795), 1, anon_sym___attribute__, ACTIONS(5188), 1, anon_sym___declspec, ACTIONS(5190), 1, anon_sym_virtual, ACTIONS(4226), 2, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(4228), 3, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(5186), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, STATE(3050), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [101049] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5192), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [101123] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5194), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [101197] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2326), 1, anon_sym_decltype, ACTIONS(4751), 1, sym_identifier, ACTIONS(4753), 1, anon_sym_COLON_COLON, ACTIONS(4755), 1, anon_sym_enum, ACTIONS(4757), 1, anon_sym_class, ACTIONS(4759), 1, anon_sym_struct, ACTIONS(4761), 1, anon_sym_union, ACTIONS(4763), 1, anon_sym_typename, STATE(1953), 1, aux_sym_sized_type_specifier_repeat1, STATE(2371), 1, sym_template_type, STATE(2499), 1, sym_qualified_type_identifier, STATE(2647), 1, sym__type_specifier, STATE(4033), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(2328), 2, sym_primitive_type, sym_auto, ACTIONS(2302), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2501), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [101265] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5196), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [101339] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4567), 1, anon_sym_LBRACK, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(4795), 1, anon_sym___attribute__, ACTIONS(5198), 1, anon_sym_DASH_GT, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, STATE(3184), 2, sym_attribute_specifier, aux_sym_function_declarator_repeat1, ACTIONS(4559), 4, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3197), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [101397] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3894), 1, anon_sym_STAR, ACTIONS(3896), 1, anon_sym_AMP_AMP, ACTIONS(3898), 1, anon_sym_AMP, STATE(3650), 1, sym__declarator, STATE(3672), 1, sym__scope_resolution, STATE(4560), 1, sym_init_declarator, STATE(5088), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [101463] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4025), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(4023), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [101499] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5200), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [101573] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3672), 1, sym__scope_resolution, STATE(3678), 1, sym__declarator, STATE(4570), 1, sym_init_declarator, STATE(5333), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [101639] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5202), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [101713] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5204), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [101787] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2400), 1, sym_identifier, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(2410), 1, anon_sym_enum, ACTIONS(2412), 1, anon_sym_class, ACTIONS(2414), 1, anon_sym_struct, ACTIONS(2416), 1, anon_sym_union, ACTIONS(2418), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2302), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3181), 1, sym__type_specifier, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(2408), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [101855] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(4809), 1, anon_sym_STAR, ACTIONS(4811), 1, anon_sym_AMP_AMP, ACTIONS(4813), 1, anon_sym_AMP, ACTIONS(4922), 1, anon_sym_const, STATE(3180), 1, sym_parameter_list, STATE(3307), 1, sym__abstract_declarator, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(4277), 15, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [101907] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5206), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [101981] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, ACTIONS(5208), 1, anon_sym_RBRACK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [102055] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4669), 1, sym_identifier, ACTIONS(4671), 1, anon_sym_COLON_COLON, ACTIONS(4677), 1, anon_sym_enum, ACTIONS(4679), 1, anon_sym_class, ACTIONS(4681), 1, anon_sym_struct, ACTIONS(4683), 1, anon_sym_union, ACTIONS(4685), 1, anon_sym_decltype, ACTIONS(4687), 1, anon_sym_typename, STATE(1680), 1, aux_sym_sized_type_specifier_repeat1, STATE(1976), 1, sym_template_type, STATE(1984), 1, sym_qualified_type_identifier, STATE(2006), 1, sym__type_specifier, STATE(4048), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4675), 2, sym_primitive_type, sym_auto, ACTIONS(4673), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(1992), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [102123] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3672), 1, sym__scope_resolution, STATE(3680), 1, sym__declarator, STATE(4560), 1, sym_init_declarator, STATE(5333), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [102189] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1749), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(1751), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [102225] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1397), 1, anon_sym_enum, ACTIONS(1399), 1, anon_sym_class, ACTIONS(1401), 1, anon_sym_struct, ACTIONS(1403), 1, anon_sym_union, ACTIONS(1405), 1, anon_sym_decltype, ACTIONS(2651), 1, sym_identifier, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4411), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2536), 1, sym__type_specifier, STATE(2555), 1, sym_qualified_type_identifier, STATE(2771), 1, aux_sym_sized_type_specifier_repeat1, STATE(4035), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1395), 2, sym_primitive_type, sym_auto, ACTIONS(4409), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2577), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [102293] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5210), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [102367] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4649), 1, sym_identifier, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(4659), 1, anon_sym_class, ACTIONS(4661), 1, anon_sym_struct, ACTIONS(4663), 1, anon_sym_union, ACTIONS(4665), 1, anon_sym_decltype, ACTIONS(4799), 1, anon_sym_enum, ACTIONS(4801), 1, anon_sym_typename, STATE(1627), 1, aux_sym_sized_type_specifier_repeat1, STATE(1677), 1, sym__type_specifier, STATE(1717), 1, sym_template_type, STATE(1770), 1, sym_qualified_type_identifier, STATE(4019), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4655), 2, sym_primitive_type, sym_auto, ACTIONS(4653), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(1754), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [102435] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5212), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [102509] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3657), 1, sym__declarator, STATE(3672), 1, sym__scope_resolution, STATE(4546), 1, sym_init_declarator, STATE(5333), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [102575] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(4599), 1, sym_identifier, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(4603), 1, anon_sym_enum, ACTIONS(4605), 1, anon_sym_class, ACTIONS(4607), 1, anon_sym_struct, ACTIONS(4609), 1, anon_sym_union, ACTIONS(4611), 1, anon_sym_typename, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(2602), 1, sym__type_specifier, STATE(4042), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [102643] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1756), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(1758), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [102679] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(2861), 1, anon_sym_RBRACK, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [102753] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(2839), 1, anon_sym_RBRACK, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [102827] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4033), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(4031), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [102863] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4795), 1, anon_sym___attribute__, ACTIONS(5188), 1, anon_sym___declspec, ACTIONS(5190), 1, anon_sym_virtual, ACTIONS(4182), 2, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(4184), 3, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(5186), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, STATE(3125), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [102915] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4649), 1, sym_identifier, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(4659), 1, anon_sym_class, ACTIONS(4661), 1, anon_sym_struct, ACTIONS(4663), 1, anon_sym_union, ACTIONS(4665), 1, anon_sym_decltype, ACTIONS(4799), 1, anon_sym_enum, ACTIONS(4801), 1, anon_sym_typename, STATE(1627), 1, aux_sym_sized_type_specifier_repeat1, STATE(1668), 1, sym__type_specifier, STATE(1717), 1, sym_template_type, STATE(1770), 1, sym_qualified_type_identifier, STATE(4019), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4655), 2, sym_primitive_type, sym_auto, ACTIONS(4653), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(1754), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [102983] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3935), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3933), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [103019] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4795), 1, anon_sym___attribute__, ACTIONS(5188), 1, anon_sym___declspec, ACTIONS(5190), 1, anon_sym_virtual, ACTIONS(4222), 2, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(4224), 3, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(5186), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, STATE(3125), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [103071] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(4579), 1, anon_sym_LBRACK, ACTIONS(4795), 1, anon_sym___attribute__, ACTIONS(5198), 1, anon_sym_DASH_GT, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, STATE(3026), 2, sym_attribute_specifier, aux_sym_function_declarator_repeat1, ACTIONS(4577), 4, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3199), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [103129] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5214), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [103203] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(1353), 1, anon_sym_enum, ACTIONS(1355), 1, anon_sym_class, ACTIONS(1357), 1, anon_sym_struct, ACTIONS(1359), 1, anon_sym_union, ACTIONS(1361), 1, anon_sym_typename, ACTIONS(2651), 1, sym_identifier, ACTIONS(2661), 1, anon_sym_COLON_COLON, STATE(2092), 1, sym_template_type, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(2319), 1, sym__type_specifier, STATE(4015), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [103271] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(2821), 1, anon_sym_RBRACK, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [103345] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5018), 1, anon_sym_PIPE_PIPE, ACTIONS(5020), 1, anon_sym_AMP_AMP, ACTIONS(5022), 1, anon_sym_PIPE, ACTIONS(5024), 1, anon_sym_CARET, ACTIONS(5026), 1, anon_sym_AMP, ACTIONS(5038), 1, anon_sym_QMARK, ACTIONS(5216), 1, anon_sym_COLON, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, [103419] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5218), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [103493] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5220), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [103567] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(2829), 1, anon_sym_RBRACK, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [103641] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(4599), 1, sym_identifier, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(4605), 1, anon_sym_class, ACTIONS(4607), 1, anon_sym_struct, ACTIONS(4609), 1, anon_sym_union, ACTIONS(4699), 1, anon_sym_enum, ACTIONS(4701), 1, anon_sym_typename, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(2251), 1, sym__type_specifier, STATE(4042), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [103709] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3664), 1, sym__declarator, STATE(3672), 1, sym__scope_resolution, STATE(4406), 1, sym_init_declarator, STATE(5333), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [103775] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3645), 1, sym__declarator, STATE(3672), 1, sym__scope_resolution, STATE(4570), 1, sym_init_declarator, STATE(5333), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [103841] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4045), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(4043), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [103877] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1397), 1, anon_sym_enum, ACTIONS(1399), 1, anon_sym_class, ACTIONS(1401), 1, anon_sym_struct, ACTIONS(1403), 1, anon_sym_union, ACTIONS(1405), 1, anon_sym_decltype, ACTIONS(1409), 1, anon_sym_typename, ACTIONS(2651), 1, sym_identifier, ACTIONS(3290), 1, anon_sym_COLON_COLON, STATE(2092), 1, sym_template_type, STATE(2536), 1, sym__type_specifier, STATE(2555), 1, sym_qualified_type_identifier, STATE(2641), 1, aux_sym_sized_type_specifier_repeat1, STATE(4035), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1395), 2, sym_primitive_type, sym_auto, ACTIONS(1393), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2577), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [103945] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, ACTIONS(5222), 1, anon_sym_RBRACK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [104019] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4795), 1, anon_sym___attribute__, ACTIONS(5188), 1, anon_sym___declspec, ACTIONS(5190), 1, anon_sym_virtual, ACTIONS(4194), 2, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(4196), 3, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(5186), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, STATE(3053), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [104071] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5224), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [104145] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(4599), 1, sym_identifier, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(4603), 1, anon_sym_enum, ACTIONS(4605), 1, anon_sym_class, ACTIONS(4607), 1, anon_sym_struct, ACTIONS(4609), 1, anon_sym_union, ACTIONS(4611), 1, anon_sym_typename, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(2251), 1, sym__type_specifier, STATE(4042), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [104213] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5018), 1, anon_sym_PIPE_PIPE, ACTIONS(5020), 1, anon_sym_AMP_AMP, ACTIONS(5022), 1, anon_sym_PIPE, ACTIONS(5024), 1, anon_sym_CARET, ACTIONS(5026), 1, anon_sym_AMP, ACTIONS(5038), 1, anon_sym_QMARK, ACTIONS(5226), 1, anon_sym_COLON, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, [104287] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2518), 9, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, ACTIONS(2516), 19, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_operator, [104323] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5228), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [104397] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, ACTIONS(5230), 1, anon_sym_RBRACK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [104471] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(4809), 1, anon_sym_STAR, ACTIONS(4811), 1, anon_sym_AMP_AMP, ACTIONS(4813), 1, anon_sym_AMP, ACTIONS(4866), 1, anon_sym_const, STATE(3180), 1, sym_parameter_list, STATE(3292), 1, sym__abstract_declarator, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(4864), 15, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [104523] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3884), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3882), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [104559] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5232), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [104633] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2651), 1, sym_identifier, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(4417), 1, anon_sym_enum, ACTIONS(4419), 1, anon_sym_class, ACTIONS(4421), 1, anon_sym_struct, ACTIONS(4423), 1, anon_sym_union, ACTIONS(4425), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2302), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(3075), 1, sym__type_specifier, STATE(4015), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(2408), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [104701] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3880), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3878), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [104737] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5234), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [104811] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4049), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(4047), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [104847] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3876), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3874), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [104883] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3647), 1, sym__declarator, STATE(3672), 1, sym__scope_resolution, STATE(4406), 1, sym_init_declarator, STATE(5333), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [104949] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(5162), 1, anon_sym_STAR, ACTIONS(5164), 1, anon_sym_AMP_AMP, ACTIONS(5166), 1, anon_sym_AMP, STATE(3203), 1, sym_parameter_list, STATE(3447), 1, sym__abstract_declarator, STATE(3004), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(3235), 8, anon_sym_RPAREN, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [105005] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(4599), 1, sym_identifier, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(4605), 1, anon_sym_class, ACTIONS(4607), 1, anon_sym_struct, ACTIONS(4609), 1, anon_sym_union, ACTIONS(4699), 1, anon_sym_enum, ACTIONS(4701), 1, anon_sym_typename, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(2602), 1, sym__type_specifier, STATE(4042), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [105073] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1712), 1, anon_sym_class, ACTIONS(1714), 1, anon_sym_struct, ACTIONS(1716), 1, anon_sym_union, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(4281), 1, sym_identifier, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(4395), 1, anon_sym_enum, ACTIONS(4397), 1, anon_sym_typename, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(3670), 1, sym__type_specifier, STATE(4023), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [105141] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5236), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [105215] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4007), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(4005), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [105251] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5238), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [105325] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4011), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(4009), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [105361] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(2873), 1, anon_sym_RBRACK, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [105435] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, ACTIONS(5240), 1, anon_sym_RBRACK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [105509] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3665), 1, sym__declarator, STATE(3672), 1, sym__scope_resolution, STATE(4485), 1, sym_init_declarator, STATE(5333), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [105575] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5242), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [105649] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5018), 1, anon_sym_PIPE_PIPE, ACTIONS(5020), 1, anon_sym_AMP_AMP, ACTIONS(5022), 1, anon_sym_PIPE, ACTIONS(5024), 1, anon_sym_CARET, ACTIONS(5026), 1, anon_sym_AMP, ACTIONS(5038), 1, anon_sym_QMARK, ACTIONS(5244), 1, anon_sym_COLON, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, [105723] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, ACTIONS(5246), 1, anon_sym_RBRACK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [105797] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5248), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [105871] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5250), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [105945] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5252), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [106019] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(2863), 1, anon_sym_RBRACK, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [106093] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5254), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [106167] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3902), 7, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3900), 14, anon_sym_DOT_DOT_DOT, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_COLON, anon_sym_QMARK, [106215] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5256), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [106289] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4057), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(4055), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [106325] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5258), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [106399] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3906), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3904), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [106435] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(2911), 1, anon_sym_RBRACK, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [106509] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5260), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [106583] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(4463), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4571), 1, anon_sym_DASH_GT, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(5264), 1, anon_sym_LBRACK, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(4569), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(5262), 7, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, STATE(3000), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [106637] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5266), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [106711] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(1718), 1, anon_sym_decltype, ACTIONS(4599), 1, sym_identifier, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(4603), 1, anon_sym_enum, ACTIONS(4605), 1, anon_sym_class, ACTIONS(4607), 1, anon_sym_struct, ACTIONS(4609), 1, anon_sym_union, ACTIONS(4611), 1, anon_sym_typename, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(2066), 1, sym_template_type, STATE(2199), 1, sym_qualified_type_identifier, STATE(2513), 1, sym__type_specifier, STATE(4042), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(1720), 2, sym_primitive_type, sym_auto, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2128), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [106779] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3864), 10, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT, anon_sym_GT_GT, anon_sym_DOT, ACTIONS(3862), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_DASH_GT, anon_sym_GT2, [106815] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5018), 1, anon_sym_PIPE_PIPE, ACTIONS(5020), 1, anon_sym_AMP_AMP, ACTIONS(5022), 1, anon_sym_PIPE, ACTIONS(5024), 1, anon_sym_CARET, ACTIONS(5026), 1, anon_sym_AMP, ACTIONS(5038), 1, anon_sym_QMARK, ACTIONS(5268), 1, anon_sym_COLON, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, [106889] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5270), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [106963] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2651), 1, sym_identifier, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(4417), 1, anon_sym_enum, ACTIONS(4419), 1, anon_sym_class, ACTIONS(4421), 1, anon_sym_struct, ACTIONS(4423), 1, anon_sym_union, ACTIONS(4425), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2302), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(2319), 1, sym__type_specifier, STATE(4015), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(2408), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [107031] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5272), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [107105] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(2857), 1, anon_sym_RBRACK, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4709), 1, anon_sym_SLASH, ACTIONS(4711), 1, anon_sym_PIPE_PIPE, ACTIONS(4713), 1, anon_sym_AMP_AMP, ACTIONS(4715), 1, anon_sym_PIPE, ACTIONS(4717), 1, anon_sym_CARET, ACTIONS(4719), 1, anon_sym_AMP, ACTIONS(4731), 1, anon_sym_QMARK, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4705), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4707), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4721), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4723), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4725), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4727), 2, anon_sym_LT_LT, anon_sym_GT_GT, [107179] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4369), 1, sym_identifier, ACTIONS(4371), 1, anon_sym_COLON_COLON, ACTIONS(4377), 1, anon_sym_enum, ACTIONS(4379), 1, anon_sym_class, ACTIONS(4381), 1, anon_sym_struct, ACTIONS(4383), 1, anon_sym_union, ACTIONS(4385), 1, anon_sym_decltype, ACTIONS(4387), 1, anon_sym_typename, STATE(3533), 1, sym__type_specifier, STATE(3578), 1, aux_sym_sized_type_specifier_repeat1, STATE(3884), 1, sym_template_type, STATE(3925), 1, sym_qualified_type_identifier, STATE(4029), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4375), 2, sym_primitive_type, sym_auto, ACTIONS(4373), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(3964), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [107247] = 20, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, ACTIONS(5016), 1, anon_sym_SLASH, ACTIONS(5018), 1, anon_sym_PIPE_PIPE, ACTIONS(5020), 1, anon_sym_AMP_AMP, ACTIONS(5022), 1, anon_sym_PIPE, ACTIONS(5024), 1, anon_sym_CARET, ACTIONS(5026), 1, anon_sym_AMP, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(5012), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5014), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5028), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5030), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5032), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5034), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(3971), 3, anon_sym_DOT_DOT_DOT, anon_sym_COLON, anon_sym_QMARK, [107317] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5274), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [107391] = 19, ACTIONS(3), 1, sym_comment, ACTIONS(105), 1, anon_sym_decltype, ACTIONS(931), 1, anon_sym_template, ACTIONS(2651), 1, sym_identifier, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(4417), 1, anon_sym_enum, ACTIONS(4419), 1, anon_sym_class, ACTIONS(4421), 1, anon_sym_struct, ACTIONS(4423), 1, anon_sym_union, ACTIONS(4425), 1, anon_sym_typename, STATE(2092), 1, sym_template_type, STATE(2302), 1, aux_sym_sized_type_specifier_repeat1, STATE(2306), 1, sym_qualified_type_identifier, STATE(4015), 1, sym__scope_resolution, STATE(4724), 1, sym__type_specifier, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(111), 2, sym_primitive_type, sym_auto, ACTIONS(2408), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, STATE(2326), 7, sym_sized_type_specifier, sym_enum_specifier, sym_struct_specifier, sym_union_specifier, sym_decltype, sym_class_specifier, sym_dependent_type, [107459] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5276), 1, anon_sym_RPAREN, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [107533] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(4186), 1, anon_sym_DOT, ACTIONS(4188), 1, anon_sym_DASH_GT, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(3832), 7, anon_sym_DASH, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3808), 14, anon_sym_DOT_DOT_DOT, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_COLON, anon_sym_QMARK, [107581] = 22, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, ACTIONS(3830), 1, anon_sym_LBRACK, ACTIONS(3836), 1, anon_sym_DOT, ACTIONS(3838), 1, anon_sym_DASH_GT, ACTIONS(4533), 1, anon_sym_SLASH, ACTIONS(4535), 1, anon_sym_PIPE_PIPE, ACTIONS(4537), 1, anon_sym_AMP_AMP, ACTIONS(4539), 1, anon_sym_PIPE, ACTIONS(4541), 1, anon_sym_CARET, ACTIONS(4543), 1, anon_sym_AMP, ACTIONS(4555), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4557), 1, anon_sym_QMARK, ACTIONS(5278), 1, anon_sym_SEMI, STATE(1863), 1, sym_argument_list, ACTIONS(4509), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(4529), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(4531), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(4545), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(4547), 2, anon_sym_GT, anon_sym_LT, ACTIONS(4549), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(4551), 2, anon_sym_LT_LT, anon_sym_GT_GT, [107655] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(4243), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4301), 1, anon_sym_const, ACTIONS(5283), 1, anon_sym___attribute__, ACTIONS(5286), 1, anon_sym___declspec, ACTIONS(5292), 1, anon_sym_virtual, ACTIONS(4233), 2, anon_sym_AMP, anon_sym_LBRACK, ACTIONS(4235), 3, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, ACTIONS(5280), 5, anon_sym_extern, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, ACTIONS(5289), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3125), 8, sym__declaration_modifiers, sym_attribute_specifier, sym_attribute_declaration, sym_ms_declspec_modifier, sym_storage_class_specifier, sym_type_qualifier, sym_virtual_function_specifier, aux_sym__declaration_specifiers_repeat1, [107707] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4567), 1, anon_sym_LBRACK, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(4795), 1, anon_sym___attribute__, ACTIONS(5295), 1, anon_sym_DASH_GT, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, STATE(3184), 2, sym_attribute_specifier, aux_sym_function_declarator_repeat1, ACTIONS(4559), 3, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3212), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [107764] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(4829), 1, anon_sym_DASH_GT, ACTIONS(5160), 1, anon_sym_LBRACK, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(5158), 6, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, STATE(3149), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [107817] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3894), 1, anon_sym_STAR, ACTIONS(3896), 1, anon_sym_AMP_AMP, ACTIONS(3898), 1, anon_sym_AMP, STATE(3672), 1, sym__scope_resolution, STATE(3755), 1, sym__declarator, STATE(5088), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [107880] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3096), 1, sym_identifier, ACTIONS(3288), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, STATE(3666), 1, sym__scope_resolution, STATE(4022), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [107943] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3096), 1, sym_identifier, ACTIONS(3288), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, STATE(3666), 1, sym__scope_resolution, STATE(4036), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [108006] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3919), 1, sym_identifier, ACTIONS(3921), 1, anon_sym_STAR, ACTIONS(3923), 1, anon_sym_AMP_AMP, ACTIONS(3925), 1, anon_sym_AMP, ACTIONS(3927), 1, anon_sym_COLON_COLON, STATE(3661), 1, sym__scope_resolution, STATE(4039), 1, sym__declarator, STATE(5190), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [108069] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(4463), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4571), 1, anon_sym_DASH_GT, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(5299), 1, anon_sym_LBRACK, STATE(3245), 1, sym_trailing_return_type, ACTIONS(4569), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3151), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, ACTIONS(5297), 9, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_final, anon_sym_override, [108122] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5303), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(5301), 21, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_explicit, anon_sym_template, anon_sym_operator, [108157] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(5305), 1, anon_sym_STAR, ACTIONS(5307), 1, anon_sym_AMP_AMP, ACTIONS(5309), 1, anon_sym_AMP, STATE(3231), 1, sym_parameter_list, STATE(3471), 1, sym__abstract_declarator, STATE(3187), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(3720), 7, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [108212] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4567), 1, anon_sym_LBRACK, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(4797), 1, anon_sym_DASH_GT, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4559), 6, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_GT2, STATE(3140), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [108265] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3850), 1, anon_sym_STAR, ACTIONS(3852), 1, anon_sym_AMP_AMP, ACTIONS(3854), 1, anon_sym_AMP, ACTIONS(3856), 1, anon_sym_LBRACK, STATE(3672), 1, sym__scope_resolution, STATE(3822), 1, sym__declarator, STATE(5456), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [108328] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(4797), 1, anon_sym_DASH_GT, ACTIONS(5160), 1, anon_sym_LBRACK, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(5158), 6, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_GT2, STATE(3140), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [108381] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3919), 1, sym_identifier, ACTIONS(3921), 1, anon_sym_STAR, ACTIONS(3923), 1, anon_sym_AMP_AMP, ACTIONS(3925), 1, anon_sym_AMP, ACTIONS(3927), 1, anon_sym_COLON_COLON, STATE(3661), 1, sym__scope_resolution, STATE(3921), 1, sym__declarator, STATE(5190), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [108444] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3233), 1, sym_identifier, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3957), 1, anon_sym_STAR, ACTIONS(3959), 1, anon_sym_AMP_AMP, ACTIONS(3961), 1, anon_sym_AMP, STATE(3672), 1, sym__scope_resolution, STATE(3798), 1, sym__declarator, STATE(5333), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [108507] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(5070), 1, anon_sym_AMP_AMP, ACTIONS(5073), 1, anon_sym_AMP, ACTIONS(5076), 1, anon_sym_LBRACK, ACTIONS(5090), 1, anon_sym_noexcept, ACTIONS(5093), 1, anon_sym_throw, ACTIONS(5311), 1, anon_sym_const, ACTIONS(5317), 1, anon_sym_DASH_GT, ACTIONS(5087), 2, anon_sym_final, anon_sym_override, ACTIONS(5314), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(5068), 6, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_GT2, STATE(3140), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [108560] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3096), 1, sym_identifier, ACTIONS(3288), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, STATE(3666), 1, sym__scope_resolution, STATE(3929), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [108623] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3919), 1, sym_identifier, ACTIONS(3921), 1, anon_sym_STAR, ACTIONS(3923), 1, anon_sym_AMP_AMP, ACTIONS(3925), 1, anon_sym_AMP, ACTIONS(3927), 1, anon_sym_COLON_COLON, STATE(3661), 1, sym__scope_resolution, STATE(4005), 1, sym__declarator, STATE(5190), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [108686] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3919), 1, sym_identifier, ACTIONS(3921), 1, anon_sym_STAR, ACTIONS(3923), 1, anon_sym_AMP_AMP, ACTIONS(3925), 1, anon_sym_AMP, ACTIONS(3927), 1, anon_sym_COLON_COLON, STATE(3661), 1, sym__scope_resolution, STATE(3951), 1, sym__declarator, STATE(5190), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [108749] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(5305), 1, anon_sym_STAR, ACTIONS(5307), 1, anon_sym_AMP_AMP, ACTIONS(5309), 1, anon_sym_AMP, STATE(3231), 1, sym_parameter_list, STATE(3473), 1, sym__abstract_declarator, STATE(3134), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(3235), 7, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [108804] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(4463), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4571), 1, anon_sym_DASH_GT, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(5322), 1, anon_sym_LBRACK, STATE(3238), 1, sym_trailing_return_type, ACTIONS(4569), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3177), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, ACTIONS(5320), 9, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_final, anon_sym_override, [108857] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3096), 1, sym_identifier, ACTIONS(3288), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, STATE(3666), 1, sym__scope_resolution, STATE(4017), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [108920] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3077), 1, anon_sym_LBRACK, ACTIONS(3070), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, ACTIONS(3073), 5, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, ACTIONS(3066), 19, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [108959] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3919), 1, sym_identifier, ACTIONS(3921), 1, anon_sym_STAR, ACTIONS(3923), 1, anon_sym_AMP_AMP, ACTIONS(3925), 1, anon_sym_AMP, ACTIONS(3927), 1, anon_sym_COLON_COLON, STATE(3661), 1, sym__scope_resolution, STATE(3922), 1, sym__declarator, STATE(5190), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [109022] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(5070), 1, anon_sym_AMP_AMP, ACTIONS(5073), 1, anon_sym_AMP, ACTIONS(5076), 1, anon_sym_LBRACK, ACTIONS(5090), 1, anon_sym_noexcept, ACTIONS(5093), 1, anon_sym_throw, ACTIONS(5311), 1, anon_sym_const, ACTIONS(5324), 1, anon_sym_DASH_GT, ACTIONS(5087), 2, anon_sym_final, anon_sym_override, ACTIONS(5314), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(5068), 6, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, STATE(3149), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [109075] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(4463), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4571), 1, anon_sym_DASH_GT, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(5329), 1, anon_sym_LBRACK, STATE(3237), 1, sym_trailing_return_type, ACTIONS(4569), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3145), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, ACTIONS(5327), 9, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_final, anon_sym_override, [109128] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(4463), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4571), 1, anon_sym_DASH_GT, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(5333), 1, anon_sym_LBRACK, STATE(3234), 1, sym_trailing_return_type, ACTIONS(4569), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3177), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, ACTIONS(5331), 9, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_final, anon_sym_override, [109181] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3096), 1, sym_identifier, ACTIONS(3288), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, STATE(3666), 1, sym__scope_resolution, STATE(4059), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [109244] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(5337), 1, anon_sym_AMP_AMP, ACTIONS(5340), 1, anon_sym_AMP, ACTIONS(5343), 1, anon_sym_LBRACK, ACTIONS(5345), 1, anon_sym_const, ACTIONS(5351), 1, anon_sym_noexcept, ACTIONS(5354), 1, anon_sym_throw, ACTIONS(5348), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3153), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, ACTIONS(5335), 11, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, [109293] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3896), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(3191), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(3426), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, [109350] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5365), 1, anon_sym_LPAREN2, ACTIONS(5367), 5, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(5363), 21, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_explicit, anon_sym_template, anon_sym_operator, [109387] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3861), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(3166), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(3420), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, [109444] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4567), 1, anon_sym_LBRACK, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(4829), 1, anon_sym_DASH_GT, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(4559), 6, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, STATE(3149), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [109497] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3919), 1, sym_identifier, ACTIONS(3921), 1, anon_sym_STAR, ACTIONS(3923), 1, anon_sym_AMP_AMP, ACTIONS(3925), 1, anon_sym_AMP, ACTIONS(3927), 1, anon_sym_COLON_COLON, STATE(3661), 1, sym__scope_resolution, STATE(3966), 1, sym__declarator, STATE(5190), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [109560] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3919), 1, sym_identifier, ACTIONS(3921), 1, anon_sym_STAR, ACTIONS(3923), 1, anon_sym_AMP_AMP, ACTIONS(3925), 1, anon_sym_AMP, ACTIONS(3927), 1, anon_sym_COLON_COLON, STATE(3661), 1, sym__scope_resolution, STATE(3960), 1, sym__declarator, STATE(5190), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [109623] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3410), 1, anon_sym_SEMI, ACTIONS(3515), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK_LBRACK, ACTIONS(3517), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [109660] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(4579), 1, anon_sym_LBRACK, ACTIONS(4795), 1, anon_sym___attribute__, ACTIONS(5295), 1, anon_sym_DASH_GT, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, STATE(3126), 2, sym_attribute_specifier, aux_sym_function_declarator_repeat1, ACTIONS(4577), 3, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3215), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [109717] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3300), 13, anon_sym_AMP, anon_sym___based, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_template, anon_sym_operator, anon_sym_noexcept, anon_sym_throw, ACTIONS(3302), 14, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, [109752] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3410), 1, anon_sym_SEMI, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3515), 5, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACK_LBRACK, ACTIONS(3517), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [109791] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3856), 1, anon_sym_LBRACK, ACTIONS(3919), 1, sym_identifier, ACTIONS(3921), 1, anon_sym_STAR, ACTIONS(3923), 1, anon_sym_AMP_AMP, ACTIONS(3925), 1, anon_sym_AMP, ACTIONS(3927), 1, anon_sym_COLON_COLON, STATE(3661), 1, sym__scope_resolution, STATE(3913), 1, sym__declarator, STATE(5190), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [109854] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(29), 1, anon_sym_AMP_AMP, ACTIONS(47), 1, anon_sym___based, ACTIONS(931), 1, anon_sym_template, ACTIONS(1379), 1, anon_sym_LPAREN2, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1383), 1, anon_sym_STAR, ACTIONS(1385), 1, anon_sym_AMP, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3096), 1, sym_identifier, ACTIONS(3288), 1, anon_sym_COLON_COLON, ACTIONS(3856), 1, anon_sym_LBRACK, STATE(3666), 1, sym__scope_resolution, STATE(4009), 1, sym__declarator, STATE(5398), 1, sym_ms_based_modifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, STATE(3782), 11, sym_parenthesized_declarator, sym_attributed_declarator, sym_pointer_declarator, sym_function_declarator, sym_array_declarator, sym_reference_declarator, sym_structured_binding_declarator, sym_template_function, sym_destructor_name, sym_qualified_identifier, sym_operator_name, [109917] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3853), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(3191), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(3395), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, [109974] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, STATE(3853), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, ACTIONS(2392), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(3154), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, STATE(3395), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(2390), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, [110031] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(4922), 1, anon_sym_const, ACTIONS(5162), 1, anon_sym_STAR, ACTIONS(5164), 1, anon_sym_AMP_AMP, ACTIONS(5166), 1, anon_sym_AMP, STATE(3203), 1, sym_parameter_list, STATE(3446), 1, sym__abstract_declarator, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(4277), 13, anon_sym_RPAREN, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [110081] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(4829), 1, anon_sym_DASH_GT, ACTIONS(5299), 1, anon_sym_LBRACK, STATE(3245), 1, sym_trailing_return_type, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3174), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, ACTIONS(5297), 8, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_final, anon_sym_override, [110133] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4192), 8, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, ACTIONS(4190), 18, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_operator, [110167] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(4797), 1, anon_sym_DASH_GT, ACTIONS(5322), 1, anon_sym_LBRACK, STATE(3238), 1, sym_trailing_return_type, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3153), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, ACTIONS(5320), 8, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_final, anon_sym_override, anon_sym_GT2, [110219] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3500), 8, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, ACTIONS(3498), 18, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_operator, [110253] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4180), 8, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, ACTIONS(4178), 18, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_operator, [110287] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(4829), 1, anon_sym_DASH_GT, ACTIONS(5333), 1, anon_sym_LBRACK, STATE(3234), 1, sym_trailing_return_type, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3153), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, ACTIONS(5331), 8, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_final, anon_sym_override, [110339] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(4797), 1, anon_sym_DASH_GT, ACTIONS(5329), 1, anon_sym_LBRACK, STATE(3237), 1, sym_trailing_return_type, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3171), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, ACTIONS(5327), 8, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_final, anon_sym_override, anon_sym_GT2, [110391] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(4797), 1, anon_sym_DASH_GT, ACTIONS(5333), 1, anon_sym_LBRACK, STATE(3234), 1, sym_trailing_return_type, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3153), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, ACTIONS(5331), 8, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_final, anon_sym_override, anon_sym_GT2, [110443] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(5337), 1, anon_sym_AMP_AMP, ACTIONS(5340), 1, anon_sym_AMP, ACTIONS(5343), 1, anon_sym_LBRACK, ACTIONS(5351), 1, anon_sym_noexcept, ACTIONS(5354), 1, anon_sym_throw, ACTIONS(5369), 1, anon_sym_const, ACTIONS(5372), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3177), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, ACTIONS(5335), 10, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, [110491] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(4829), 1, anon_sym_DASH_GT, ACTIONS(5329), 1, anon_sym_LBRACK, STATE(3237), 1, sym_trailing_return_type, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3183), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, ACTIONS(5327), 8, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_final, anon_sym_override, [110543] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(5004), 1, anon_sym_const, ACTIONS(5162), 1, anon_sym_STAR, ACTIONS(5164), 1, anon_sym_AMP_AMP, ACTIONS(5166), 1, anon_sym_AMP, STATE(3203), 1, sym_parameter_list, STATE(3443), 1, sym__abstract_declarator, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(5002), 13, anon_sym_RPAREN, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [110593] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(4797), 1, anon_sym_DASH_GT, ACTIONS(5299), 1, anon_sym_LBRACK, STATE(3245), 1, sym_trailing_return_type, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3176), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, ACTIONS(5297), 8, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_final, anon_sym_override, anon_sym_GT2, [110645] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(4866), 1, anon_sym_const, ACTIONS(5162), 1, anon_sym_STAR, ACTIONS(5164), 1, anon_sym_AMP_AMP, ACTIONS(5166), 1, anon_sym_AMP, STATE(3203), 1, sym_parameter_list, STATE(3460), 1, sym__abstract_declarator, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(4864), 13, anon_sym_RPAREN, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [110695] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3515), 5, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACK_LBRACK, ACTIONS(3517), 20, anon_sym_AMP, anon_sym_extern, anon_sym___attribute__, anon_sym___declspec, anon_sym___based, anon_sym_LBRACK, anon_sym_static, anon_sym_register, anon_sym_inline, anon_sym_thread_local, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_virtual, anon_sym_template, anon_sym_operator, [110731] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(4829), 1, anon_sym_DASH_GT, ACTIONS(5322), 1, anon_sym_LBRACK, STATE(3238), 1, sym_trailing_return_type, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3153), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, ACTIONS(5320), 8, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_final, anon_sym_override, [110783] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5379), 1, anon_sym___attribute__, STATE(3184), 2, sym_attribute_specifier, aux_sym_function_declarator_repeat1, ACTIONS(5377), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5375), 19, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [110820] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(4480), 1, anon_sym_LPAREN2, ACTIONS(4488), 1, sym_identifier, ACTIONS(4490), 1, anon_sym_STAR, ACTIONS(4492), 1, anon_sym_AMP_AMP, ACTIONS(4494), 1, anon_sym_AMP, STATE(3726), 1, sym__field_declarator, STATE(5140), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3876), 8, sym_parenthesized_field_declarator, sym_attributed_field_declarator, sym_pointer_field_declarator, sym_function_field_declarator, sym_array_field_declarator, sym_reference_field_declarator, sym_template_method, sym_operator_name, [110873] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(4480), 1, anon_sym_LPAREN2, ACTIONS(4488), 1, sym_identifier, ACTIONS(4490), 1, anon_sym_STAR, ACTIONS(4492), 1, anon_sym_AMP_AMP, ACTIONS(4494), 1, anon_sym_AMP, STATE(3749), 1, sym__field_declarator, STATE(5140), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3876), 8, sym_parenthesized_field_declarator, sym_attributed_field_declarator, sym_pointer_field_declarator, sym_function_field_declarator, sym_array_field_declarator, sym_reference_field_declarator, sym_template_method, sym_operator_name, [110926] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5382), 1, anon_sym_const, ACTIONS(3538), 2, anon_sym_AMP, anon_sym_LBRACK, STATE(3187), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(5385), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(3540), 15, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [110965] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(4480), 1, anon_sym_LPAREN2, ACTIONS(4488), 1, sym_identifier, ACTIONS(4490), 1, anon_sym_STAR, ACTIONS(4492), 1, anon_sym_AMP_AMP, ACTIONS(4494), 1, anon_sym_AMP, STATE(3750), 1, sym__field_declarator, STATE(5140), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3876), 8, sym_parenthesized_field_declarator, sym_attributed_field_declarator, sym_pointer_field_declarator, sym_function_field_declarator, sym_array_field_declarator, sym_reference_field_declarator, sym_template_method, sym_operator_name, [111018] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(4478), 1, sym_identifier, ACTIONS(4480), 1, anon_sym_LPAREN2, ACTIONS(4482), 1, anon_sym_STAR, ACTIONS(4484), 1, anon_sym_AMP_AMP, ACTIONS(4486), 1, anon_sym_AMP, STATE(4047), 1, sym__field_declarator, STATE(5243), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3876), 8, sym_parenthesized_field_declarator, sym_attributed_field_declarator, sym_pointer_field_declarator, sym_function_field_declarator, sym_array_field_declarator, sym_reference_field_declarator, sym_template_method, sym_operator_name, [111071] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(5388), 1, anon_sym_COLON, STATE(2245), 1, sym__enum_base_clause, STATE(2261), 1, sym_enumerator_list, ACTIONS(3475), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(3473), 18, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [111112] = 7, ACTIONS(3), 1, sym_comment, STATE(3277), 1, sym_ms_unaligned_ptr_modifier, ACTIONS(5397), 2, anon_sym__unaligned, anon_sym___unaligned, STATE(3191), 2, sym_ms_pointer_modifier, aux_sym_pointer_declarator_repeat1, ACTIONS(5394), 3, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, ACTIONS(5392), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK, ACTIONS(5390), 11, anon_sym_AMP, anon_sym___based, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_template, anon_sym_operator, [111153] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(4478), 1, sym_identifier, ACTIONS(4480), 1, anon_sym_LPAREN2, ACTIONS(4482), 1, anon_sym_STAR, ACTIONS(4484), 1, anon_sym_AMP_AMP, ACTIONS(4486), 1, anon_sym_AMP, STATE(4046), 1, sym__field_declarator, STATE(5243), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3876), 8, sym_parenthesized_field_declarator, sym_attributed_field_declarator, sym_pointer_field_declarator, sym_function_field_declarator, sym_array_field_declarator, sym_reference_field_declarator, sym_template_method, sym_operator_name, [111206] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(4866), 1, anon_sym_const, ACTIONS(5305), 1, anon_sym_STAR, ACTIONS(5307), 1, anon_sym_AMP_AMP, ACTIONS(5309), 1, anon_sym_AMP, STATE(3231), 1, sym_parameter_list, STATE(3474), 1, sym__abstract_declarator, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(4864), 12, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [111255] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(5388), 1, anon_sym_COLON, STATE(2078), 1, sym__enum_base_clause, STATE(2262), 1, sym_enumerator_list, ACTIONS(3492), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(3490), 18, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [111296] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(4478), 1, sym_identifier, ACTIONS(4480), 1, anon_sym_LPAREN2, ACTIONS(4482), 1, anon_sym_STAR, ACTIONS(4484), 1, anon_sym_AMP_AMP, ACTIONS(4486), 1, anon_sym_AMP, STATE(4034), 1, sym__field_declarator, STATE(5243), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3876), 8, sym_parenthesized_field_declarator, sym_attributed_field_declarator, sym_pointer_field_declarator, sym_function_field_declarator, sym_array_field_declarator, sym_reference_field_declarator, sym_template_method, sym_operator_name, [111349] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(5004), 1, anon_sym_const, ACTIONS(5305), 1, anon_sym_STAR, ACTIONS(5307), 1, anon_sym_AMP_AMP, ACTIONS(5309), 1, anon_sym_AMP, STATE(3231), 1, sym_parameter_list, STATE(3475), 1, sym__abstract_declarator, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(5002), 12, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [111398] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(5160), 1, anon_sym_LBRACK, ACTIONS(5198), 1, anon_sym_DASH_GT, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(5158), 4, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3201), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [111449] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5400), 1, anon_sym_AMP_AMP, ACTIONS(5403), 1, anon_sym_AMP, ACTIONS(5406), 1, anon_sym_const, ACTIONS(5412), 1, anon_sym_noexcept, ACTIONS(5415), 1, anon_sym_throw, ACTIONS(5409), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3198), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, ACTIONS(5335), 10, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_DASH_GT, anon_sym_GT2, [111494] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4567), 1, anon_sym_LBRACK, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(5198), 1, anon_sym_DASH_GT, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(4559), 4, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3201), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [111545] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(4589), 1, anon_sym_LPAREN2, ACTIONS(4597), 1, anon_sym_LBRACK, ACTIONS(4922), 1, anon_sym_const, ACTIONS(5305), 1, anon_sym_STAR, ACTIONS(5307), 1, anon_sym_AMP_AMP, ACTIONS(5309), 1, anon_sym_AMP, STATE(3231), 1, sym_parameter_list, STATE(3472), 1, sym__abstract_declarator, STATE(3230), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, ACTIONS(4277), 12, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [111594] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(5070), 1, anon_sym_AMP_AMP, ACTIONS(5073), 1, anon_sym_AMP, ACTIONS(5076), 1, anon_sym_LBRACK, ACTIONS(5090), 1, anon_sym_noexcept, ACTIONS(5093), 1, anon_sym_throw, ACTIONS(5311), 1, anon_sym_const, ACTIONS(5418), 1, anon_sym_DASH_GT, ACTIONS(5087), 2, anon_sym_final, anon_sym_override, ACTIONS(5068), 4, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, ACTIONS(5314), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3201), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [111645] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(5154), 1, anon_sym_LBRACK, ACTIONS(5198), 1, anon_sym_DASH_GT, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(5152), 3, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3201), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [111695] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(5198), 1, anon_sym_DASH_GT, ACTIONS(5299), 1, anon_sym_LBRACK, STATE(3245), 1, sym_trailing_return_type, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3206), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, ACTIONS(5297), 6, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_final, anon_sym_override, [111745] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5388), 1, anon_sym_COLON, STATE(2261), 1, sym_enumerator_list, STATE(3266), 1, sym__enum_base_clause, ACTIONS(3475), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(3473), 18, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [111783] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5423), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5421), 21, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym___attribute__, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [111815] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(5198), 1, anon_sym_DASH_GT, ACTIONS(5333), 1, anon_sym_LBRACK, STATE(3234), 1, sym_trailing_return_type, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3153), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, ACTIONS(5331), 6, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_final, anon_sym_override, [111865] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5388), 1, anon_sym_COLON, STATE(2262), 1, sym_enumerator_list, STATE(3279), 1, sym__enum_base_clause, ACTIONS(3492), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(3490), 18, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [111903] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(5198), 1, anon_sym_DASH_GT, ACTIONS(5329), 1, anon_sym_LBRACK, STATE(3237), 1, sym_trailing_return_type, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3213), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, ACTIONS(5327), 6, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_final, anon_sym_override, [111953] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5427), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5425), 21, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym___attribute__, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [111985] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(5070), 1, anon_sym_AMP_AMP, ACTIONS(5073), 1, anon_sym_AMP, ACTIONS(5076), 1, anon_sym_LBRACK, ACTIONS(5090), 1, anon_sym_noexcept, ACTIONS(5093), 1, anon_sym_throw, ACTIONS(5311), 1, anon_sym_const, ACTIONS(5429), 1, anon_sym_DASH_GT, ACTIONS(5087), 2, anon_sym_final, anon_sym_override, ACTIONS(5068), 3, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, ACTIONS(5314), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3210), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [112035] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5432), 1, anon_sym_const, ACTIONS(3538), 2, anon_sym_AMP, anon_sym_LBRACK, STATE(3211), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(5435), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(3540), 14, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [112073] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(5160), 1, anon_sym_LBRACK, ACTIONS(5295), 1, anon_sym_DASH_GT, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(5158), 3, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3210), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [112123] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(5198), 1, anon_sym_DASH_GT, ACTIONS(5322), 1, anon_sym_LBRACK, STATE(3238), 1, sym_trailing_return_type, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3153), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, ACTIONS(5320), 6, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_final, anon_sym_override, [112173] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(5198), 1, anon_sym_DASH_GT, ACTIONS(5264), 1, anon_sym_LBRACK, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(5262), 3, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3202), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [112223] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4567), 1, anon_sym_LBRACK, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(5295), 1, anon_sym_DASH_GT, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(4559), 3, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3210), 7, sym_type_qualifier, sym_virtual_specifier, sym_ref_qualifier, sym_trailing_return_type, sym_noexcept, sym_throw_specifier, aux_sym_function_declarator_repeat2, [112273] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5440), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5438), 21, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym___attribute__, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [112305] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5442), 1, anon_sym___attribute__, STATE(3217), 2, sym_attribute_specifier, aux_sym_function_declarator_repeat1, ACTIONS(5377), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5375), 18, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [112341] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5447), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5445), 20, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [112372] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(2655), 1, anon_sym_STAR, ACTIONS(2657), 1, anon_sym_AMP_AMP, ACTIONS(2659), 1, anon_sym_AMP, ACTIONS(5451), 1, anon_sym_LBRACK, STATE(3264), 1, sym_parameter_list, STATE(4091), 1, sym__abstract_declarator, STATE(3228), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(5449), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [112423] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(2655), 1, anon_sym_STAR, ACTIONS(2657), 1, anon_sym_AMP_AMP, ACTIONS(2659), 1, anon_sym_AMP, ACTIONS(5451), 1, anon_sym_LBRACK, STATE(3264), 1, sym_parameter_list, STATE(4105), 1, sym__abstract_declarator, STATE(3368), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(3720), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [112474] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5457), 1, anon_sym_LPAREN2, ACTIONS(5459), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5455), 19, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [112507] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(5461), 1, anon_sym_STAR, ACTIONS(5463), 1, anon_sym_AMP_AMP, ACTIONS(5465), 1, anon_sym_AMP, STATE(3273), 1, sym_parameter_list, STATE(4081), 1, sym__abstract_declarator, STATE(3255), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(3235), 3, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_GT2, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [112558] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5469), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5467), 20, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [112589] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5473), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5471), 20, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [112620] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(5295), 1, anon_sym_DASH_GT, ACTIONS(5322), 1, anon_sym_LBRACK, STATE(3238), 1, sym_trailing_return_type, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(5320), 5, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_final, anon_sym_override, STATE(3153), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, [112669] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(2655), 1, anon_sym_STAR, ACTIONS(2657), 1, anon_sym_AMP_AMP, ACTIONS(2659), 1, anon_sym_AMP, ACTIONS(5451), 1, anon_sym_LBRACK, STATE(3264), 1, sym_parameter_list, STATE(4067), 1, sym__abstract_declarator, STATE(3220), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(3235), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [112720] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(4480), 1, anon_sym_LPAREN2, ACTIONS(4488), 1, sym_identifier, ACTIONS(4490), 1, anon_sym_STAR, ACTIONS(4492), 1, anon_sym_AMP_AMP, ACTIONS(4494), 1, anon_sym_AMP, ACTIONS(5475), 1, anon_sym_SEMI, ACTIONS(5477), 1, anon_sym_EQ, ACTIONS(5479), 1, anon_sym_COLON, STATE(3494), 1, sym__field_declarator, STATE(5140), 1, sym_ms_based_modifier, STATE(5325), 1, sym_bitfield_clause, STATE(5327), 1, sym_initializer_list, STATE(3876), 8, sym_parenthesized_field_declarator, sym_attributed_field_declarator, sym_pointer_field_declarator, sym_function_field_declarator, sym_array_field_declarator, sym_reference_field_declarator, sym_template_method, sym_operator_name, [112779] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(2655), 1, anon_sym_STAR, ACTIONS(2657), 1, anon_sym_AMP_AMP, ACTIONS(2659), 1, anon_sym_AMP, ACTIONS(5451), 1, anon_sym_LBRACK, STATE(3264), 1, sym_parameter_list, STATE(4101), 1, sym__abstract_declarator, STATE(3368), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(5481), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [112830] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5485), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5483), 20, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [112861] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5489), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5487), 20, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [112892] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(5295), 1, anon_sym_DASH_GT, ACTIONS(5299), 1, anon_sym_LBRACK, STATE(3245), 1, sym_trailing_return_type, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(5297), 5, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_final, anon_sym_override, STATE(3232), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, [112941] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(5295), 1, anon_sym_DASH_GT, ACTIONS(5333), 1, anon_sym_LBRACK, STATE(3234), 1, sym_trailing_return_type, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(5331), 5, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_final, anon_sym_override, STATE(3153), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, [112990] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(2655), 1, anon_sym_STAR, ACTIONS(2657), 1, anon_sym_AMP_AMP, ACTIONS(2659), 1, anon_sym_AMP, ACTIONS(5451), 1, anon_sym_LBRACK, STATE(3264), 1, sym_parameter_list, STATE(4072), 1, sym__abstract_declarator, STATE(3262), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(5491), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [113041] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5495), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5493), 20, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [113072] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5499), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5497), 20, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [113103] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5503), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5501), 20, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [113134] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5322), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5320), 20, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [113165] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5507), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5505), 20, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [113196] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5511), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5509), 20, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [113227] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5515), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5513), 20, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [113258] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5519), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5517), 20, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [113289] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5523), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5521), 20, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [113320] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5527), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5525), 20, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [113351] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5531), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5529), 20, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [113382] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5333), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5331), 20, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [113413] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(57), 1, anon_sym_const, ACTIONS(4561), 1, anon_sym_AMP_AMP, ACTIONS(4563), 1, anon_sym_AMP, ACTIONS(4573), 1, anon_sym_noexcept, ACTIONS(4575), 1, anon_sym_throw, ACTIONS(5295), 1, anon_sym_DASH_GT, ACTIONS(5329), 1, anon_sym_LBRACK, STATE(3237), 1, sym_trailing_return_type, ACTIONS(4773), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(5327), 5, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_final, anon_sym_override, STATE(3225), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, [113462] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5535), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5533), 20, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [113493] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5539), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5537), 20, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [113524] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(5461), 1, anon_sym_STAR, ACTIONS(5463), 1, anon_sym_AMP_AMP, ACTIONS(5465), 1, anon_sym_AMP, STATE(3273), 1, sym_parameter_list, STATE(4097), 1, sym__abstract_declarator, STATE(3368), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(5481), 3, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_GT2, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [113575] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5543), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5541), 20, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [113606] = 21, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4520), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4524), 1, anon_sym_EQ, ACTIONS(5545), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2312), 1, sym_field_declaration_list, STATE(3493), 1, sym_ms_declspec_modifier, STATE(3589), 1, sym_attribute_declaration, STATE(4015), 1, sym__scope_resolution, STATE(4186), 1, sym_virtual_specifier, STATE(4778), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, ACTIONS(4522), 2, anon_sym_COMMA, anon_sym_GT2, STATE(2111), 2, sym__class_name, sym_qualified_type_identifier, [113673] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(4480), 1, anon_sym_LPAREN2, ACTIONS(4488), 1, sym_identifier, ACTIONS(4490), 1, anon_sym_STAR, ACTIONS(4492), 1, anon_sym_AMP_AMP, ACTIONS(4494), 1, anon_sym_AMP, ACTIONS(5479), 1, anon_sym_COLON, ACTIONS(5547), 1, anon_sym_SEMI, ACTIONS(5549), 1, anon_sym_EQ, STATE(3477), 1, sym__field_declarator, STATE(5140), 1, sym_ms_based_modifier, STATE(5148), 1, sym_bitfield_clause, STATE(5151), 1, sym_initializer_list, STATE(3876), 8, sym_parenthesized_field_declarator, sym_attributed_field_declarator, sym_pointer_field_declarator, sym_function_field_declarator, sym_array_field_declarator, sym_reference_field_declarator, sym_template_method, sym_operator_name, [113732] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3540), 1, anon_sym_COLON_COLON, STATE(3253), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(5382), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(3538), 14, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, sym_primitive_type, anon_sym_enum, anon_sym_class, anon_sym_struct, anon_sym_union, sym_identifier, anon_sym_decltype, sym_auto, anon_sym_typename, anon_sym_template, [113767] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(5461), 1, anon_sym_STAR, ACTIONS(5463), 1, anon_sym_AMP_AMP, ACTIONS(5465), 1, anon_sym_AMP, STATE(3273), 1, sym_parameter_list, STATE(4066), 1, sym__abstract_declarator, STATE(3368), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(5551), 3, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_GT2, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [113818] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(5461), 1, anon_sym_STAR, ACTIONS(5463), 1, anon_sym_AMP_AMP, ACTIONS(5465), 1, anon_sym_AMP, STATE(3273), 1, sym_parameter_list, STATE(4064), 1, sym__abstract_declarator, STATE(3368), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(3720), 3, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_GT2, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [113869] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(5461), 1, anon_sym_STAR, ACTIONS(5463), 1, anon_sym_AMP_AMP, ACTIONS(5465), 1, anon_sym_AMP, STATE(3273), 1, sym_parameter_list, STATE(4073), 1, sym__abstract_declarator, STATE(3249), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(5449), 3, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_GT2, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [113920] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(4480), 1, anon_sym_LPAREN2, ACTIONS(4488), 1, sym_identifier, ACTIONS(4490), 1, anon_sym_STAR, ACTIONS(4492), 1, anon_sym_AMP_AMP, ACTIONS(4494), 1, anon_sym_AMP, ACTIONS(5479), 1, anon_sym_COLON, ACTIONS(5553), 1, anon_sym_SEMI, ACTIONS(5555), 1, anon_sym_EQ, STATE(3478), 1, sym__field_declarator, STATE(5140), 1, sym_ms_based_modifier, STATE(5238), 1, sym_initializer_list, STATE(5239), 1, sym_bitfield_clause, STATE(3876), 8, sym_parenthesized_field_declarator, sym_attributed_field_declarator, sym_pointer_field_declarator, sym_function_field_declarator, sym_array_field_declarator, sym_reference_field_declarator, sym_template_method, sym_operator_name, [113979] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(5461), 1, anon_sym_STAR, ACTIONS(5463), 1, anon_sym_AMP_AMP, ACTIONS(5465), 1, anon_sym_AMP, STATE(3273), 1, sym_parameter_list, STATE(4068), 1, sym__abstract_declarator, STATE(3254), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(5491), 3, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_GT2, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [114030] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5559), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5557), 20, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [114061] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(5561), 1, anon_sym_STAR, ACTIONS(5563), 1, anon_sym_AMP_AMP, ACTIONS(5565), 1, anon_sym_AMP, STATE(3280), 1, sym_parameter_list, STATE(4061), 1, sym__abstract_declarator, STATE(3368), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(3720), 3, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [114112] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(5561), 1, anon_sym_STAR, ACTIONS(5563), 1, anon_sym_AMP_AMP, ACTIONS(5565), 1, anon_sym_AMP, STATE(3280), 1, sym_parameter_list, STATE(4103), 1, sym__abstract_declarator, STATE(3260), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(3235), 3, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [114163] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(2655), 1, anon_sym_STAR, ACTIONS(2657), 1, anon_sym_AMP_AMP, ACTIONS(2659), 1, anon_sym_AMP, ACTIONS(5451), 1, anon_sym_LBRACK, STATE(3264), 1, sym_parameter_list, STATE(4090), 1, sym__abstract_declarator, STATE(3368), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(5551), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [114214] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5569), 1, anon_sym_LPAREN2, STATE(3358), 1, sym_preproc_argument_list, ACTIONS(5571), 5, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(5567), 15, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, [114248] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(5573), 1, anon_sym_AMP_AMP, ACTIONS(5575), 1, anon_sym_AMP, ACTIONS(5577), 1, anon_sym_DASH_GT, ACTIONS(5579), 1, anon_sym_noexcept, ACTIONS(5581), 1, anon_sym_throw, STATE(3862), 1, sym_trailing_return_type, ACTIONS(5297), 5, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3282), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, [114294] = 5, ACTIONS(3), 1, sym_comment, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(3538), 5, anon_sym_AMP, anon_sym___based, sym_identifier, anon_sym_template, anon_sym_operator, ACTIONS(5583), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(3540), 9, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK, anon_sym_GT2, [114328] = 4, ACTIONS(3), 1, sym_comment, STATE(2280), 1, sym_enumerator_list, ACTIONS(3509), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(3507), 18, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [114360] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(5573), 1, anon_sym_AMP_AMP, ACTIONS(5575), 1, anon_sym_AMP, ACTIONS(5577), 1, anon_sym_DASH_GT, ACTIONS(5579), 1, anon_sym_noexcept, ACTIONS(5581), 1, anon_sym_throw, STATE(3846), 1, sym_trailing_return_type, ACTIONS(5320), 5, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3198), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, [114406] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(5573), 1, anon_sym_AMP_AMP, ACTIONS(5575), 1, anon_sym_AMP, ACTIONS(5579), 1, anon_sym_noexcept, ACTIONS(5581), 1, anon_sym_throw, ACTIONS(5586), 1, anon_sym_DASH_GT, STATE(3851), 1, sym_trailing_return_type, ACTIONS(5331), 5, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_LBRACK, anon_sym_GT2, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3198), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, [114452] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3150), 1, sym_parameter_list, ACTIONS(5592), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5588), 17, anon_sym_COMMA, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [114488] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(5573), 1, anon_sym_AMP_AMP, ACTIONS(5575), 1, anon_sym_AMP, ACTIONS(5579), 1, anon_sym_noexcept, ACTIONS(5581), 1, anon_sym_throw, ACTIONS(5596), 1, anon_sym_DASH_GT, STATE(3842), 1, sym_trailing_return_type, ACTIONS(5327), 5, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3275), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, [114534] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(5573), 1, anon_sym_AMP_AMP, ACTIONS(5575), 1, anon_sym_AMP, ACTIONS(5579), 1, anon_sym_noexcept, ACTIONS(5581), 1, anon_sym_throw, ACTIONS(5596), 1, anon_sym_DASH_GT, STATE(3851), 1, sym_trailing_return_type, ACTIONS(5331), 5, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3198), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, [114580] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(5573), 1, anon_sym_AMP_AMP, ACTIONS(5575), 1, anon_sym_AMP, ACTIONS(5579), 1, anon_sym_noexcept, ACTIONS(5581), 1, anon_sym_throw, ACTIONS(5586), 1, anon_sym_DASH_GT, STATE(3842), 1, sym_trailing_return_type, ACTIONS(5327), 5, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_LBRACK, anon_sym_GT2, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3284), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, [114626] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(5573), 1, anon_sym_AMP_AMP, ACTIONS(5575), 1, anon_sym_AMP, ACTIONS(5579), 1, anon_sym_noexcept, ACTIONS(5581), 1, anon_sym_throw, ACTIONS(5586), 1, anon_sym_DASH_GT, STATE(3862), 1, sym_trailing_return_type, ACTIONS(5297), 5, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_LBRACK, anon_sym_GT2, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3268), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, [114672] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3150), 1, sym_parameter_list, ACTIONS(5600), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5598), 17, anon_sym_COMMA, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [114708] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(5573), 1, anon_sym_AMP_AMP, ACTIONS(5575), 1, anon_sym_AMP, ACTIONS(5579), 1, anon_sym_noexcept, ACTIONS(5581), 1, anon_sym_throw, ACTIONS(5596), 1, anon_sym_DASH_GT, STATE(3846), 1, sym_trailing_return_type, ACTIONS(5320), 5, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3198), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, [114754] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5604), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK, ACTIONS(5602), 16, anon_sym_AMP, anon_sym___based, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, anon_sym__unaligned, anon_sym___unaligned, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_template, anon_sym_operator, [114784] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5608), 6, anon_sym_LPAREN2, anon_sym_TILDE, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_COLON_COLON, anon_sym_LBRACK, ACTIONS(5606), 16, anon_sym_AMP, anon_sym___based, sym_ms_restrict_modifier, sym_ms_unsigned_ptr_modifier, sym_ms_signed_ptr_modifier, anon_sym__unaligned, anon_sym___unaligned, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, sym_identifier, anon_sym_template, anon_sym_operator, [114814] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3150), 1, sym_parameter_list, ACTIONS(4866), 2, anon_sym_AMP, anon_sym_const, ACTIONS(4864), 17, anon_sym_COMMA, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [114850] = 4, ACTIONS(3), 1, sym_comment, STATE(2331), 1, sym_enumerator_list, ACTIONS(3513), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(3511), 18, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [114882] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(5573), 1, anon_sym_AMP_AMP, ACTIONS(5575), 1, anon_sym_AMP, ACTIONS(5579), 1, anon_sym_noexcept, ACTIONS(5581), 1, anon_sym_throw, ACTIONS(5596), 1, anon_sym_DASH_GT, STATE(3862), 1, sym_trailing_return_type, ACTIONS(5297), 5, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3271), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, [114928] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(5573), 1, anon_sym_AMP_AMP, ACTIONS(5575), 1, anon_sym_AMP, ACTIONS(5577), 1, anon_sym_DASH_GT, ACTIONS(5579), 1, anon_sym_noexcept, ACTIONS(5581), 1, anon_sym_throw, STATE(3842), 1, sym_trailing_return_type, ACTIONS(5327), 5, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3267), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, [114974] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(5573), 1, anon_sym_AMP_AMP, ACTIONS(5575), 1, anon_sym_AMP, ACTIONS(5577), 1, anon_sym_DASH_GT, ACTIONS(5579), 1, anon_sym_noexcept, ACTIONS(5581), 1, anon_sym_throw, STATE(3851), 1, sym_trailing_return_type, ACTIONS(5331), 5, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3198), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, [115020] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5610), 2, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(5440), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(5438), 17, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym___attribute__, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [115052] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(5573), 1, anon_sym_AMP_AMP, ACTIONS(5575), 1, anon_sym_AMP, ACTIONS(5579), 1, anon_sym_noexcept, ACTIONS(5581), 1, anon_sym_throw, ACTIONS(5586), 1, anon_sym_DASH_GT, STATE(3846), 1, sym_trailing_return_type, ACTIONS(5320), 5, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_LBRACK, anon_sym_GT2, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3198), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, [115098] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3150), 1, sym_parameter_list, ACTIONS(5615), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5613), 17, anon_sym_COMMA, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [115134] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3150), 1, sym_parameter_list, ACTIONS(5619), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5617), 17, anon_sym_COMMA, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_COLON, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [115170] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3178), 1, sym_parameter_list, ACTIONS(5615), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5613), 16, anon_sym_COMMA, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [115205] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(5621), 1, anon_sym_LT, STATE(1934), 1, sym_template_argument_list, ACTIONS(2991), 3, anon_sym_AMP, anon_sym_const, anon_sym_COLON, ACTIONS(2998), 15, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_final, anon_sym_override, [115240] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(5623), 1, sym_identifier, ACTIONS(5625), 1, anon_sym_RPAREN, ACTIONS(5627), 1, anon_sym_LPAREN2, ACTIONS(5629), 1, anon_sym_defined, ACTIONS(5635), 1, sym_number_literal, ACTIONS(5631), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5633), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5637), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3303), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [115283] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(5639), 1, anon_sym_LT, STATE(2202), 1, sym_template_argument_list, ACTIONS(2991), 3, anon_sym_AMP, anon_sym_const, anon_sym_COLON, ACTIONS(2998), 15, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_final, anon_sym_override, anon_sym_GT2, [115318] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(4553), 1, anon_sym_COLON, STATE(2262), 1, sym_enumerator_list, STATE(3279), 1, sym__enum_base_clause, ACTIONS(3492), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(3490), 15, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [115353] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3175), 1, sym_parameter_list, ACTIONS(5600), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5598), 16, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_AMP_AMP, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [115388] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(5621), 1, anon_sym_LT, STATE(1934), 1, sym_template_argument_list, ACTIONS(3371), 3, anon_sym_AMP, anon_sym_const, anon_sym_COLON, ACTIONS(2979), 15, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_final, anon_sym_override, [115423] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(5639), 1, anon_sym_LT, STATE(2202), 1, sym_template_argument_list, ACTIONS(3371), 3, anon_sym_AMP, anon_sym_const, anon_sym_COLON, ACTIONS(2979), 15, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_final, anon_sym_override, anon_sym_GT2, [115458] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3178), 1, sym_parameter_list, ACTIONS(4866), 2, anon_sym_AMP, anon_sym_const, ACTIONS(4864), 16, anon_sym_COMMA, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [115493] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3175), 1, sym_parameter_list, ACTIONS(5615), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5613), 16, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_AMP_AMP, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [115528] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3175), 1, sym_parameter_list, ACTIONS(4866), 2, anon_sym_AMP, anon_sym_const, ACTIONS(4864), 16, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_AMP_AMP, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [115563] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3175), 1, sym_parameter_list, ACTIONS(5592), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5588), 16, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_AMP_AMP, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [115598] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3178), 1, sym_parameter_list, ACTIONS(5619), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5617), 16, anon_sym_COMMA, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [115633] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(5623), 1, sym_identifier, ACTIONS(5627), 1, anon_sym_LPAREN2, ACTIONS(5629), 1, anon_sym_defined, ACTIONS(5641), 1, anon_sym_RPAREN, ACTIONS(5643), 1, sym_number_literal, ACTIONS(5631), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5633), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5637), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3309), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [115676] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, STATE(2200), 1, sym_template_argument_list, ACTIONS(3454), 2, anon_sym_AMP, anon_sym_const, ACTIONS(3452), 16, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_GT2, [115711] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3178), 1, sym_parameter_list, ACTIONS(5600), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5598), 16, anon_sym_COMMA, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [115746] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(5645), 1, anon_sym_COMMA, ACTIONS(5647), 1, anon_sym_RPAREN, ACTIONS(5653), 1, anon_sym_SLASH, ACTIONS(5655), 1, anon_sym_PIPE_PIPE, ACTIONS(5657), 1, anon_sym_AMP_AMP, ACTIONS(5659), 1, anon_sym_PIPE, ACTIONS(5661), 1, anon_sym_CARET, ACTIONS(5663), 1, anon_sym_AMP, STATE(4464), 1, aux_sym_preproc_argument_list_repeat1, ACTIONS(5649), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5651), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5665), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5667), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5669), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5671), 2, anon_sym_LT_LT, anon_sym_GT_GT, [115801] = 5, ACTIONS(5567), 1, anon_sym_LF, ACTIONS(5673), 1, anon_sym_LPAREN2, ACTIONS(5675), 1, sym_comment, STATE(3431), 1, sym_preproc_argument_list, ACTIONS(5571), 18, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, [115834] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3178), 1, sym_parameter_list, ACTIONS(5592), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5588), 16, anon_sym_COMMA, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [115869] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(3235), 1, anon_sym_LBRACE, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(5677), 1, anon_sym_STAR, ACTIONS(5679), 1, anon_sym_AMP_AMP, ACTIONS(5681), 1, anon_sym_AMP, STATE(3371), 1, sym_parameter_list, STATE(4367), 1, sym__abstract_declarator, STATE(3310), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [115918] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3175), 1, sym_parameter_list, ACTIONS(5619), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5617), 16, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_AMP_AMP, anon_sym_LBRACK_LBRACK, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [115953] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(4553), 1, anon_sym_COLON, STATE(2261), 1, sym_enumerator_list, STATE(3266), 1, sym__enum_base_clause, ACTIONS(3475), 3, anon_sym_AMP, anon_sym_LBRACK, anon_sym_const, ACTIONS(3473), 15, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [115988] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(5645), 1, anon_sym_COMMA, ACTIONS(5653), 1, anon_sym_SLASH, ACTIONS(5655), 1, anon_sym_PIPE_PIPE, ACTIONS(5657), 1, anon_sym_AMP_AMP, ACTIONS(5659), 1, anon_sym_PIPE, ACTIONS(5661), 1, anon_sym_CARET, ACTIONS(5663), 1, anon_sym_AMP, ACTIONS(5683), 1, anon_sym_RPAREN, STATE(4456), 1, aux_sym_preproc_argument_list_repeat1, ACTIONS(5649), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5651), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5665), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5667), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5669), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5671), 2, anon_sym_LT_LT, anon_sym_GT_GT, [116043] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(3720), 1, anon_sym_LBRACE, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(5677), 1, anon_sym_STAR, ACTIONS(5679), 1, anon_sym_AMP_AMP, ACTIONS(5681), 1, anon_sym_AMP, STATE(3371), 1, sym_parameter_list, STATE(4245), 1, sym__abstract_declarator, STATE(3368), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [116092] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5623), 1, sym_identifier, ACTIONS(5627), 1, anon_sym_LPAREN2, ACTIONS(5629), 1, anon_sym_defined, ACTIONS(5685), 1, sym_number_literal, ACTIONS(5631), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5633), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5637), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3328), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [116132] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5687), 1, sym_identifier, ACTIONS(5689), 1, anon_sym_LPAREN2, ACTIONS(5691), 1, anon_sym_defined, ACTIONS(5697), 1, sym_number_literal, ACTIONS(5693), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5695), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5699), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3440), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [116172] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5703), 5, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(5701), 15, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, [116200] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5653), 1, anon_sym_SLASH, ACTIONS(5651), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5707), 4, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(5705), 13, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DASH, anon_sym_PLUS, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, [116232] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5687), 1, sym_identifier, ACTIONS(5689), 1, anon_sym_LPAREN2, ACTIONS(5691), 1, anon_sym_defined, ACTIONS(5709), 1, sym_number_literal, ACTIONS(5693), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5695), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5699), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3453), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [116272] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5653), 1, anon_sym_SLASH, ACTIONS(5649), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5651), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5707), 4, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(5705), 11, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, [116306] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(5653), 1, anon_sym_SLASH, ACTIONS(5649), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5651), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5671), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5707), 4, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(5705), 9, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, [116342] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5653), 1, anon_sym_SLASH, ACTIONS(5649), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5651), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5667), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5669), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5671), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5707), 2, anon_sym_PIPE, anon_sym_AMP, ACTIONS(5705), 7, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, [116382] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(5653), 1, anon_sym_SLASH, ACTIONS(5649), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5651), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5665), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5667), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5669), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5671), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5707), 2, anon_sym_PIPE, anon_sym_AMP, ACTIONS(5705), 5, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, [116424] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5687), 1, sym_identifier, ACTIONS(5689), 1, anon_sym_LPAREN2, ACTIONS(5691), 1, anon_sym_defined, ACTIONS(5711), 1, sym_number_literal, ACTIONS(5693), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5695), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5699), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3412), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [116464] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5715), 5, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(5713), 15, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, [116492] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(5653), 1, anon_sym_SLASH, ACTIONS(5663), 1, anon_sym_AMP, ACTIONS(5707), 1, anon_sym_PIPE, ACTIONS(5649), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5651), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5665), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5667), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5669), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5671), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5705), 5, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, [116536] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5687), 1, sym_identifier, ACTIONS(5689), 1, anon_sym_LPAREN2, ACTIONS(5691), 1, anon_sym_defined, ACTIONS(5717), 1, sym_number_literal, ACTIONS(5693), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5695), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5699), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3400), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [116576] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(5653), 1, anon_sym_SLASH, ACTIONS(5661), 1, anon_sym_CARET, ACTIONS(5663), 1, anon_sym_AMP, ACTIONS(5707), 1, anon_sym_PIPE, ACTIONS(5649), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5651), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5665), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5667), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5669), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5671), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5705), 4, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, [116622] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(5653), 1, anon_sym_SLASH, ACTIONS(5659), 1, anon_sym_PIPE, ACTIONS(5661), 1, anon_sym_CARET, ACTIONS(5663), 1, anon_sym_AMP, ACTIONS(5649), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5651), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5665), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5667), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5669), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5671), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5705), 4, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, [116668] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5687), 1, sym_identifier, ACTIONS(5689), 1, anon_sym_LPAREN2, ACTIONS(5691), 1, anon_sym_defined, ACTIONS(5719), 1, sym_number_literal, ACTIONS(5693), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5695), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5699), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3380), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [116708] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(5653), 1, anon_sym_SLASH, ACTIONS(5657), 1, anon_sym_AMP_AMP, ACTIONS(5659), 1, anon_sym_PIPE, ACTIONS(5661), 1, anon_sym_CARET, ACTIONS(5663), 1, anon_sym_AMP, ACTIONS(5649), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5651), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5665), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5667), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5669), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5671), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5705), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_PIPE_PIPE, [116756] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5707), 5, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(5705), 15, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, [116784] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5427), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5425), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [116812] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(5573), 1, anon_sym_AMP_AMP, ACTIONS(5575), 1, anon_sym_AMP, ACTIONS(5579), 1, anon_sym_noexcept, ACTIONS(5581), 1, anon_sym_throw, ACTIONS(5721), 1, anon_sym_DASH_GT, STATE(3842), 1, sym_trailing_return_type, ACTIONS(5327), 3, anon_sym_LPAREN2, anon_sym_LBRACE, anon_sym_LBRACK, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3373), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, [116856] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5725), 5, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(5723), 15, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, [116884] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5473), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5471), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [116912] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5729), 5, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(5727), 15, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, [116940] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5519), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5517), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [116968] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5731), 1, anon_sym_LPAREN2, ACTIONS(5459), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5455), 17, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [116998] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5469), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5467), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [117026] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5440), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5438), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [117054] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5735), 5, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(5733), 15, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, [117082] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5423), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5421), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [117110] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5503), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5501), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [117138] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5447), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5445), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [117166] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(5573), 1, anon_sym_AMP_AMP, ACTIONS(5575), 1, anon_sym_AMP, ACTIONS(5579), 1, anon_sym_noexcept, ACTIONS(5581), 1, anon_sym_throw, ACTIONS(5721), 1, anon_sym_DASH_GT, STATE(3851), 1, sym_trailing_return_type, ACTIONS(5331), 3, anon_sym_LPAREN2, anon_sym_LBRACE, anon_sym_LBRACK, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3198), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, [117210] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5687), 1, sym_identifier, ACTIONS(5689), 1, anon_sym_LPAREN2, ACTIONS(5691), 1, anon_sym_defined, ACTIONS(5737), 1, sym_number_literal, ACTIONS(5693), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5695), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5699), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3381), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [117250] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5499), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5497), 18, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_GT2, anon_sym_noexcept, anon_sym_throw, [117278] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5687), 1, sym_identifier, ACTIONS(5689), 1, anon_sym_LPAREN2, ACTIONS(5691), 1, anon_sym_defined, ACTIONS(5739), 1, sym_number_literal, ACTIONS(5693), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5695), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5699), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3429), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [117318] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5687), 1, sym_identifier, ACTIONS(5689), 1, anon_sym_LPAREN2, ACTIONS(5691), 1, anon_sym_defined, ACTIONS(5741), 1, sym_number_literal, ACTIONS(5693), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5695), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5699), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3430), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [117358] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5623), 1, sym_identifier, ACTIONS(5627), 1, anon_sym_LPAREN2, ACTIONS(5629), 1, anon_sym_defined, ACTIONS(5743), 1, sym_number_literal, ACTIONS(5631), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5633), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5637), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3316), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [117398] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5623), 1, sym_identifier, ACTIONS(5627), 1, anon_sym_LPAREN2, ACTIONS(5629), 1, anon_sym_defined, ACTIONS(5745), 1, sym_number_literal, ACTIONS(5631), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5633), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5637), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3317), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [117438] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5623), 1, sym_identifier, ACTIONS(5627), 1, anon_sym_LPAREN2, ACTIONS(5629), 1, anon_sym_defined, ACTIONS(5747), 1, sym_number_literal, ACTIONS(5631), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5633), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5637), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3318), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [117478] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5623), 1, sym_identifier, ACTIONS(5627), 1, anon_sym_LPAREN2, ACTIONS(5629), 1, anon_sym_defined, ACTIONS(5749), 1, sym_number_literal, ACTIONS(5631), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5633), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5637), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3319), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [117518] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5623), 1, sym_identifier, ACTIONS(5627), 1, anon_sym_LPAREN2, ACTIONS(5629), 1, anon_sym_defined, ACTIONS(5751), 1, sym_number_literal, ACTIONS(5631), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5633), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5637), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3322), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [117558] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5623), 1, sym_identifier, ACTIONS(5627), 1, anon_sym_LPAREN2, ACTIONS(5629), 1, anon_sym_defined, ACTIONS(5753), 1, sym_number_literal, ACTIONS(5631), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5633), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5637), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3324), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [117598] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5623), 1, sym_identifier, ACTIONS(5627), 1, anon_sym_LPAREN2, ACTIONS(5629), 1, anon_sym_defined, ACTIONS(5755), 1, sym_number_literal, ACTIONS(5631), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5633), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5637), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3325), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [117638] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5623), 1, sym_identifier, ACTIONS(5627), 1, anon_sym_LPAREN2, ACTIONS(5629), 1, anon_sym_defined, ACTIONS(5757), 1, sym_number_literal, ACTIONS(5631), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5633), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5637), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3327), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [117678] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5623), 1, sym_identifier, ACTIONS(5627), 1, anon_sym_LPAREN2, ACTIONS(5629), 1, anon_sym_defined, ACTIONS(5759), 1, sym_number_literal, ACTIONS(5631), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5633), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5637), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3314), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [117718] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5763), 5, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(5761), 15, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, [117746] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5767), 5, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(5765), 15, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, [117774] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5771), 5, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(5769), 15, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, [117802] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5687), 1, sym_identifier, ACTIONS(5689), 1, anon_sym_LPAREN2, ACTIONS(5691), 1, anon_sym_defined, ACTIONS(5773), 1, sym_number_literal, ACTIONS(5693), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5695), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5699), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3438), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [117842] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5687), 1, sym_identifier, ACTIONS(5689), 1, anon_sym_LPAREN2, ACTIONS(5691), 1, anon_sym_defined, ACTIONS(5775), 1, sym_number_literal, ACTIONS(5693), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5695), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5699), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3439), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [117882] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5623), 1, sym_identifier, ACTIONS(5627), 1, anon_sym_LPAREN2, ACTIONS(5629), 1, anon_sym_defined, ACTIONS(5777), 1, sym_number_literal, ACTIONS(5631), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5633), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5637), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3356), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [117922] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5687), 1, sym_identifier, ACTIONS(5689), 1, anon_sym_LPAREN2, ACTIONS(5691), 1, anon_sym_defined, ACTIONS(5779), 1, sym_number_literal, ACTIONS(5693), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5695), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5699), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3444), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [117962] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5623), 1, sym_identifier, ACTIONS(5627), 1, anon_sym_LPAREN2, ACTIONS(5629), 1, anon_sym_defined, ACTIONS(5781), 1, sym_number_literal, ACTIONS(5631), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5633), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5637), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3434), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [118002] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5687), 1, sym_identifier, ACTIONS(5689), 1, anon_sym_LPAREN2, ACTIONS(5691), 1, anon_sym_defined, ACTIONS(5783), 1, sym_number_literal, ACTIONS(5693), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5695), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5699), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3456), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [118042] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5687), 1, sym_identifier, ACTIONS(5689), 1, anon_sym_LPAREN2, ACTIONS(5691), 1, anon_sym_defined, ACTIONS(5785), 1, sym_number_literal, ACTIONS(5693), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5695), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5699), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3436), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [118082] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5687), 1, sym_identifier, ACTIONS(5689), 1, anon_sym_LPAREN2, ACTIONS(5691), 1, anon_sym_defined, ACTIONS(5787), 1, sym_number_literal, ACTIONS(5693), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5695), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5699), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3458), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [118122] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5687), 1, sym_identifier, ACTIONS(5689), 1, anon_sym_LPAREN2, ACTIONS(5691), 1, anon_sym_defined, ACTIONS(5789), 1, sym_number_literal, ACTIONS(5693), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5695), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5699), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3459), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [118162] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(3538), 1, anon_sym_AMP, ACTIONS(5583), 1, anon_sym_const, STATE(3368), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, ACTIONS(5791), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, ACTIONS(3540), 11, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_GT2, [118196] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5687), 1, sym_identifier, ACTIONS(5689), 1, anon_sym_LPAREN2, ACTIONS(5691), 1, anon_sym_defined, ACTIONS(5794), 1, sym_number_literal, ACTIONS(5693), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5695), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5699), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3461), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [118236] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5687), 1, sym_identifier, ACTIONS(5689), 1, anon_sym_LPAREN2, ACTIONS(5691), 1, anon_sym_defined, ACTIONS(5796), 1, sym_number_literal, ACTIONS(5693), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5695), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5699), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3463), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [118276] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(5573), 1, anon_sym_AMP_AMP, ACTIONS(5575), 1, anon_sym_AMP, ACTIONS(5579), 1, anon_sym_noexcept, ACTIONS(5581), 1, anon_sym_throw, ACTIONS(5721), 1, anon_sym_DASH_GT, STATE(3862), 1, sym_trailing_return_type, ACTIONS(5297), 3, anon_sym_LPAREN2, anon_sym_LBRACE, anon_sym_LBRACK, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3342), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, [118320] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3573), 5, anon_sym_SLASH, anon_sym_PIPE, anon_sym_AMP, anon_sym_GT, anon_sym_LT, ACTIONS(3571), 15, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_CARET, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT_LT, anon_sym_GT_GT, [118348] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(2394), 1, anon_sym_const, ACTIONS(5573), 1, anon_sym_AMP_AMP, ACTIONS(5575), 1, anon_sym_AMP, ACTIONS(5579), 1, anon_sym_noexcept, ACTIONS(5581), 1, anon_sym_throw, ACTIONS(5721), 1, anon_sym_DASH_GT, STATE(3846), 1, sym_trailing_return_type, ACTIONS(5320), 3, anon_sym_LPAREN2, anon_sym_LBRACE, anon_sym_LBRACK, ACTIONS(5453), 5, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, STATE(3198), 5, sym_type_qualifier, sym_ref_qualifier, sym_noexcept, sym_throw_specifier, aux_sym_abstract_function_declarator_repeat1, [118392] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5687), 1, sym_identifier, ACTIONS(5689), 1, anon_sym_LPAREN2, ACTIONS(5691), 1, anon_sym_defined, ACTIONS(5798), 1, sym_number_literal, ACTIONS(5693), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5695), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5699), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3408), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [118432] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5623), 1, sym_identifier, ACTIONS(5627), 1, anon_sym_LPAREN2, ACTIONS(5629), 1, anon_sym_defined, ACTIONS(5800), 1, sym_number_literal, ACTIONS(5631), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5633), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5637), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3377), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [118472] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5687), 1, sym_identifier, ACTIONS(5689), 1, anon_sym_LPAREN2, ACTIONS(5691), 1, anon_sym_defined, ACTIONS(5802), 1, sym_number_literal, ACTIONS(5693), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5695), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5699), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3413), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [118512] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(5653), 1, anon_sym_SLASH, ACTIONS(5655), 1, anon_sym_PIPE_PIPE, ACTIONS(5657), 1, anon_sym_AMP_AMP, ACTIONS(5659), 1, anon_sym_PIPE, ACTIONS(5661), 1, anon_sym_CARET, ACTIONS(5663), 1, anon_sym_AMP, ACTIONS(5649), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5651), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5665), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5667), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5669), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5671), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5804), 2, anon_sym_COMMA, anon_sym_RPAREN, [118562] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5623), 1, sym_identifier, ACTIONS(5627), 1, anon_sym_LPAREN2, ACTIONS(5629), 1, anon_sym_defined, ACTIONS(5806), 1, sym_number_literal, ACTIONS(5631), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5633), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5637), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3454), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [118602] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(5687), 1, sym_identifier, ACTIONS(5689), 1, anon_sym_LPAREN2, ACTIONS(5691), 1, anon_sym_defined, ACTIONS(5808), 1, sym_number_literal, ACTIONS(5693), 2, anon_sym_BANG, anon_sym_TILDE, ACTIONS(5695), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5699), 5, anon_sym_L_SQUOTE, anon_sym_u_SQUOTE, anon_sym_U_SQUOTE, anon_sym_u8_SQUOTE, anon_sym_SQUOTE, STATE(3441), 7, sym__preproc_expression, sym_preproc_parenthesized_expression, sym_preproc_defined, sym_preproc_unary_expression, sym_preproc_call_expression, sym_preproc_binary_expression, sym_char_literal, [118642] = 12, ACTIONS(5675), 1, sym_comment, ACTIONS(5810), 1, anon_sym_LF, ACTIONS(5816), 1, anon_sym_PIPE_PIPE, ACTIONS(5818), 1, anon_sym_AMP_AMP, ACTIONS(5820), 1, anon_sym_PIPE, ACTIONS(5822), 1, anon_sym_CARET, ACTIONS(5824), 1, anon_sym_AMP, ACTIONS(5812), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5826), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5830), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5814), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(5828), 4, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, [118687] = 12, ACTIONS(5675), 1, sym_comment, ACTIONS(5816), 1, anon_sym_PIPE_PIPE, ACTIONS(5818), 1, anon_sym_AMP_AMP, ACTIONS(5820), 1, anon_sym_PIPE, ACTIONS(5822), 1, anon_sym_CARET, ACTIONS(5824), 1, anon_sym_AMP, ACTIONS(5832), 1, anon_sym_LF, ACTIONS(5812), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5826), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5830), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5814), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(5828), 4, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, [118732] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4367), 1, anon_sym_COLON_COLON, ACTIONS(5834), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2496), 1, sym_field_declaration_list, STATE(3485), 1, sym_ms_declspec_modifier, STATE(3613), 1, sym_attribute_declaration, STATE(4016), 1, sym__scope_resolution, STATE(4240), 1, sym_virtual_specifier, STATE(4870), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1968), 2, sym__class_name, sym_qualified_type_identifier, [118789] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4367), 1, anon_sym_COLON_COLON, ACTIONS(5834), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2495), 1, sym_field_declaration_list, STATE(3484), 1, sym_ms_declspec_modifier, STATE(3615), 1, sym_attribute_declaration, STATE(4016), 1, sym__scope_resolution, STATE(4242), 1, sym_virtual_specifier, STATE(4877), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1966), 2, sym__class_name, sym_qualified_type_identifier, [118846] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4367), 1, anon_sym_COLON_COLON, ACTIONS(5834), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2494), 1, sym_field_declaration_list, STATE(3482), 1, sym_ms_declspec_modifier, STATE(3617), 1, sym_attribute_declaration, STATE(4016), 1, sym__scope_resolution, STATE(4244), 1, sym_virtual_specifier, STATE(4886), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1967), 2, sym__class_name, sym_qualified_type_identifier, [118903] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4753), 1, anon_sym_COLON_COLON, ACTIONS(5836), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2496), 1, sym_field_declaration_list, STATE(3476), 1, sym_ms_declspec_modifier, STATE(3599), 1, sym_attribute_declaration, STATE(4033), 1, sym__scope_resolution, STATE(4240), 1, sym_virtual_specifier, STATE(4870), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1968), 2, sym__class_name, sym_qualified_type_identifier, [118960] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4753), 1, anon_sym_COLON_COLON, ACTIONS(5836), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2495), 1, sym_field_declaration_list, STATE(3500), 1, sym_ms_declspec_modifier, STATE(3544), 1, sym_attribute_declaration, STATE(4033), 1, sym__scope_resolution, STATE(4242), 1, sym_virtual_specifier, STATE(4877), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1966), 2, sym__class_name, sym_qualified_type_identifier, [119017] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4753), 1, anon_sym_COLON_COLON, ACTIONS(5836), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2494), 1, sym_field_declaration_list, STATE(3520), 1, sym_ms_declspec_modifier, STATE(3573), 1, sym_attribute_declaration, STATE(4033), 1, sym__scope_resolution, STATE(4244), 1, sym_virtual_specifier, STATE(4886), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1967), 2, sym__class_name, sym_qualified_type_identifier, [119074] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3430), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4671), 1, anon_sym_COLON_COLON, ACTIONS(5838), 1, sym_identifier, STATE(1759), 1, sym_template_type, STATE(2002), 1, sym_field_declaration_list, STATE(3516), 1, sym_ms_declspec_modifier, STATE(3563), 1, sym_attribute_declaration, STATE(4048), 1, sym__scope_resolution, STATE(4330), 1, sym_virtual_specifier, STATE(4931), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1696), 2, sym__class_name, sym_qualified_type_identifier, [119131] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3430), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4671), 1, anon_sym_COLON_COLON, ACTIONS(5838), 1, sym_identifier, STATE(1759), 1, sym_template_type, STATE(2003), 1, sym_field_declaration_list, STATE(3512), 1, sym_ms_declspec_modifier, STATE(3558), 1, sym_attribute_declaration, STATE(4048), 1, sym__scope_resolution, STATE(4329), 1, sym_virtual_specifier, STATE(4928), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1707), 2, sym__class_name, sym_qualified_type_identifier, [119188] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3430), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4671), 1, anon_sym_COLON_COLON, ACTIONS(5838), 1, sym_identifier, STATE(1759), 1, sym_template_type, STATE(2004), 1, sym_field_declaration_list, STATE(3510), 1, sym_ms_declspec_modifier, STATE(3561), 1, sym_attribute_declaration, STATE(4048), 1, sym__scope_resolution, STATE(4325), 1, sym_virtual_specifier, STATE(4927), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1706), 2, sym__class_name, sym_qualified_type_identifier, [119245] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4371), 1, anon_sym_COLON_COLON, ACTIONS(5840), 1, sym_identifier, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3518), 1, sym_ms_declspec_modifier, STATE(3556), 1, sym_attribute_declaration, STATE(3699), 1, sym_template_type, STATE(3935), 1, sym_field_declaration_list, STATE(4029), 1, sym__scope_resolution, STATE(4210), 1, sym_virtual_specifier, STATE(4675), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3658), 2, sym__class_name, sym_qualified_type_identifier, [119302] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4371), 1, anon_sym_COLON_COLON, ACTIONS(5840), 1, sym_identifier, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3522), 1, sym_ms_declspec_modifier, STATE(3554), 1, sym_attribute_declaration, STATE(3699), 1, sym_template_type, STATE(3944), 1, sym_field_declaration_list, STATE(4029), 1, sym__scope_resolution, STATE(4207), 1, sym_virtual_specifier, STATE(4674), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3656), 2, sym__class_name, sym_qualified_type_identifier, [119359] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4371), 1, anon_sym_COLON_COLON, ACTIONS(5840), 1, sym_identifier, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3523), 1, sym_ms_declspec_modifier, STATE(3552), 1, sym_attribute_declaration, STATE(3699), 1, sym_template_type, STATE(3952), 1, sym_field_declaration_list, STATE(4029), 1, sym__scope_resolution, STATE(4206), 1, sym_virtual_specifier, STATE(4672), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3654), 2, sym__class_name, sym_qualified_type_identifier, [119416] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2312), 1, sym_field_declaration_list, STATE(3493), 1, sym_ms_declspec_modifier, STATE(3589), 1, sym_attribute_declaration, STATE(4015), 1, sym__scope_resolution, STATE(4186), 1, sym_virtual_specifier, STATE(4778), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2111), 2, sym__class_name, sym_qualified_type_identifier, [119473] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3896), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, [119514] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(5713), 1, anon_sym_LF, ACTIONS(5715), 18, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, [119541] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(5701), 1, anon_sym_LF, ACTIONS(5703), 18, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, [119568] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2312), 1, sym_field_declaration_list, STATE(3502), 1, sym_ms_declspec_modifier, STATE(3546), 1, sym_attribute_declaration, STATE(4014), 1, sym__scope_resolution, STATE(4186), 1, sym_virtual_specifier, STATE(4778), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2111), 2, sym__class_name, sym_qualified_type_identifier, [119625] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2612), 1, sym_field_declaration_list, STATE(3515), 1, sym_ms_declspec_modifier, STATE(3559), 1, sym_attribute_declaration, STATE(4035), 1, sym__scope_resolution, STATE(4239), 1, sym_virtual_specifier, STATE(4914), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2361), 2, sym__class_name, sym_qualified_type_identifier, [119682] = 12, ACTIONS(5675), 1, sym_comment, ACTIONS(5816), 1, anon_sym_PIPE_PIPE, ACTIONS(5818), 1, anon_sym_AMP_AMP, ACTIONS(5820), 1, anon_sym_PIPE, ACTIONS(5822), 1, anon_sym_CARET, ACTIONS(5824), 1, anon_sym_AMP, ACTIONS(5848), 1, anon_sym_LF, ACTIONS(5812), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5826), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5830), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5814), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(5828), 4, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, [119727] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2312), 1, sym_field_declaration_list, STATE(3502), 1, sym_ms_declspec_modifier, STATE(3546), 1, sym_attribute_declaration, STATE(4014), 1, sym__scope_resolution, STATE(4186), 1, sym_virtual_specifier, STATE(4778), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2520), 2, sym__class_name, sym_qualified_type_identifier, [119784] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2255), 1, sym_field_declaration_list, STATE(3481), 1, sym_ms_declspec_modifier, STATE(3586), 1, sym_attribute_declaration, STATE(4014), 1, sym__scope_resolution, STATE(4189), 1, sym_virtual_specifier, STATE(4787), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2517), 2, sym__class_name, sym_qualified_type_identifier, [119841] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2316), 1, sym_field_declaration_list, STATE(3487), 1, sym_ms_declspec_modifier, STATE(3600), 1, sym_attribute_declaration, STATE(4014), 1, sym__scope_resolution, STATE(4192), 1, sym_virtual_specifier, STATE(4798), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2515), 2, sym__class_name, sym_qualified_type_identifier, [119898] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2550), 1, sym_field_declaration_list, STATE(3517), 1, sym_ms_declspec_modifier, STATE(3557), 1, sym_attribute_declaration, STATE(4035), 1, sym__scope_resolution, STATE(4249), 1, sym_virtual_specifier, STATE(4900), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2355), 2, sym__class_name, sym_qualified_type_identifier, [119955] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2312), 1, sym_field_declaration_list, STATE(3480), 1, sym_ms_declspec_modifier, STATE(3619), 1, sym_attribute_declaration, STATE(4035), 1, sym__scope_resolution, STATE(4186), 1, sym_virtual_specifier, STATE(4778), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2410), 2, sym__class_name, sym_qualified_type_identifier, [120012] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2255), 1, sym_field_declaration_list, STATE(3501), 1, sym_ms_declspec_modifier, STATE(3621), 1, sym_attribute_declaration, STATE(4035), 1, sym__scope_resolution, STATE(4189), 1, sym_virtual_specifier, STATE(4787), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2401), 2, sym__class_name, sym_qualified_type_identifier, [120069] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2316), 1, sym_field_declaration_list, STATE(3495), 1, sym_ms_declspec_modifier, STATE(3592), 1, sym_attribute_declaration, STATE(4035), 1, sym__scope_resolution, STATE(4192), 1, sym_virtual_specifier, STATE(4798), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2428), 2, sym__class_name, sym_qualified_type_identifier, [120126] = 12, ACTIONS(5675), 1, sym_comment, ACTIONS(5816), 1, anon_sym_PIPE_PIPE, ACTIONS(5818), 1, anon_sym_AMP_AMP, ACTIONS(5820), 1, anon_sym_PIPE, ACTIONS(5822), 1, anon_sym_CARET, ACTIONS(5824), 1, anon_sym_AMP, ACTIONS(5850), 1, anon_sym_LF, ACTIONS(5812), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5826), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5830), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5814), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(5828), 4, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, [120171] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2316), 1, sym_field_declaration_list, STATE(3487), 1, sym_ms_declspec_modifier, STATE(3600), 1, sym_attribute_declaration, STATE(4014), 1, sym__scope_resolution, STATE(4192), 1, sym_virtual_specifier, STATE(4798), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2526), 2, sym__class_name, sym_qualified_type_identifier, [120228] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2255), 1, sym_field_declaration_list, STATE(3481), 1, sym_ms_declspec_modifier, STATE(3586), 1, sym_attribute_declaration, STATE(4014), 1, sym__scope_resolution, STATE(4189), 1, sym_virtual_specifier, STATE(4787), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2525), 2, sym__class_name, sym_qualified_type_identifier, [120285] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2312), 1, sym_field_declaration_list, STATE(3502), 1, sym_ms_declspec_modifier, STATE(3546), 1, sym_attribute_declaration, STATE(4014), 1, sym__scope_resolution, STATE(4186), 1, sym_virtual_specifier, STATE(4778), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2524), 2, sym__class_name, sym_qualified_type_identifier, [120342] = 12, ACTIONS(5675), 1, sym_comment, ACTIONS(5816), 1, anon_sym_PIPE_PIPE, ACTIONS(5818), 1, anon_sym_AMP_AMP, ACTIONS(5820), 1, anon_sym_PIPE, ACTIONS(5822), 1, anon_sym_CARET, ACTIONS(5824), 1, anon_sym_AMP, ACTIONS(5852), 1, anon_sym_LF, ACTIONS(5812), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5826), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5830), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5814), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(5828), 4, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, [120387] = 12, ACTIONS(5675), 1, sym_comment, ACTIONS(5816), 1, anon_sym_PIPE_PIPE, ACTIONS(5818), 1, anon_sym_AMP_AMP, ACTIONS(5820), 1, anon_sym_PIPE, ACTIONS(5822), 1, anon_sym_CARET, ACTIONS(5824), 1, anon_sym_AMP, ACTIONS(5854), 1, anon_sym_LF, ACTIONS(5812), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5826), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5830), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5814), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(5828), 4, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, [120432] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2312), 1, sym_field_declaration_list, STATE(3502), 1, sym_ms_declspec_modifier, STATE(3546), 1, sym_attribute_declaration, STATE(4014), 1, sym__scope_resolution, STATE(4186), 1, sym_virtual_specifier, STATE(4778), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2511), 2, sym__class_name, sym_qualified_type_identifier, [120489] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(5856), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2229), 1, sym_field_declaration_list, STATE(3514), 1, sym_ms_declspec_modifier, STATE(3577), 1, sym_attribute_declaration, STATE(4023), 1, sym__scope_resolution, STATE(4201), 1, sym_virtual_specifier, STATE(4656), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1785), 2, sym__class_name, sym_qualified_type_identifier, [120546] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2255), 1, sym_field_declaration_list, STATE(3481), 1, sym_ms_declspec_modifier, STATE(3586), 1, sym_attribute_declaration, STATE(4014), 1, sym__scope_resolution, STATE(4189), 1, sym_virtual_specifier, STATE(4787), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2512), 2, sym__class_name, sym_qualified_type_identifier, [120603] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2316), 1, sym_field_declaration_list, STATE(3487), 1, sym_ms_declspec_modifier, STATE(3600), 1, sym_attribute_declaration, STATE(4014), 1, sym__scope_resolution, STATE(4192), 1, sym_virtual_specifier, STATE(4798), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2514), 2, sym__class_name, sym_qualified_type_identifier, [120660] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(5856), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2208), 1, sym_field_declaration_list, STATE(3498), 1, sym_ms_declspec_modifier, STATE(3598), 1, sym_attribute_declaration, STATE(4023), 1, sym__scope_resolution, STATE(4269), 1, sym_virtual_specifier, STATE(4633), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1776), 2, sym__class_name, sym_qualified_type_identifier, [120717] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2539), 1, sym_field_declaration_list, STATE(3521), 1, sym_ms_declspec_modifier, STATE(3555), 1, sym_attribute_declaration, STATE(4035), 1, sym__scope_resolution, STATE(4251), 1, sym_virtual_specifier, STATE(4904), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2352), 2, sym__class_name, sym_qualified_type_identifier, [120774] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3853), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, [120815] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(5856), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2213), 1, sym_field_declaration_list, STATE(3503), 1, sym_ms_declspec_modifier, STATE(3537), 1, sym_attribute_declaration, STATE(4023), 1, sym__scope_resolution, STATE(4185), 1, sym_virtual_specifier, STATE(4615), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1773), 2, sym__class_name, sym_qualified_type_identifier, [120872] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2255), 1, sym_field_declaration_list, STATE(3481), 1, sym_ms_declspec_modifier, STATE(3586), 1, sym_attribute_declaration, STATE(4014), 1, sym__scope_resolution, STATE(4189), 1, sym_virtual_specifier, STATE(4787), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2113), 2, sym__class_name, sym_qualified_type_identifier, [120929] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2255), 1, sym_field_declaration_list, STATE(3491), 1, sym_ms_declspec_modifier, STATE(3593), 1, sym_attribute_declaration, STATE(4015), 1, sym__scope_resolution, STATE(4189), 1, sym_virtual_specifier, STATE(4787), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2113), 2, sym__class_name, sym_qualified_type_identifier, [120986] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2316), 1, sym_field_declaration_list, STATE(3487), 1, sym_ms_declspec_modifier, STATE(3600), 1, sym_attribute_declaration, STATE(4014), 1, sym__scope_resolution, STATE(4192), 1, sym_virtual_specifier, STATE(4798), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2126), 2, sym__class_name, sym_qualified_type_identifier, [121043] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2316), 1, sym_field_declaration_list, STATE(3490), 1, sym_ms_declspec_modifier, STATE(3595), 1, sym_attribute_declaration, STATE(4015), 1, sym__scope_resolution, STATE(4192), 1, sym_virtual_specifier, STATE(4798), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2126), 2, sym__class_name, sym_qualified_type_identifier, [121100] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3852), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, STATE(3265), 2, sym_type_qualifier, aux_sym_type_definition_repeat1, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, ACTIONS(2394), 6, anon_sym_const, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, [121141] = 3, ACTIONS(3571), 1, anon_sym_LF, ACTIONS(5675), 1, sym_comment, ACTIONS(3573), 18, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, [121168] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(5733), 1, anon_sym_LF, ACTIONS(5735), 18, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, [121195] = 5, ACTIONS(5675), 1, sym_comment, ACTIONS(5705), 1, anon_sym_LF, ACTIONS(5812), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5814), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(5707), 13, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, [121226] = 6, ACTIONS(5675), 1, sym_comment, ACTIONS(5705), 1, anon_sym_LF, ACTIONS(5812), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5830), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5814), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(5707), 11, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, [121259] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(5769), 1, anon_sym_LF, ACTIONS(5771), 18, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, [121286] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5858), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2316), 1, sym_field_declaration_list, STATE(3488), 1, sym_ms_declspec_modifier, STATE(3614), 1, sym_attribute_declaration, STATE(4041), 1, sym__scope_resolution, STATE(4192), 1, sym_virtual_specifier, STATE(4798), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3762), 2, sym__class_name, sym_qualified_type_identifier, [121343] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5858), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2255), 1, sym_field_declaration_list, STATE(3483), 1, sym_ms_declspec_modifier, STATE(3622), 1, sym_attribute_declaration, STATE(4041), 1, sym__scope_resolution, STATE(4189), 1, sym_virtual_specifier, STATE(4787), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3759), 2, sym__class_name, sym_qualified_type_identifier, [121400] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(5653), 1, anon_sym_SLASH, ACTIONS(5655), 1, anon_sym_PIPE_PIPE, ACTIONS(5657), 1, anon_sym_AMP_AMP, ACTIONS(5659), 1, anon_sym_PIPE, ACTIONS(5661), 1, anon_sym_CARET, ACTIONS(5663), 1, anon_sym_AMP, ACTIONS(5860), 1, anon_sym_RPAREN, ACTIONS(5649), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5651), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5665), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5667), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5669), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5671), 2, anon_sym_LT_LT, anon_sym_GT_GT, [121449] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(5765), 1, anon_sym_LF, ACTIONS(5767), 18, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, [121476] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(5761), 1, anon_sym_LF, ACTIONS(5763), 18, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, [121503] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5858), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2312), 1, sym_field_declaration_list, STATE(3479), 1, sym_ms_declspec_modifier, STATE(3543), 1, sym_attribute_declaration, STATE(4041), 1, sym__scope_resolution, STATE(4186), 1, sym_virtual_specifier, STATE(4778), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3754), 2, sym__class_name, sym_qualified_type_identifier, [121560] = 7, ACTIONS(5675), 1, sym_comment, ACTIONS(5705), 1, anon_sym_LF, ACTIONS(5812), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5830), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5814), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(5828), 4, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, ACTIONS(5707), 7, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, [121595] = 8, ACTIONS(5675), 1, sym_comment, ACTIONS(5705), 1, anon_sym_LF, ACTIONS(5812), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5826), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5830), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5814), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(5828), 4, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, ACTIONS(5707), 5, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, [121632] = 12, ACTIONS(5675), 1, sym_comment, ACTIONS(5816), 1, anon_sym_PIPE_PIPE, ACTIONS(5818), 1, anon_sym_AMP_AMP, ACTIONS(5820), 1, anon_sym_PIPE, ACTIONS(5822), 1, anon_sym_CARET, ACTIONS(5824), 1, anon_sym_AMP, ACTIONS(5862), 1, anon_sym_LF, ACTIONS(5812), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5826), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5830), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5814), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(5828), 4, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, [121677] = 12, ACTIONS(5675), 1, sym_comment, ACTIONS(5816), 1, anon_sym_PIPE_PIPE, ACTIONS(5818), 1, anon_sym_AMP_AMP, ACTIONS(5820), 1, anon_sym_PIPE, ACTIONS(5822), 1, anon_sym_CARET, ACTIONS(5824), 1, anon_sym_AMP, ACTIONS(5864), 1, anon_sym_LF, ACTIONS(5812), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5826), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5830), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5814), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(5828), 4, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, [121722] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(5866), 1, sym_identifier, STATE(1674), 1, sym_template_type, STATE(1778), 1, sym_field_declaration_list, STATE(3496), 1, sym_ms_declspec_modifier, STATE(3587), 1, sym_attribute_declaration, STATE(4019), 1, sym__scope_resolution, STATE(4369), 1, sym_virtual_specifier, STATE(4994), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1653), 2, sym__class_name, sym_qualified_type_identifier, [121779] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3208), 1, sym_parameter_list, ACTIONS(4866), 2, anon_sym_AMP, anon_sym_const, ACTIONS(4864), 14, anon_sym_RPAREN, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [121812] = 9, ACTIONS(5675), 1, sym_comment, ACTIONS(5705), 1, anon_sym_LF, ACTIONS(5824), 1, anon_sym_AMP, ACTIONS(5812), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5826), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5830), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5814), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(5707), 4, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_PIPE, anon_sym_CARET, ACTIONS(5828), 4, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, [121851] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3208), 1, sym_parameter_list, ACTIONS(5592), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5588), 14, anon_sym_RPAREN, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [121884] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3208), 1, sym_parameter_list, ACTIONS(5619), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5617), 14, anon_sym_RPAREN, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [121917] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3208), 1, sym_parameter_list, ACTIONS(5615), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5613), 14, anon_sym_RPAREN, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [121950] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(5868), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2213), 1, sym_field_declaration_list, STATE(3507), 1, sym_ms_declspec_modifier, STATE(3553), 1, sym_attribute_declaration, STATE(4042), 1, sym__scope_resolution, STATE(4185), 1, sym_virtual_specifier, STATE(4615), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1773), 2, sym__class_name, sym_qualified_type_identifier, [122007] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(5866), 1, sym_identifier, STATE(1674), 1, sym_template_type, STATE(1774), 1, sym_field_declaration_list, STATE(3509), 1, sym_ms_declspec_modifier, STATE(3568), 1, sym_attribute_declaration, STATE(4019), 1, sym__scope_resolution, STATE(4298), 1, sym_virtual_specifier, STATE(4996), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1654), 2, sym__class_name, sym_qualified_type_identifier, [122064] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(5866), 1, sym_identifier, STATE(1674), 1, sym_template_type, STATE(1772), 1, sym_field_declaration_list, STATE(3508), 1, sym_ms_declspec_modifier, STATE(3618), 1, sym_attribute_declaration, STATE(4019), 1, sym__scope_resolution, STATE(4366), 1, sym_virtual_specifier, STATE(4999), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1649), 2, sym__class_name, sym_qualified_type_identifier, [122121] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5870), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2312), 1, sym_field_declaration_list, STATE(3504), 1, sym_ms_declspec_modifier, STATE(3580), 1, sym_attribute_declaration, STATE(4049), 1, sym__scope_resolution, STATE(4186), 1, sym_virtual_specifier, STATE(4778), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2410), 2, sym__class_name, sym_qualified_type_identifier, [122178] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(5868), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2208), 1, sym_field_declaration_list, STATE(3511), 1, sym_ms_declspec_modifier, STATE(3567), 1, sym_attribute_declaration, STATE(4042), 1, sym__scope_resolution, STATE(4269), 1, sym_virtual_specifier, STATE(4633), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1776), 2, sym__class_name, sym_qualified_type_identifier, [122235] = 12, ACTIONS(5675), 1, sym_comment, ACTIONS(5816), 1, anon_sym_PIPE_PIPE, ACTIONS(5818), 1, anon_sym_AMP_AMP, ACTIONS(5820), 1, anon_sym_PIPE, ACTIONS(5822), 1, anon_sym_CARET, ACTIONS(5824), 1, anon_sym_AMP, ACTIONS(5872), 1, anon_sym_LF, ACTIONS(5812), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5826), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5830), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5814), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(5828), 4, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, [122280] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(5653), 1, anon_sym_SLASH, ACTIONS(5655), 1, anon_sym_PIPE_PIPE, ACTIONS(5657), 1, anon_sym_AMP_AMP, ACTIONS(5659), 1, anon_sym_PIPE, ACTIONS(5661), 1, anon_sym_CARET, ACTIONS(5663), 1, anon_sym_AMP, ACTIONS(5874), 1, anon_sym_RPAREN, ACTIONS(5649), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5651), 2, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(5665), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5667), 2, anon_sym_GT, anon_sym_LT, ACTIONS(5669), 2, anon_sym_GT_EQ, anon_sym_LT_EQ, ACTIONS(5671), 2, anon_sym_LT_LT, anon_sym_GT_GT, [122329] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5870), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2255), 1, sym_field_declaration_list, STATE(3519), 1, sym_ms_declspec_modifier, STATE(3569), 1, sym_attribute_declaration, STATE(4049), 1, sym__scope_resolution, STATE(4189), 1, sym_virtual_specifier, STATE(4787), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2401), 2, sym__class_name, sym_qualified_type_identifier, [122386] = 10, ACTIONS(5675), 1, sym_comment, ACTIONS(5705), 1, anon_sym_LF, ACTIONS(5822), 1, anon_sym_CARET, ACTIONS(5824), 1, anon_sym_AMP, ACTIONS(5812), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5826), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5830), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5707), 3, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_PIPE, ACTIONS(5814), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(5828), 4, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, [122427] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5870), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2316), 1, sym_field_declaration_list, STATE(3499), 1, sym_ms_declspec_modifier, STATE(3534), 1, sym_attribute_declaration, STATE(4049), 1, sym__scope_resolution, STATE(4192), 1, sym_virtual_specifier, STATE(4798), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2428), 2, sym__class_name, sym_qualified_type_identifier, [122484] = 11, ACTIONS(5675), 1, sym_comment, ACTIONS(5705), 1, anon_sym_LF, ACTIONS(5820), 1, anon_sym_PIPE, ACTIONS(5822), 1, anon_sym_CARET, ACTIONS(5824), 1, anon_sym_AMP, ACTIONS(5707), 2, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, ACTIONS(5812), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5826), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5830), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5814), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(5828), 4, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, [122527] = 12, ACTIONS(5675), 1, sym_comment, ACTIONS(5705), 1, anon_sym_LF, ACTIONS(5707), 1, anon_sym_PIPE_PIPE, ACTIONS(5818), 1, anon_sym_AMP_AMP, ACTIONS(5820), 1, anon_sym_PIPE, ACTIONS(5822), 1, anon_sym_CARET, ACTIONS(5824), 1, anon_sym_AMP, ACTIONS(5812), 2, anon_sym_DASH, anon_sym_PLUS, ACTIONS(5826), 2, anon_sym_EQ_EQ, anon_sym_BANG_EQ, ACTIONS(5830), 2, anon_sym_LT_LT, anon_sym_GT_GT, ACTIONS(5814), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(5828), 4, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, [122572] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3208), 1, sym_parameter_list, ACTIONS(5600), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5598), 14, anon_sym_RPAREN, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [122605] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(5705), 1, anon_sym_LF, ACTIONS(5707), 18, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, [122632] = 18, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3106), 1, anon_sym___declspec, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(5868), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2229), 1, sym_field_declaration_list, STATE(3513), 1, sym_ms_declspec_modifier, STATE(3562), 1, sym_attribute_declaration, STATE(4042), 1, sym__scope_resolution, STATE(4201), 1, sym_virtual_specifier, STATE(4656), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1785), 2, sym__class_name, sym_qualified_type_identifier, [122689] = 4, ACTIONS(5675), 1, sym_comment, ACTIONS(5705), 1, anon_sym_LF, ACTIONS(5814), 3, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, ACTIONS(5707), 15, anon_sym_DASH, anon_sym_PLUS, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, [122718] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(5723), 1, anon_sym_LF, ACTIONS(5725), 18, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, [122745] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(5727), 1, anon_sym_LF, ACTIONS(5729), 18, anon_sym_DASH, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, anon_sym_PIPE_PIPE, anon_sym_AMP_AMP, anon_sym_PIPE, anon_sym_CARET, anon_sym_AMP, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_GT, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT_GT, [122772] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(5876), 1, anon_sym_LBRACE, ACTIONS(5878), 1, anon_sym_COLON, STATE(2249), 1, sym_enumerator_list, STATE(3530), 1, sym__enum_base_clause, ACTIONS(3492), 2, anon_sym_AMP, anon_sym_const, ACTIONS(3490), 12, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, [122806] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(5876), 1, anon_sym_LBRACE, ACTIONS(5878), 1, anon_sym_COLON, STATE(2110), 1, sym_enumerator_list, STATE(3528), 1, sym__enum_base_clause, ACTIONS(3475), 2, anon_sym_AMP, anon_sym_const, ACTIONS(3473), 12, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, [122840] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(5880), 1, anon_sym_LBRACE, ACTIONS(5882), 1, anon_sym_COLON, STATE(2486), 1, sym_enumerator_list, STATE(3531), 1, sym__enum_base_clause, ACTIONS(3475), 2, anon_sym_AMP, anon_sym_const, ACTIONS(3473), 12, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_GT2, [122874] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(5880), 1, anon_sym_LBRACE, ACTIONS(5882), 1, anon_sym_COLON, STATE(2470), 1, sym_enumerator_list, STATE(3526), 1, sym__enum_base_clause, ACTIONS(3492), 2, anon_sym_AMP, anon_sym_const, ACTIONS(3490), 12, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_GT2, [122908] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(5621), 1, anon_sym_LT, STATE(1934), 1, sym_template_argument_list, ACTIONS(2953), 2, anon_sym_AMP, anon_sym_const, ACTIONS(2961), 13, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, [122940] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3246), 1, sym_parameter_list, ACTIONS(5592), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5588), 13, anon_sym_AMP_AMP, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [122972] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3246), 1, sym_parameter_list, ACTIONS(5619), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5617), 13, anon_sym_AMP_AMP, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [123004] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3246), 1, sym_parameter_list, ACTIONS(5615), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5613), 13, anon_sym_AMP_AMP, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [123036] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3246), 1, sym_parameter_list, ACTIONS(5600), 2, anon_sym_AMP, anon_sym_const, ACTIONS(5598), 13, anon_sym_AMP_AMP, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [123068] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5594), 1, anon_sym_LBRACK, STATE(3246), 1, sym_parameter_list, ACTIONS(4866), 2, anon_sym_AMP, anon_sym_const, ACTIONS(4864), 13, anon_sym_AMP_AMP, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_DASH_GT, anon_sym_final, anon_sym_override, anon_sym_noexcept, anon_sym_throw, [123100] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4753), 1, anon_sym_COLON_COLON, ACTIONS(5836), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2484), 1, sym_field_declaration_list, STATE(3538), 1, sym_attribute_declaration, STATE(4033), 1, sym__scope_resolution, STATE(4280), 1, sym_virtual_specifier, STATE(4941), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1970), 2, sym__class_name, sym_qualified_type_identifier, [123151] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5479), 1, anon_sym_COLON, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5884), 1, anon_sym_COMMA, ACTIONS(5886), 1, anon_sym_SEMI, ACTIONS(5888), 1, anon_sym_LBRACE, ACTIONS(5890), 1, anon_sym_LBRACK, ACTIONS(5892), 1, anon_sym_EQ, STATE(1537), 1, sym_compound_statement, STATE(1539), 1, sym_default_method_clause, STATE(1543), 1, sym_delete_method_clause, STATE(3109), 1, sym_parameter_list, STATE(3903), 1, aux_sym_field_declaration_repeat1, STATE(5315), 1, sym_bitfield_clause, STATE(5316), 1, sym_initializer_list, STATE(3835), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [123204] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5479), 1, anon_sym_COLON, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5884), 1, anon_sym_COMMA, ACTIONS(5890), 1, anon_sym_LBRACK, ACTIONS(5894), 1, anon_sym_SEMI, ACTIONS(5896), 1, anon_sym_LBRACE, ACTIONS(5898), 1, anon_sym_EQ, STATE(1447), 1, sym_delete_method_clause, STATE(1448), 1, sym_default_method_clause, STATE(1449), 1, sym_compound_statement, STATE(3109), 1, sym_parameter_list, STATE(3975), 1, aux_sym_field_declaration_repeat1, STATE(5137), 1, sym_initializer_list, STATE(5142), 1, sym_bitfield_clause, STATE(3835), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [123257] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5858), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2323), 1, sym_field_declaration_list, STATE(3606), 1, sym_attribute_declaration, STATE(4041), 1, sym__scope_resolution, STATE(4264), 1, sym_virtual_specifier, STATE(4921), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3764), 2, sym__class_name, sym_qualified_type_identifier, [123308] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2323), 1, sym_field_declaration_list, STATE(3584), 1, sym_attribute_declaration, STATE(4035), 1, sym__scope_resolution, STATE(4264), 1, sym_virtual_specifier, STATE(4921), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2474), 2, sym__class_name, sym_qualified_type_identifier, [123359] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2285), 1, sym_field_declaration_list, STATE(3560), 1, sym_attribute_declaration, STATE(4014), 1, sym__scope_resolution, STATE(4278), 1, sym_virtual_specifier, STATE(4940), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2072), 2, sym__class_name, sym_qualified_type_identifier, [123410] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4367), 1, anon_sym_COLON_COLON, ACTIONS(5834), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2479), 1, sym_field_declaration_list, STATE(3585), 1, sym_attribute_declaration, STATE(4016), 1, sym__scope_resolution, STATE(4288), 1, sym_virtual_specifier, STATE(4959), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1956), 2, sym__class_name, sym_qualified_type_identifier, [123461] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5858), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2285), 1, sym_field_declaration_list, STATE(3607), 1, sym_attribute_declaration, STATE(4041), 1, sym__scope_resolution, STATE(4278), 1, sym_virtual_specifier, STATE(4940), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3765), 2, sym__class_name, sym_qualified_type_identifier, [123512] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4367), 1, anon_sym_COLON_COLON, ACTIONS(5834), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2482), 1, sym_field_declaration_list, STATE(3588), 1, sym_attribute_declaration, STATE(4016), 1, sym__scope_resolution, STATE(4284), 1, sym_virtual_specifier, STATE(4946), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1972), 2, sym__class_name, sym_qualified_type_identifier, [123563] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4367), 1, anon_sym_COLON_COLON, ACTIONS(5834), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2484), 1, sym_field_declaration_list, STATE(3597), 1, sym_attribute_declaration, STATE(4016), 1, sym__scope_resolution, STATE(4280), 1, sym_virtual_specifier, STATE(4941), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1970), 2, sym__class_name, sym_qualified_type_identifier, [123614] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(4478), 1, sym_identifier, ACTIONS(4480), 1, anon_sym_LPAREN2, ACTIONS(4482), 1, anon_sym_STAR, ACTIONS(4484), 1, anon_sym_AMP_AMP, ACTIONS(4486), 1, anon_sym_AMP, STATE(4025), 1, sym__field_declarator, STATE(5243), 1, sym_ms_based_modifier, STATE(3876), 8, sym_parenthesized_field_declarator, sym_attributed_field_declarator, sym_pointer_field_declarator, sym_function_field_declarator, sym_array_field_declarator, sym_reference_field_declarator, sym_template_method, sym_operator_name, [123655] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2291), 1, sym_field_declaration_list, STATE(3535), 1, sym_attribute_declaration, STATE(4014), 1, sym__scope_resolution, STATE(4291), 1, sym_virtual_specifier, STATE(4967), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2233), 2, sym__class_name, sym_qualified_type_identifier, [123706] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5858), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2291), 1, sym_field_declaration_list, STATE(3576), 1, sym_attribute_declaration, STATE(4041), 1, sym__scope_resolution, STATE(4291), 1, sym_virtual_specifier, STATE(4967), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3720), 2, sym__class_name, sym_qualified_type_identifier, [123757] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(4480), 1, anon_sym_LPAREN2, ACTIONS(4488), 1, sym_identifier, ACTIONS(4490), 1, anon_sym_STAR, ACTIONS(4492), 1, anon_sym_AMP_AMP, ACTIONS(4494), 1, anon_sym_AMP, STATE(3737), 1, sym__field_declarator, STATE(5140), 1, sym_ms_based_modifier, STATE(3876), 8, sym_parenthesized_field_declarator, sym_attributed_field_declarator, sym_pointer_field_declarator, sym_function_field_declarator, sym_array_field_declarator, sym_reference_field_declarator, sym_template_method, sym_operator_name, [123798] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2291), 1, sym_field_declaration_list, STATE(3604), 1, sym_attribute_declaration, STATE(4015), 1, sym__scope_resolution, STATE(4291), 1, sym_virtual_specifier, STATE(4967), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2233), 2, sym__class_name, sym_qualified_type_identifier, [123849] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2285), 1, sym_field_declaration_list, STATE(3603), 1, sym_attribute_declaration, STATE(4015), 1, sym__scope_resolution, STATE(4278), 1, sym_virtual_specifier, STATE(4940), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2072), 2, sym__class_name, sym_qualified_type_identifier, [123900] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(5639), 1, anon_sym_LT, STATE(2202), 1, sym_template_argument_list, ACTIONS(2953), 2, anon_sym_AMP, anon_sym_const, ACTIONS(2961), 12, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_GT2, [123931] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2323), 1, sym_field_declaration_list, STATE(3602), 1, sym_attribute_declaration, STATE(4015), 1, sym__scope_resolution, STATE(4264), 1, sym_virtual_specifier, STATE(4921), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2235), 2, sym__class_name, sym_qualified_type_identifier, [123982] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5479), 1, anon_sym_COLON, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5884), 1, anon_sym_COMMA, ACTIONS(5890), 1, anon_sym_LBRACK, ACTIONS(5900), 1, anon_sym_SEMI, ACTIONS(5902), 1, anon_sym_LBRACE, ACTIONS(5904), 1, anon_sym_EQ, STATE(1558), 1, sym_compound_statement, STATE(1559), 1, sym_default_method_clause, STATE(1565), 1, sym_delete_method_clause, STATE(3109), 1, sym_parameter_list, STATE(3916), 1, aux_sym_field_declaration_repeat1, STATE(5441), 1, sym_bitfield_clause, STATE(5442), 1, sym_initializer_list, STATE(3835), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [124035] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2291), 1, sym_field_declaration_list, STATE(3581), 1, sym_attribute_declaration, STATE(4035), 1, sym__scope_resolution, STATE(4291), 1, sym_virtual_specifier, STATE(4967), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2452), 2, sym__class_name, sym_qualified_type_identifier, [124086] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(5866), 1, sym_identifier, STATE(1674), 1, sym_template_type, STATE(1765), 1, sym_field_declaration_list, STATE(3610), 1, sym_attribute_declaration, STATE(4019), 1, sym__scope_resolution, STATE(4283), 1, sym_virtual_specifier, STATE(4853), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1657), 2, sym__class_name, sym_qualified_type_identifier, [124137] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3410), 1, anon_sym_LBRACE, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3517), 2, anon_sym_AMP, anon_sym_const, ACTIONS(3515), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_GT2, [124166] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(5856), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2137), 1, sym_field_declaration_list, STATE(3591), 1, sym_attribute_declaration, STATE(4023), 1, sym__scope_resolution, STATE(4194), 1, sym_virtual_specifier, STATE(4809), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1789), 2, sym__class_name, sym_qualified_type_identifier, [124217] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5870), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2291), 1, sym_field_declaration_list, STATE(3608), 1, sym_attribute_declaration, STATE(4049), 1, sym__scope_resolution, STATE(4291), 1, sym_virtual_specifier, STATE(4967), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2452), 2, sym__class_name, sym_qualified_type_identifier, [124268] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4753), 1, anon_sym_COLON_COLON, ACTIONS(5836), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2482), 1, sym_field_declaration_list, STATE(3539), 1, sym_attribute_declaration, STATE(4033), 1, sym__scope_resolution, STATE(4284), 1, sym_virtual_specifier, STATE(4946), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1972), 2, sym__class_name, sym_qualified_type_identifier, [124319] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2285), 1, sym_field_declaration_list, STATE(3582), 1, sym_attribute_declaration, STATE(4035), 1, sym__scope_resolution, STATE(4278), 1, sym_virtual_specifier, STATE(4940), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2473), 2, sym__class_name, sym_qualified_type_identifier, [124370] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2323), 1, sym_field_declaration_list, STATE(3583), 1, sym_attribute_declaration, STATE(4014), 1, sym__scope_resolution, STATE(4264), 1, sym_virtual_specifier, STATE(4921), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2235), 2, sym__class_name, sym_qualified_type_identifier, [124421] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(5856), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2127), 1, sym_field_declaration_list, STATE(3590), 1, sym_attribute_declaration, STATE(4023), 1, sym__scope_resolution, STATE(4188), 1, sym_virtual_specifier, STATE(4789), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1767), 2, sym__class_name, sym_qualified_type_identifier, [124472] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5870), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2323), 1, sym_field_declaration_list, STATE(3612), 1, sym_attribute_declaration, STATE(4049), 1, sym__scope_resolution, STATE(4264), 1, sym_virtual_specifier, STATE(4921), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2474), 2, sym__class_name, sym_qualified_type_identifier, [124523] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(4480), 1, anon_sym_LPAREN2, ACTIONS(4488), 1, sym_identifier, ACTIONS(4490), 1, anon_sym_STAR, ACTIONS(4492), 1, anon_sym_AMP_AMP, ACTIONS(4494), 1, anon_sym_AMP, STATE(3731), 1, sym__field_declarator, STATE(5140), 1, sym_ms_based_modifier, STATE(3876), 8, sym_parenthesized_field_declarator, sym_attributed_field_declarator, sym_pointer_field_declarator, sym_function_field_declarator, sym_array_field_declarator, sym_reference_field_declarator, sym_template_method, sym_operator_name, [124564] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(4478), 1, sym_identifier, ACTIONS(4480), 1, anon_sym_LPAREN2, ACTIONS(4482), 1, anon_sym_STAR, ACTIONS(4484), 1, anon_sym_AMP_AMP, ACTIONS(4486), 1, anon_sym_AMP, STATE(4057), 1, sym__field_declarator, STATE(5243), 1, sym_ms_based_modifier, STATE(3876), 8, sym_parenthesized_field_declarator, sym_attributed_field_declarator, sym_pointer_field_declarator, sym_function_field_declarator, sym_array_field_declarator, sym_reference_field_declarator, sym_template_method, sym_operator_name, [124605] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(5868), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2127), 1, sym_field_declaration_list, STATE(3540), 1, sym_attribute_declaration, STATE(4042), 1, sym__scope_resolution, STATE(4188), 1, sym_virtual_specifier, STATE(4789), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1767), 2, sym__class_name, sym_qualified_type_identifier, [124656] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(5866), 1, sym_identifier, STATE(1674), 1, sym_template_type, STATE(1749), 1, sym_field_declaration_list, STATE(3594), 1, sym_attribute_declaration, STATE(4019), 1, sym__scope_resolution, STATE(4301), 1, sym_virtual_specifier, STATE(4863), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1655), 2, sym__class_name, sym_qualified_type_identifier, [124707] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(5866), 1, sym_identifier, STATE(1674), 1, sym_template_type, STATE(1764), 1, sym_field_declaration_list, STATE(3605), 1, sym_attribute_declaration, STATE(4019), 1, sym__scope_resolution, STATE(4293), 1, sym_virtual_specifier, STATE(4858), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1656), 2, sym__class_name, sym_qualified_type_identifier, [124758] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3430), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4671), 1, anon_sym_COLON_COLON, ACTIONS(5838), 1, sym_identifier, STATE(1759), 1, sym_template_type, STATE(2019), 1, sym_field_declaration_list, STATE(3565), 1, sym_attribute_declaration, STATE(4048), 1, sym__scope_resolution, STATE(4287), 1, sym_virtual_specifier, STATE(4857), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1710), 2, sym__class_name, sym_qualified_type_identifier, [124809] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(5868), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2137), 1, sym_field_declaration_list, STATE(3541), 1, sym_attribute_declaration, STATE(4042), 1, sym__scope_resolution, STATE(4194), 1, sym_virtual_specifier, STATE(4809), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1789), 2, sym__class_name, sym_qualified_type_identifier, [124860] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3430), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4671), 1, anon_sym_COLON_COLON, ACTIONS(5838), 1, sym_identifier, STATE(1759), 1, sym_template_type, STATE(2017), 1, sym_field_declaration_list, STATE(3564), 1, sym_attribute_declaration, STATE(4048), 1, sym__scope_resolution, STATE(4295), 1, sym_virtual_specifier, STATE(4862), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1682), 2, sym__class_name, sym_qualified_type_identifier, [124911] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(5868), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2168), 1, sym_field_declaration_list, STATE(3545), 1, sym_attribute_declaration, STATE(4042), 1, sym__scope_resolution, STATE(4197), 1, sym_virtual_specifier, STATE(4817), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1748), 2, sym__class_name, sym_qualified_type_identifier, [124962] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(5856), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2168), 1, sym_field_declaration_list, STATE(3596), 1, sym_attribute_declaration, STATE(4023), 1, sym__scope_resolution, STATE(4197), 1, sym_virtual_specifier, STATE(4817), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1748), 2, sym__class_name, sym_qualified_type_identifier, [125013] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2573), 1, sym_field_declaration_list, STATE(3551), 1, sym_attribute_declaration, STATE(4035), 1, sym__scope_resolution, STATE(4203), 1, sym_virtual_specifier, STATE(4652), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2387), 2, sym__class_name, sym_qualified_type_identifier, [125064] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3430), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4671), 1, anon_sym_COLON_COLON, ACTIONS(5838), 1, sym_identifier, STATE(1759), 1, sym_template_type, STATE(2015), 1, sym_field_declaration_list, STATE(3566), 1, sym_attribute_declaration, STATE(4048), 1, sym__scope_resolution, STATE(4303), 1, sym_virtual_specifier, STATE(4871), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1699), 2, sym__class_name, sym_qualified_type_identifier, [125115] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2600), 1, sym_field_declaration_list, STATE(3620), 1, sym_attribute_declaration, STATE(4035), 1, sym__scope_resolution, STATE(4252), 1, sym_virtual_specifier, STATE(4775), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2388), 2, sym__class_name, sym_qualified_type_identifier, [125166] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4371), 1, anon_sym_COLON_COLON, ACTIONS(5840), 1, sym_identifier, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3550), 1, sym_attribute_declaration, STATE(3699), 1, sym_template_type, STATE(3991), 1, sym_field_declaration_list, STATE(4029), 1, sym__scope_resolution, STATE(4177), 1, sym_virtual_specifier, STATE(4646), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3648), 2, sym__class_name, sym_qualified_type_identifier, [125217] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5870), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2285), 1, sym_field_declaration_list, STATE(3611), 1, sym_attribute_declaration, STATE(4049), 1, sym__scope_resolution, STATE(4278), 1, sym_virtual_specifier, STATE(4940), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2473), 2, sym__class_name, sym_qualified_type_identifier, [125268] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4753), 1, anon_sym_COLON_COLON, ACTIONS(5836), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2479), 1, sym_field_declaration_list, STATE(3542), 1, sym_attribute_declaration, STATE(4033), 1, sym__scope_resolution, STATE(4288), 1, sym_virtual_specifier, STATE(4959), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1956), 2, sym__class_name, sym_qualified_type_identifier, [125319] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2587), 1, sym_field_declaration_list, STATE(3616), 1, sym_attribute_declaration, STATE(4035), 1, sym__scope_resolution, STATE(4165), 1, sym_virtual_specifier, STATE(4722), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2351), 2, sym__class_name, sym_qualified_type_identifier, [125370] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4371), 1, anon_sym_COLON_COLON, ACTIONS(5840), 1, sym_identifier, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3532), 1, sym_attribute_declaration, STATE(3699), 1, sym_template_type, STATE(3974), 1, sym_field_declaration_list, STATE(4029), 1, sym__scope_resolution, STATE(4171), 1, sym_virtual_specifier, STATE(4638), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3623), 2, sym__class_name, sym_qualified_type_identifier, [125421] = 16, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4371), 1, anon_sym_COLON_COLON, ACTIONS(5840), 1, sym_identifier, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3549), 1, sym_attribute_declaration, STATE(3699), 1, sym_template_type, STATE(3923), 1, sym_field_declaration_list, STATE(4029), 1, sym__scope_resolution, STATE(4169), 1, sym_virtual_specifier, STATE(4635), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3632), 2, sym__class_name, sym_qualified_type_identifier, [125472] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(5906), 1, sym_identifier, ACTIONS(5908), 1, anon_sym_TILDE, ACTIONS(5910), 1, anon_sym_COLON_COLON, ACTIONS(5912), 1, anon_sym_template, ACTIONS(5914), 1, anon_sym_operator, STATE(1857), 1, sym_operator_name, STATE(1858), 1, sym_qualified_identifier, STATE(1859), 1, sym_dependent_identifier, STATE(1860), 1, sym_destructor_name, STATE(1862), 1, sym_template_function, STATE(2163), 1, sym_template_type, STATE(2164), 1, sym_dependent_type_identifier, STATE(2165), 1, sym_qualified_type_identifier, STATE(3524), 1, sym__scope_resolution, STATE(4536), 1, sym_qualified_operator_cast_identifier, STATE(4545), 1, sym_operator_cast, [125524] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(117), 1, anon_sym_operator, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1389), 1, anon_sym_COLON_COLON, ACTIONS(5916), 1, sym_identifier, ACTIONS(5918), 1, anon_sym_template, STATE(1857), 1, sym_operator_name, STATE(1858), 1, sym_qualified_identifier, STATE(1859), 1, sym_dependent_identifier, STATE(1860), 1, sym_destructor_name, STATE(1862), 1, sym_template_function, STATE(2163), 1, sym_template_type, STATE(2164), 1, sym_dependent_type_identifier, STATE(2415), 1, sym_qualified_type_identifier, STATE(3525), 1, sym__scope_resolution, STATE(4536), 1, sym_qualified_operator_cast_identifier, STATE(4545), 1, sym_operator_cast, [125576] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5880), 1, anon_sym_LBRACE, STATE(2449), 1, sym_enumerator_list, ACTIONS(3513), 2, anon_sym_AMP, anon_sym_const, ACTIONS(3511), 12, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_GT2, [125604] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3410), 1, anon_sym_LBRACE, ACTIONS(3517), 2, anon_sym_AMP, anon_sym_const, ACTIONS(3515), 13, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_GT2, [125630] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5876), 1, anon_sym_LBRACE, STATE(2073), 1, sym_enumerator_list, ACTIONS(3509), 2, anon_sym_AMP, anon_sym_const, ACTIONS(3507), 12, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, [125658] = 17, ACTIONS(3), 1, sym_comment, ACTIONS(117), 1, anon_sym_operator, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(2362), 1, anon_sym_COLON_COLON, ACTIONS(5920), 1, sym_identifier, ACTIONS(5922), 1, anon_sym_template, STATE(1857), 1, sym_operator_name, STATE(1858), 1, sym_qualified_identifier, STATE(1859), 1, sym_dependent_identifier, STATE(1860), 1, sym_destructor_name, STATE(1862), 1, sym_template_function, STATE(2163), 1, sym_template_type, STATE(2164), 1, sym_dependent_type_identifier, STATE(2165), 1, sym_qualified_type_identifier, STATE(3529), 1, sym__scope_resolution, STATE(4536), 1, sym_qualified_operator_cast_identifier, STATE(4545), 1, sym_operator_cast, [125710] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5876), 1, anon_sym_LBRACE, STATE(2085), 1, sym_enumerator_list, ACTIONS(3513), 2, anon_sym_AMP, anon_sym_const, ACTIONS(3511), 12, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, [125738] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5880), 1, anon_sym_LBRACE, STATE(2468), 1, sym_enumerator_list, ACTIONS(3509), 2, anon_sym_AMP, anon_sym_const, ACTIONS(3507), 12, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_GT2, [125766] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4371), 1, anon_sym_COLON_COLON, ACTIONS(5840), 1, sym_identifier, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3699), 1, sym_template_type, STATE(3934), 1, sym_field_declaration_list, STATE(4029), 1, sym__scope_resolution, STATE(4150), 1, sym_virtual_specifier, STATE(4621), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3624), 2, sym__class_name, sym_qualified_type_identifier, [125811] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(5561), 1, anon_sym_STAR, ACTIONS(5563), 1, anon_sym_AMP_AMP, ACTIONS(5565), 1, anon_sym_AMP, STATE(3280), 1, sym_parameter_list, STATE(4094), 1, sym__abstract_declarator, ACTIONS(4864), 3, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [125848] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5870), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2291), 1, sym_field_declaration_list, STATE(4049), 1, sym__scope_resolution, STATE(4291), 1, sym_virtual_specifier, STATE(4967), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2452), 2, sym__class_name, sym_qualified_type_identifier, [125893] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2277), 1, sym_field_declaration_list, STATE(4014), 1, sym__scope_resolution, STATE(4337), 1, sym_virtual_specifier, STATE(4950), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2237), 2, sym__class_name, sym_qualified_type_identifier, [125938] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(2655), 1, anon_sym_STAR, ACTIONS(2657), 1, anon_sym_AMP_AMP, ACTIONS(2659), 1, anon_sym_AMP, ACTIONS(5451), 1, anon_sym_LBRACK, STATE(3264), 1, sym_parameter_list, STATE(4092), 1, sym__abstract_declarator, ACTIONS(4277), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [125975] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(5856), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2127), 1, sym_field_declaration_list, STATE(4023), 1, sym__scope_resolution, STATE(4188), 1, sym_virtual_specifier, STATE(4789), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1767), 2, sym__class_name, sym_qualified_type_identifier, [126020] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4753), 1, anon_sym_COLON_COLON, ACTIONS(5836), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2465), 1, sym_field_declaration_list, STATE(4033), 1, sym__scope_resolution, STATE(4321), 1, sym_virtual_specifier, STATE(4992), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1977), 2, sym__class_name, sym_qualified_type_identifier, [126065] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4753), 1, anon_sym_COLON_COLON, ACTIONS(5836), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2462), 1, sym_field_declaration_list, STATE(4033), 1, sym__scope_resolution, STATE(4326), 1, sym_virtual_specifier, STATE(5016), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1963), 2, sym__class_name, sym_qualified_type_identifier, [126110] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(5868), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2227), 1, sym_field_declaration_list, STATE(4042), 1, sym__scope_resolution, STATE(4241), 1, sym_virtual_specifier, STATE(4874), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1784), 2, sym__class_name, sym_qualified_type_identifier, [126155] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(5868), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2223), 1, sym_field_declaration_list, STATE(4042), 1, sym__scope_resolution, STATE(4246), 1, sym_virtual_specifier, STATE(4889), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1783), 2, sym__class_name, sym_qualified_type_identifier, [126200] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4753), 1, anon_sym_COLON_COLON, ACTIONS(5836), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2458), 1, sym_field_declaration_list, STATE(4033), 1, sym__scope_resolution, STATE(4331), 1, sym_virtual_specifier, STATE(5025), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1957), 2, sym__class_name, sym_qualified_type_identifier, [126245] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5858), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2323), 1, sym_field_declaration_list, STATE(4041), 1, sym__scope_resolution, STATE(4264), 1, sym_virtual_specifier, STATE(4921), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3764), 2, sym__class_name, sym_qualified_type_identifier, [126290] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4753), 1, anon_sym_COLON_COLON, ACTIONS(5836), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2482), 1, sym_field_declaration_list, STATE(4033), 1, sym__scope_resolution, STATE(4284), 1, sym_virtual_specifier, STATE(4946), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1972), 2, sym__class_name, sym_qualified_type_identifier, [126335] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(5868), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2215), 1, sym_field_declaration_list, STATE(4042), 1, sym__scope_resolution, STATE(4253), 1, sym_virtual_specifier, STATE(4909), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1781), 2, sym__class_name, sym_qualified_type_identifier, [126380] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2323), 1, sym_field_declaration_list, STATE(4014), 1, sym__scope_resolution, STATE(4264), 1, sym_virtual_specifier, STATE(4921), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2235), 2, sym__class_name, sym_qualified_type_identifier, [126425] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(5461), 1, anon_sym_STAR, ACTIONS(5463), 1, anon_sym_AMP_AMP, ACTIONS(5465), 1, anon_sym_AMP, STATE(3273), 1, sym_parameter_list, STATE(4083), 1, sym__abstract_declarator, ACTIONS(4864), 3, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_GT2, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [126462] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(5461), 1, anon_sym_STAR, ACTIONS(5463), 1, anon_sym_AMP_AMP, ACTIONS(5465), 1, anon_sym_AMP, STATE(3273), 1, sym_parameter_list, STATE(4080), 1, sym__abstract_declarator, ACTIONS(5002), 3, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_GT2, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [126499] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4371), 1, anon_sym_COLON_COLON, ACTIONS(5840), 1, sym_identifier, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3699), 1, sym_template_type, STATE(3959), 1, sym_field_declaration_list, STATE(4029), 1, sym__scope_resolution, STATE(4159), 1, sym_virtual_specifier, STATE(4626), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3641), 2, sym__class_name, sym_qualified_type_identifier, [126544] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4371), 1, anon_sym_COLON_COLON, ACTIONS(5840), 1, sym_identifier, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3699), 1, sym_template_type, STATE(3918), 1, sym_field_declaration_list, STATE(4029), 1, sym__scope_resolution, STATE(4142), 1, sym_virtual_specifier, STATE(4618), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3652), 2, sym__class_name, sym_qualified_type_identifier, [126589] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2563), 1, sym_field_declaration_list, STATE(4035), 1, sym__scope_resolution, STATE(4161), 1, sym_virtual_specifier, STATE(4709), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2381), 2, sym__class_name, sym_qualified_type_identifier, [126634] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4371), 1, anon_sym_COLON_COLON, ACTIONS(5840), 1, sym_identifier, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3699), 1, sym_template_type, STATE(3923), 1, sym_field_declaration_list, STATE(4029), 1, sym__scope_resolution, STATE(4169), 1, sym_virtual_specifier, STATE(4635), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3632), 2, sym__class_name, sym_qualified_type_identifier, [126679] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(5868), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2127), 1, sym_field_declaration_list, STATE(4042), 1, sym__scope_resolution, STATE(4188), 1, sym_virtual_specifier, STATE(4789), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1767), 2, sym__class_name, sym_qualified_type_identifier, [126724] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4371), 1, anon_sym_COLON_COLON, ACTIONS(5840), 1, sym_identifier, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3699), 1, sym_template_type, STATE(3974), 1, sym_field_declaration_list, STATE(4029), 1, sym__scope_resolution, STATE(4171), 1, sym_virtual_specifier, STATE(4638), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3623), 2, sym__class_name, sym_qualified_type_identifier, [126769] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2587), 1, sym_field_declaration_list, STATE(4035), 1, sym__scope_resolution, STATE(4165), 1, sym_virtual_specifier, STATE(4722), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2351), 2, sym__class_name, sym_qualified_type_identifier, [126814] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4371), 1, anon_sym_COLON_COLON, ACTIONS(5840), 1, sym_identifier, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3699), 1, sym_template_type, STATE(3991), 1, sym_field_declaration_list, STATE(4029), 1, sym__scope_resolution, STATE(4177), 1, sym_virtual_specifier, STATE(4646), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3648), 2, sym__class_name, sym_qualified_type_identifier, [126859] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2600), 1, sym_field_declaration_list, STATE(4035), 1, sym__scope_resolution, STATE(4252), 1, sym_virtual_specifier, STATE(4775), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2388), 2, sym__class_name, sym_qualified_type_identifier, [126904] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3430), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4671), 1, anon_sym_COLON_COLON, ACTIONS(5838), 1, sym_identifier, STATE(1759), 1, sym_template_type, STATE(2017), 1, sym_field_declaration_list, STATE(4048), 1, sym__scope_resolution, STATE(4295), 1, sym_virtual_specifier, STATE(4862), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1682), 2, sym__class_name, sym_qualified_type_identifier, [126949] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2573), 1, sym_field_declaration_list, STATE(4035), 1, sym__scope_resolution, STATE(4203), 1, sym_virtual_specifier, STATE(4652), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2387), 2, sym__class_name, sym_qualified_type_identifier, [126994] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2288), 1, sym_field_declaration_list, STATE(4014), 1, sym__scope_resolution, STATE(4342), 1, sym_virtual_specifier, STATE(4955), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2217), 2, sym__class_name, sym_qualified_type_identifier, [127039] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3430), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4671), 1, anon_sym_COLON_COLON, ACTIONS(5838), 1, sym_identifier, STATE(1759), 1, sym_template_type, STATE(2019), 1, sym_field_declaration_list, STATE(4048), 1, sym__scope_resolution, STATE(4287), 1, sym_virtual_specifier, STATE(4857), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1710), 2, sym__class_name, sym_qualified_type_identifier, [127084] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(5868), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2168), 1, sym_field_declaration_list, STATE(4042), 1, sym__scope_resolution, STATE(4197), 1, sym_virtual_specifier, STATE(4817), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1748), 2, sym__class_name, sym_qualified_type_identifier, [127129] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3430), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4671), 1, anon_sym_COLON_COLON, ACTIONS(5838), 1, sym_identifier, STATE(1759), 1, sym_template_type, STATE(2015), 1, sym_field_declaration_list, STATE(4048), 1, sym__scope_resolution, STATE(4303), 1, sym_virtual_specifier, STATE(4871), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1699), 2, sym__class_name, sym_qualified_type_identifier, [127174] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3430), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4671), 1, anon_sym_COLON_COLON, ACTIONS(5838), 1, sym_identifier, STATE(1759), 1, sym_template_type, STATE(2031), 1, sym_field_declaration_list, STATE(4048), 1, sym__scope_resolution, STATE(4262), 1, sym_virtual_specifier, STATE(4813), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1700), 2, sym__class_name, sym_qualified_type_identifier, [127219] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3430), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4671), 1, anon_sym_COLON_COLON, ACTIONS(5838), 1, sym_identifier, STATE(1759), 1, sym_template_type, STATE(2034), 1, sym_field_declaration_list, STATE(4048), 1, sym__scope_resolution, STATE(4257), 1, sym_virtual_specifier, STATE(4688), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1681), 2, sym__class_name, sym_qualified_type_identifier, [127264] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3430), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4671), 1, anon_sym_COLON_COLON, ACTIONS(5838), 1, sym_identifier, STATE(1759), 1, sym_template_type, STATE(2028), 1, sym_field_declaration_list, STATE(4048), 1, sym__scope_resolution, STATE(4265), 1, sym_virtual_specifier, STATE(4821), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1703), 2, sym__class_name, sym_qualified_type_identifier, [127309] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(5868), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2137), 1, sym_field_declaration_list, STATE(4042), 1, sym__scope_resolution, STATE(4194), 1, sym_virtual_specifier, STATE(4809), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1789), 2, sym__class_name, sym_qualified_type_identifier, [127354] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(5866), 1, sym_identifier, STATE(1674), 1, sym_template_type, STATE(1764), 1, sym_field_declaration_list, STATE(4019), 1, sym__scope_resolution, STATE(4293), 1, sym_virtual_specifier, STATE(4858), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1656), 2, sym__class_name, sym_qualified_type_identifier, [127399] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5870), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2285), 1, sym_field_declaration_list, STATE(4049), 1, sym__scope_resolution, STATE(4278), 1, sym_virtual_specifier, STATE(4940), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2473), 2, sym__class_name, sym_qualified_type_identifier, [127444] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(2655), 1, anon_sym_STAR, ACTIONS(2657), 1, anon_sym_AMP_AMP, ACTIONS(2659), 1, anon_sym_AMP, ACTIONS(5451), 1, anon_sym_LBRACK, STATE(3264), 1, sym_parameter_list, STATE(4078), 1, sym__abstract_declarator, ACTIONS(4864), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [127481] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(2655), 1, anon_sym_STAR, ACTIONS(2657), 1, anon_sym_AMP_AMP, ACTIONS(2659), 1, anon_sym_AMP, ACTIONS(5451), 1, anon_sym_LBRACK, STATE(3264), 1, sym_parameter_list, STATE(4071), 1, sym__abstract_declarator, ACTIONS(5002), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [127518] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(117), 1, anon_sym_operator, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(3102), 1, anon_sym_COLON_COLON, ACTIONS(5924), 1, sym_identifier, ACTIONS(5926), 1, anon_sym_template, STATE(1857), 1, sym_operator_name, STATE(1858), 1, sym_qualified_identifier, STATE(1859), 1, sym_dependent_identifier, STATE(1860), 1, sym_destructor_name, STATE(1862), 1, sym_template_function, STATE(3572), 1, sym__scope_resolution, STATE(4536), 1, sym_qualified_operator_cast_identifier, STATE(4545), 1, sym_operator_cast, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [127565] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4753), 1, anon_sym_COLON_COLON, ACTIONS(5836), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2479), 1, sym_field_declaration_list, STATE(4033), 1, sym__scope_resolution, STATE(4288), 1, sym_virtual_specifier, STATE(4959), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1956), 2, sym__class_name, sym_qualified_type_identifier, [127610] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(5461), 1, anon_sym_STAR, ACTIONS(5463), 1, anon_sym_AMP_AMP, ACTIONS(5465), 1, anon_sym_AMP, STATE(3273), 1, sym_parameter_list, STATE(4084), 1, sym__abstract_declarator, ACTIONS(4277), 3, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_GT2, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [127647] = 5, ACTIONS(3), 1, sym_comment, STATE(3575), 1, aux_sym_sized_type_specifier_repeat1, ACTIONS(3271), 3, anon_sym_AMP, sym_primitive_type, sym_identifier, ACTIONS(5928), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(3273), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [127674] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5858), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2277), 1, sym_field_declaration_list, STATE(4041), 1, sym__scope_resolution, STATE(4337), 1, sym_virtual_specifier, STATE(4950), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3778), 2, sym__class_name, sym_qualified_type_identifier, [127719] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(5856), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2168), 1, sym_field_declaration_list, STATE(4023), 1, sym__scope_resolution, STATE(4197), 1, sym_virtual_specifier, STATE(4817), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1748), 2, sym__class_name, sym_qualified_type_identifier, [127764] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3282), 1, anon_sym_AMP, ACTIONS(5931), 1, sym_identifier, ACTIONS(5935), 1, sym_primitive_type, STATE(3575), 1, aux_sym_sized_type_specifier_repeat1, ACTIONS(5933), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, ACTIONS(3280), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [127795] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(5561), 1, anon_sym_STAR, ACTIONS(5563), 1, anon_sym_AMP_AMP, ACTIONS(5565), 1, anon_sym_AMP, STATE(3280), 1, sym_parameter_list, STATE(4096), 1, sym__abstract_declarator, ACTIONS(5002), 3, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [127832] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5870), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2323), 1, sym_field_declaration_list, STATE(4049), 1, sym__scope_resolution, STATE(4264), 1, sym_virtual_specifier, STATE(4921), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2474), 2, sym__class_name, sym_qualified_type_identifier, [127877] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2277), 1, sym_field_declaration_list, STATE(4035), 1, sym__scope_resolution, STATE(4337), 1, sym_virtual_specifier, STATE(4950), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2398), 2, sym__class_name, sym_qualified_type_identifier, [127922] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2288), 1, sym_field_declaration_list, STATE(4035), 1, sym__scope_resolution, STATE(4342), 1, sym_virtual_specifier, STATE(4955), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2397), 2, sym__class_name, sym_qualified_type_identifier, [127967] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2308), 1, sym_field_declaration_list, STATE(4014), 1, sym__scope_resolution, STATE(4345), 1, sym_virtual_specifier, STATE(4960), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2218), 2, sym__class_name, sym_qualified_type_identifier, [128012] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2308), 1, sym_field_declaration_list, STATE(4035), 1, sym__scope_resolution, STATE(4345), 1, sym_virtual_specifier, STATE(4960), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2396), 2, sym__class_name, sym_qualified_type_identifier, [128057] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4367), 1, anon_sym_COLON_COLON, ACTIONS(5834), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2458), 1, sym_field_declaration_list, STATE(4016), 1, sym__scope_resolution, STATE(4331), 1, sym_virtual_specifier, STATE(5025), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1957), 2, sym__class_name, sym_qualified_type_identifier, [128102] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2285), 1, sym_field_declaration_list, STATE(4014), 1, sym__scope_resolution, STATE(4278), 1, sym_virtual_specifier, STATE(4940), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2072), 2, sym__class_name, sym_qualified_type_identifier, [128147] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(5866), 1, sym_identifier, STATE(1674), 1, sym_template_type, STATE(1765), 1, sym_field_declaration_list, STATE(4019), 1, sym__scope_resolution, STATE(4283), 1, sym_virtual_specifier, STATE(4853), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1657), 2, sym__class_name, sym_qualified_type_identifier, [128192] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4367), 1, anon_sym_COLON_COLON, ACTIONS(5834), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2462), 1, sym_field_declaration_list, STATE(4016), 1, sym__scope_resolution, STATE(4326), 1, sym_virtual_specifier, STATE(5016), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1963), 2, sym__class_name, sym_qualified_type_identifier, [128237] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2323), 1, sym_field_declaration_list, STATE(4015), 1, sym__scope_resolution, STATE(4264), 1, sym_virtual_specifier, STATE(4921), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2235), 2, sym__class_name, sym_qualified_type_identifier, [128282] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(5856), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2227), 1, sym_field_declaration_list, STATE(4023), 1, sym__scope_resolution, STATE(4241), 1, sym_virtual_specifier, STATE(4874), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1784), 2, sym__class_name, sym_qualified_type_identifier, [128327] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(5856), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2223), 1, sym_field_declaration_list, STATE(4023), 1, sym__scope_resolution, STATE(4246), 1, sym_virtual_specifier, STATE(4889), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1783), 2, sym__class_name, sym_qualified_type_identifier, [128372] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2291), 1, sym_field_declaration_list, STATE(4035), 1, sym__scope_resolution, STATE(4291), 1, sym_virtual_specifier, STATE(4967), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2452), 2, sym__class_name, sym_qualified_type_identifier, [128417] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2285), 1, sym_field_declaration_list, STATE(4015), 1, sym__scope_resolution, STATE(4278), 1, sym_virtual_specifier, STATE(4940), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2072), 2, sym__class_name, sym_qualified_type_identifier, [128462] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(5866), 1, sym_identifier, STATE(1674), 1, sym_template_type, STATE(1775), 1, sym_field_declaration_list, STATE(4019), 1, sym__scope_resolution, STATE(4235), 1, sym_virtual_specifier, STATE(4770), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1651), 2, sym__class_name, sym_qualified_type_identifier, [128507] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2291), 1, sym_field_declaration_list, STATE(4015), 1, sym__scope_resolution, STATE(4291), 1, sym_virtual_specifier, STATE(4967), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2233), 2, sym__class_name, sym_qualified_type_identifier, [128552] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(5856), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2215), 1, sym_field_declaration_list, STATE(4023), 1, sym__scope_resolution, STATE(4253), 1, sym_virtual_specifier, STATE(4909), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1781), 2, sym__class_name, sym_qualified_type_identifier, [128597] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4367), 1, anon_sym_COLON_COLON, ACTIONS(5834), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2465), 1, sym_field_declaration_list, STATE(4016), 1, sym__scope_resolution, STATE(4321), 1, sym_virtual_specifier, STATE(4992), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1977), 2, sym__class_name, sym_qualified_type_identifier, [128642] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3623), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(5856), 1, sym_identifier, STATE(1947), 1, sym_template_type, STATE(2137), 1, sym_field_declaration_list, STATE(4023), 1, sym__scope_resolution, STATE(4194), 1, sym_virtual_specifier, STATE(4809), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1789), 2, sym__class_name, sym_qualified_type_identifier, [128687] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4753), 1, anon_sym_COLON_COLON, ACTIONS(5836), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2484), 1, sym_field_declaration_list, STATE(4033), 1, sym__scope_resolution, STATE(4280), 1, sym_virtual_specifier, STATE(4941), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1970), 2, sym__class_name, sym_qualified_type_identifier, [128732] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2291), 1, sym_field_declaration_list, STATE(4014), 1, sym__scope_resolution, STATE(4291), 1, sym_virtual_specifier, STATE(4967), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2233), 2, sym__class_name, sym_qualified_type_identifier, [128777] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(5561), 1, anon_sym_STAR, ACTIONS(5563), 1, anon_sym_AMP_AMP, ACTIONS(5565), 1, anon_sym_AMP, STATE(3280), 1, sym_parameter_list, STATE(4104), 1, sym__abstract_declarator, ACTIONS(4277), 3, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [128814] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2308), 1, sym_field_declaration_list, STATE(4015), 1, sym__scope_resolution, STATE(4345), 1, sym_virtual_specifier, STATE(4960), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2218), 2, sym__class_name, sym_qualified_type_identifier, [128859] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2288), 1, sym_field_declaration_list, STATE(4015), 1, sym__scope_resolution, STATE(4342), 1, sym_virtual_specifier, STATE(4955), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2217), 2, sym__class_name, sym_qualified_type_identifier, [128904] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2277), 1, sym_field_declaration_list, STATE(4015), 1, sym__scope_resolution, STATE(4337), 1, sym_virtual_specifier, STATE(4950), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2237), 2, sym__class_name, sym_qualified_type_identifier, [128949] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(5866), 1, sym_identifier, STATE(1674), 1, sym_template_type, STATE(1792), 1, sym_field_declaration_list, STATE(4019), 1, sym__scope_resolution, STATE(4227), 1, sym_virtual_specifier, STATE(4754), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1650), 2, sym__class_name, sym_qualified_type_identifier, [128994] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5858), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2308), 1, sym_field_declaration_list, STATE(4041), 1, sym__scope_resolution, STATE(4345), 1, sym_virtual_specifier, STATE(4960), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3768), 2, sym__class_name, sym_qualified_type_identifier, [129039] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5858), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2288), 1, sym_field_declaration_list, STATE(4041), 1, sym__scope_resolution, STATE(4342), 1, sym_virtual_specifier, STATE(4955), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3772), 2, sym__class_name, sym_qualified_type_identifier, [129084] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5870), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2277), 1, sym_field_declaration_list, STATE(4049), 1, sym__scope_resolution, STATE(4337), 1, sym_virtual_specifier, STATE(4950), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2398), 2, sym__class_name, sym_qualified_type_identifier, [129129] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5937), 1, anon_sym_LPAREN2, STATE(2205), 1, sym_argument_list, ACTIONS(3517), 2, anon_sym_AMP, anon_sym_const, ACTIONS(3515), 11, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, anon_sym_GT2, [129156] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(5866), 1, sym_identifier, STATE(1674), 1, sym_template_type, STATE(1798), 1, sym_field_declaration_list, STATE(4019), 1, sym__scope_resolution, STATE(4222), 1, sym_virtual_specifier, STATE(4735), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1648), 2, sym__class_name, sym_qualified_type_identifier, [129201] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5870), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2288), 1, sym_field_declaration_list, STATE(4049), 1, sym__scope_resolution, STATE(4342), 1, sym_virtual_specifier, STATE(4955), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2397), 2, sym__class_name, sym_qualified_type_identifier, [129246] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5870), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2308), 1, sym_field_declaration_list, STATE(4049), 1, sym__scope_resolution, STATE(4345), 1, sym_virtual_specifier, STATE(4960), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2396), 2, sym__class_name, sym_qualified_type_identifier, [129291] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4367), 1, anon_sym_COLON_COLON, ACTIONS(5834), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2484), 1, sym_field_declaration_list, STATE(4016), 1, sym__scope_resolution, STATE(4280), 1, sym_virtual_specifier, STATE(4941), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1970), 2, sym__class_name, sym_qualified_type_identifier, [129336] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5858), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2291), 1, sym_field_declaration_list, STATE(4041), 1, sym__scope_resolution, STATE(4291), 1, sym_virtual_specifier, STATE(4967), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3720), 2, sym__class_name, sym_qualified_type_identifier, [129381] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4367), 1, anon_sym_COLON_COLON, ACTIONS(5834), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2482), 1, sym_field_declaration_list, STATE(4016), 1, sym__scope_resolution, STATE(4284), 1, sym_virtual_specifier, STATE(4946), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1972), 2, sym__class_name, sym_qualified_type_identifier, [129426] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2538), 1, sym_field_declaration_list, STATE(4035), 1, sym__scope_resolution, STATE(4151), 1, sym_virtual_specifier, STATE(4691), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2384), 2, sym__class_name, sym_qualified_type_identifier, [129471] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4091), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4367), 1, anon_sym_COLON_COLON, ACTIONS(5834), 1, sym_identifier, STATE(2148), 1, sym_template_type, STATE(2479), 1, sym_field_declaration_list, STATE(4016), 1, sym__scope_resolution, STATE(4288), 1, sym_virtual_specifier, STATE(4959), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1956), 2, sym__class_name, sym_qualified_type_identifier, [129516] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(5866), 1, sym_identifier, STATE(1674), 1, sym_template_type, STATE(1749), 1, sym_field_declaration_list, STATE(4019), 1, sym__scope_resolution, STATE(4301), 1, sym_virtual_specifier, STATE(4863), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(1655), 2, sym__class_name, sym_qualified_type_identifier, [129561] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2323), 1, sym_field_declaration_list, STATE(4035), 1, sym__scope_resolution, STATE(4264), 1, sym_virtual_specifier, STATE(4921), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2474), 2, sym__class_name, sym_qualified_type_identifier, [129606] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2548), 1, sym_field_declaration_list, STATE(4035), 1, sym__scope_resolution, STATE(4156), 1, sym_virtual_specifier, STATE(4704), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2382), 2, sym__class_name, sym_qualified_type_identifier, [129651] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2285), 1, sym_field_declaration_list, STATE(4035), 1, sym__scope_resolution, STATE(4278), 1, sym_virtual_specifier, STATE(4940), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(2473), 2, sym__class_name, sym_qualified_type_identifier, [129696] = 14, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4170), 1, anon_sym_LBRACE, ACTIONS(4172), 1, anon_sym_COLON, ACTIONS(5846), 1, sym_identifier, ACTIONS(5858), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2285), 1, sym_field_declaration_list, STATE(4041), 1, sym__scope_resolution, STATE(4278), 1, sym_virtual_specifier, STATE(4940), 1, sym_base_class_clause, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, STATE(3765), 2, sym__class_name, sym_qualified_type_identifier, [129741] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3346), 1, anon_sym_AMP, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3933), 1, sym_field_declaration_list, STATE(4147), 1, sym_virtual_specifier, STATE(4620), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3344), 6, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_EQ, [129775] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3326), 1, anon_sym_AMP, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3982), 1, sym_field_declaration_list, STATE(4176), 1, sym_virtual_specifier, STATE(4643), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3324), 6, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_EQ, [129809] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(2655), 1, anon_sym_STAR, ACTIONS(2657), 1, anon_sym_AMP_AMP, ACTIONS(2659), 1, anon_sym_AMP, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(5940), 1, anon_sym_LBRACE, STATE(3104), 1, sym_compound_statement, STATE(3371), 1, sym_parameter_list, STATE(4324), 1, sym_abstract_function_declarator, STATE(4558), 1, sym__abstract_declarator, STATE(3890), 4, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [129849] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(5908), 1, anon_sym_TILDE, ACTIONS(5942), 1, sym_identifier, ACTIONS(5944), 1, anon_sym_COLON_COLON, ACTIONS(5946), 1, anon_sym_template, ACTIONS(5948), 1, anon_sym_operator, STATE(1857), 1, sym_operator_name, STATE(1858), 1, sym_qualified_identifier, STATE(1859), 1, sym_dependent_identifier, STATE(1860), 1, sym_destructor_name, STATE(1862), 1, sym_template_function, STATE(2163), 1, sym_template_type, STATE(2164), 1, sym_dependent_type_identifier, STATE(2165), 1, sym_qualified_type_identifier, STATE(3626), 1, sym__scope_resolution, [129895] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(5952), 1, anon_sym_LPAREN2, ACTIONS(5954), 1, anon_sym_SEMI, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(5958), 1, anon_sym_EQ, ACTIONS(5960), 1, anon_sym_COLON, STATE(2686), 1, sym_parameter_list, STATE(4396), 1, aux_sym_declaration_repeat1, STATE(3816), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, STATE(5048), 2, sym_argument_list, sym_initializer_list, [129937] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(5952), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(5958), 1, anon_sym_EQ, ACTIONS(5962), 1, anon_sym_SEMI, ACTIONS(5964), 1, anon_sym_LBRACE, STATE(668), 1, sym_compound_statement, STATE(2749), 1, sym_parameter_list, STATE(4448), 1, aux_sym_declaration_repeat1, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, STATE(5048), 2, sym_argument_list, sym_initializer_list, [129979] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(5952), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(5958), 1, anon_sym_EQ, ACTIONS(5966), 1, anon_sym_SEMI, ACTIONS(5968), 1, anon_sym_LBRACE, STATE(795), 1, sym_compound_statement, STATE(2749), 1, sym_parameter_list, STATE(4533), 1, aux_sym_declaration_repeat1, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, STATE(5048), 2, sym_argument_list, sym_initializer_list, [130021] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(5970), 1, sym_identifier, ACTIONS(5972), 1, anon_sym_TILDE, ACTIONS(5974), 1, anon_sym_COLON_COLON, ACTIONS(5976), 1, anon_sym_template, ACTIONS(5978), 1, anon_sym_operator, STATE(1894), 1, sym_operator_name, STATE(1896), 1, sym_qualified_identifier, STATE(1901), 1, sym_dependent_identifier, STATE(1902), 1, sym_destructor_name, STATE(1905), 1, sym_template_function, STATE(2163), 1, sym_template_type, STATE(2164), 1, sym_dependent_type_identifier, STATE(2165), 1, sym_qualified_type_identifier, STATE(3630), 1, sym__scope_resolution, [130067] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(5972), 1, anon_sym_TILDE, ACTIONS(5978), 1, anon_sym_operator, ACTIONS(5980), 1, sym_identifier, ACTIONS(5982), 1, anon_sym_COLON_COLON, ACTIONS(5984), 1, anon_sym_template, STATE(1894), 1, sym_operator_name, STATE(1895), 1, sym_qualified_type_identifier, STATE(1896), 1, sym_qualified_identifier, STATE(1901), 1, sym_dependent_identifier, STATE(1902), 1, sym_destructor_name, STATE(1905), 1, sym_template_function, STATE(1933), 1, sym_dependent_type_identifier, STATE(1945), 1, sym_template_type, STATE(3631), 1, sym__scope_resolution, [130113] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3350), 1, anon_sym_AMP, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3941), 1, sym_field_declaration_list, STATE(4155), 1, sym_virtual_specifier, STATE(4625), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3348), 6, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_EQ, [130147] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(5952), 1, anon_sym_LPAREN2, ACTIONS(5954), 1, anon_sym_SEMI, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(5958), 1, anon_sym_EQ, ACTIONS(5986), 1, anon_sym_COLON, STATE(2686), 1, sym_parameter_list, STATE(4396), 1, aux_sym_declaration_repeat1, STATE(3816), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, STATE(5048), 2, sym_argument_list, sym_initializer_list, [130189] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(5908), 1, anon_sym_TILDE, ACTIONS(5948), 1, anon_sym_operator, ACTIONS(5988), 1, sym_identifier, ACTIONS(5990), 1, anon_sym_COLON_COLON, ACTIONS(5992), 1, anon_sym_template, STATE(1857), 1, sym_operator_name, STATE(1858), 1, sym_qualified_identifier, STATE(1859), 1, sym_dependent_identifier, STATE(1860), 1, sym_destructor_name, STATE(1862), 1, sym_template_function, STATE(1895), 1, sym_qualified_type_identifier, STATE(1933), 1, sym_dependent_type_identifier, STATE(1945), 1, sym_template_type, STATE(3634), 1, sym__scope_resolution, [130235] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(1792), 1, anon_sym_LBRACE, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(2655), 1, anon_sym_STAR, ACTIONS(2657), 1, anon_sym_AMP_AMP, ACTIONS(2659), 1, anon_sym_AMP, ACTIONS(5451), 1, anon_sym_LBRACK, STATE(2643), 1, sym_compound_statement, STATE(3371), 1, sym_parameter_list, STATE(4212), 1, sym_abstract_function_declarator, STATE(4558), 1, sym__abstract_declarator, STATE(3890), 4, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [130275] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5888), 1, anon_sym_LBRACE, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(5952), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(5958), 1, anon_sym_EQ, ACTIONS(5994), 1, anon_sym_SEMI, STATE(1618), 1, sym_compound_statement, STATE(2749), 1, sym_parameter_list, STATE(4466), 1, aux_sym_declaration_repeat1, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, STATE(5048), 2, sym_argument_list, sym_initializer_list, [130317] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(2539), 1, anon_sym_COLON_COLON, ACTIONS(5996), 1, sym_identifier, ACTIONS(5998), 1, anon_sym_template, STATE(1857), 1, sym_operator_name, STATE(1858), 1, sym_qualified_identifier, STATE(1859), 1, sym_dependent_identifier, STATE(1860), 1, sym_destructor_name, STATE(1862), 1, sym_template_function, STATE(2163), 1, sym_template_type, STATE(2164), 1, sym_dependent_type_identifier, STATE(2165), 1, sym_qualified_type_identifier, STATE(3637), 1, sym__scope_resolution, [130363] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(2655), 1, anon_sym_STAR, ACTIONS(2657), 1, anon_sym_AMP_AMP, ACTIONS(2659), 1, anon_sym_AMP, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(6000), 1, anon_sym_LBRACE, STATE(2254), 1, sym_compound_statement, STATE(3371), 1, sym_parameter_list, STATE(4208), 1, sym_abstract_function_declarator, STATE(4558), 1, sym__abstract_declarator, STATE(3890), 4, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [130403] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(5952), 1, anon_sym_LPAREN2, ACTIONS(5954), 1, anon_sym_SEMI, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(5958), 1, anon_sym_EQ, ACTIONS(6002), 1, anon_sym_COLON, STATE(2686), 1, sym_parameter_list, STATE(4396), 1, aux_sym_declaration_repeat1, STATE(3816), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, STATE(5048), 2, sym_argument_list, sym_initializer_list, [130445] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(6004), 1, anon_sym_LT, STATE(3713), 1, sym_template_argument_list, ACTIONS(2991), 2, anon_sym_AMP, anon_sym_COLON, ACTIONS(2998), 9, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_final, anon_sym_override, [130473] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3312), 1, anon_sym_AMP, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3970), 1, sym_field_declaration_list, STATE(4179), 1, sym_virtual_specifier, STATE(4647), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3310), 6, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_EQ, [130507] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(5952), 1, anon_sym_LPAREN2, ACTIONS(5954), 1, anon_sym_SEMI, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(5958), 1, anon_sym_EQ, ACTIONS(6006), 1, anon_sym_COLON, STATE(2686), 1, sym_parameter_list, STATE(4396), 1, aux_sym_declaration_repeat1, STATE(3816), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, STATE(5048), 2, sym_argument_list, sym_initializer_list, [130549] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(6004), 1, anon_sym_LT, STATE(3713), 1, sym_template_argument_list, ACTIONS(3371), 2, anon_sym_AMP, anon_sym_COLON, ACTIONS(2979), 9, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_final, anon_sym_override, [130577] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(2494), 1, anon_sym_COLON_COLON, ACTIONS(6008), 1, sym_identifier, ACTIONS(6010), 1, anon_sym_template, STATE(1857), 1, sym_operator_name, STATE(1858), 1, sym_qualified_identifier, STATE(1859), 1, sym_dependent_identifier, STATE(1860), 1, sym_destructor_name, STATE(1862), 1, sym_template_function, STATE(2163), 1, sym_template_type, STATE(2164), 1, sym_dependent_type_identifier, STATE(2165), 1, sym_qualified_type_identifier, STATE(3644), 1, sym__scope_resolution, [130623] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(5952), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(5958), 1, anon_sym_EQ, ACTIONS(6012), 1, anon_sym_SEMI, ACTIONS(6014), 1, anon_sym_LBRACE, STATE(735), 1, sym_compound_statement, STATE(2749), 1, sym_parameter_list, STATE(4416), 1, aux_sym_declaration_repeat1, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, STATE(5048), 2, sym_argument_list, sym_initializer_list, [130665] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(5972), 1, anon_sym_TILDE, ACTIONS(5978), 1, anon_sym_operator, ACTIONS(6016), 1, sym_identifier, ACTIONS(6018), 1, anon_sym_COLON_COLON, ACTIONS(6020), 1, anon_sym_template, STATE(1894), 1, sym_operator_name, STATE(1896), 1, sym_qualified_identifier, STATE(1901), 1, sym_dependent_identifier, STATE(1902), 1, sym_destructor_name, STATE(1905), 1, sym_template_function, STATE(2163), 1, sym_template_type, STATE(2164), 1, sym_dependent_type_identifier, STATE(2165), 1, sym_qualified_type_identifier, STATE(3646), 1, sym__scope_resolution, [130711] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(5952), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(5958), 1, anon_sym_EQ, ACTIONS(6022), 1, anon_sym_SEMI, ACTIONS(6024), 1, anon_sym_LBRACE, STATE(391), 1, sym_compound_statement, STATE(2749), 1, sym_parameter_list, STATE(4472), 1, aux_sym_declaration_repeat1, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, STATE(5048), 2, sym_argument_list, sym_initializer_list, [130753] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3342), 1, anon_sym_AMP, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3907), 1, sym_field_declaration_list, STATE(4145), 1, sym_virtual_specifier, STATE(4617), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3340), 6, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_EQ, [130787] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5896), 1, anon_sym_LBRACE, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(5952), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(5958), 1, anon_sym_EQ, ACTIONS(6026), 1, anon_sym_SEMI, STATE(1424), 1, sym_compound_statement, STATE(2749), 1, sym_parameter_list, STATE(4565), 1, aux_sym_declaration_repeat1, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, STATE(5048), 2, sym_argument_list, sym_initializer_list, [130829] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(5952), 1, anon_sym_LPAREN2, ACTIONS(5954), 1, anon_sym_SEMI, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(5958), 1, anon_sym_EQ, ACTIONS(6028), 1, anon_sym_COLON, STATE(2686), 1, sym_parameter_list, STATE(4396), 1, aux_sym_declaration_repeat1, STATE(3816), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, STATE(5048), 2, sym_argument_list, sym_initializer_list, [130871] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(2655), 1, anon_sym_STAR, ACTIONS(2657), 1, anon_sym_AMP_AMP, ACTIONS(2659), 1, anon_sym_AMP, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(6030), 1, anon_sym_LBRACE, STATE(1920), 1, sym_compound_statement, STATE(3371), 1, sym_parameter_list, STATE(4152), 1, sym_abstract_function_declarator, STATE(4558), 1, sym__abstract_declarator, STATE(3890), 4, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [130911] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3330), 1, anon_sym_AMP, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3987), 1, sym_field_declaration_list, STATE(4173), 1, sym_virtual_specifier, STATE(4639), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3328), 6, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_EQ, [130945] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(5952), 1, anon_sym_LPAREN2, ACTIONS(5954), 1, anon_sym_SEMI, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(5958), 1, anon_sym_EQ, ACTIONS(6032), 1, anon_sym_COLON, STATE(2686), 1, sym_parameter_list, STATE(4396), 1, aux_sym_declaration_repeat1, STATE(3816), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, STATE(5048), 2, sym_argument_list, sym_initializer_list, [130987] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3334), 1, anon_sym_AMP, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3909), 1, sym_field_declaration_list, STATE(4167), 1, sym_virtual_specifier, STATE(4634), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3332), 6, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_EQ, [131021] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(5972), 1, anon_sym_TILDE, ACTIONS(5978), 1, anon_sym_operator, ACTIONS(6034), 1, sym_identifier, ACTIONS(6036), 1, anon_sym_COLON_COLON, ACTIONS(6038), 1, anon_sym_template, STATE(1894), 1, sym_operator_name, STATE(1896), 1, sym_qualified_identifier, STATE(1901), 1, sym_dependent_identifier, STATE(1902), 1, sym_destructor_name, STATE(1905), 1, sym_template_function, STATE(2163), 1, sym_template_type, STATE(2164), 1, sym_dependent_type_identifier, STATE(2165), 1, sym_qualified_type_identifier, STATE(3655), 1, sym__scope_resolution, [131067] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3338), 1, anon_sym_AMP, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3910), 1, sym_field_declaration_list, STATE(4170), 1, sym_virtual_specifier, STATE(4636), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3336), 6, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_EQ, [131101] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5902), 1, anon_sym_LBRACE, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(5952), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(5958), 1, anon_sym_EQ, ACTIONS(6040), 1, anon_sym_SEMI, STATE(1554), 1, sym_compound_statement, STATE(2749), 1, sym_parameter_list, STATE(4543), 1, aux_sym_declaration_repeat1, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, STATE(5048), 2, sym_argument_list, sym_initializer_list, [131143] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3322), 1, anon_sym_AMP, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3992), 1, sym_field_declaration_list, STATE(4175), 1, sym_virtual_specifier, STATE(4642), 1, sym_base_class_clause, ACTIONS(3318), 2, anon_sym_final, anon_sym_override, ACTIONS(3320), 6, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACK, anon_sym_EQ, [131177] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(6042), 1, sym_identifier, ACTIONS(6044), 1, anon_sym_TILDE, ACTIONS(6046), 1, anon_sym_COLON_COLON, ACTIONS(6048), 1, anon_sym_template, ACTIONS(6050), 1, anon_sym_operator, STATE(2163), 1, sym_template_type, STATE(2164), 1, sym_dependent_type_identifier, STATE(2165), 1, sym_qualified_type_identifier, STATE(2239), 1, sym_operator_name, STATE(2243), 1, sym_qualified_identifier, STATE(2244), 1, sym_dependent_identifier, STATE(2246), 1, sym_destructor_name, STATE(2248), 1, sym_template_function, STATE(3659), 1, sym__scope_resolution, [131223] = 15, ACTIONS(3), 1, sym_comment, ACTIONS(6044), 1, anon_sym_TILDE, ACTIONS(6050), 1, anon_sym_operator, ACTIONS(6052), 1, sym_identifier, ACTIONS(6054), 1, anon_sym_COLON_COLON, ACTIONS(6056), 1, anon_sym_template, STATE(2172), 1, sym_template_type, STATE(2176), 1, sym_dependent_type_identifier, STATE(2239), 1, sym_operator_name, STATE(2243), 1, sym_qualified_identifier, STATE(2244), 1, sym_dependent_identifier, STATE(2246), 1, sym_destructor_name, STATE(2248), 1, sym_template_function, STATE(2322), 1, sym_qualified_type_identifier, STATE(3660), 1, sym__scope_resolution, [131269] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3927), 1, anon_sym_COLON_COLON, ACTIONS(6058), 1, sym_identifier, ACTIONS(6060), 1, anon_sym_template, STATE(1857), 1, sym_operator_name, STATE(1858), 1, sym_qualified_identifier, STATE(1859), 1, sym_dependent_identifier, STATE(1860), 1, sym_destructor_name, STATE(1862), 1, sym_template_function, STATE(3661), 1, sym__scope_resolution, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [131310] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4105), 1, anon_sym_LT, STATE(3756), 1, sym_template_argument_list, ACTIONS(4817), 2, anon_sym_LBRACK, anon_sym_COLON, ACTIONS(3308), 8, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_GT2, [131337] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(6062), 1, sym_identifier, STATE(2302), 1, aux_sym_sized_type_specifier_repeat1, STATE(4015), 1, sym__scope_resolution, STATE(2263), 2, sym_sized_type_specifier, sym_qualified_type_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2408), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, [131370] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(5952), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(5958), 1, anon_sym_EQ, ACTIONS(6022), 1, anon_sym_SEMI, STATE(2749), 1, sym_parameter_list, STATE(4472), 1, aux_sym_declaration_repeat1, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, STATE(5048), 2, sym_argument_list, sym_initializer_list, [131409] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(5952), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(5958), 1, anon_sym_EQ, ACTIONS(5962), 1, anon_sym_SEMI, STATE(2749), 1, sym_parameter_list, STATE(4448), 1, aux_sym_declaration_repeat1, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, STATE(5048), 2, sym_argument_list, sym_initializer_list, [131448] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3288), 1, anon_sym_COLON_COLON, ACTIONS(5924), 1, sym_identifier, ACTIONS(5926), 1, anon_sym_template, STATE(1857), 1, sym_operator_name, STATE(1858), 1, sym_qualified_identifier, STATE(1859), 1, sym_dependent_identifier, STATE(1860), 1, sym_destructor_name, STATE(1862), 1, sym_template_function, STATE(3666), 1, sym__scope_resolution, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [131489] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(6064), 1, sym_identifier, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(4042), 1, sym__scope_resolution, STATE(2232), 2, sym_sized_type_specifier, sym_qualified_type_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, [131522] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(5952), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(5958), 1, anon_sym_EQ, ACTIONS(6066), 1, anon_sym_SEMI, STATE(2749), 1, sym_parameter_list, STATE(4600), 1, aux_sym_declaration_repeat1, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, STATE(5048), 2, sym_argument_list, sym_initializer_list, [131561] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4753), 1, anon_sym_COLON_COLON, ACTIONS(6068), 1, sym_identifier, STATE(1953), 1, aux_sym_sized_type_specifier_repeat1, STATE(4033), 1, sym__scope_resolution, STATE(2469), 2, sym_sized_type_specifier, sym_qualified_type_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2302), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, [131594] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(4864), 1, anon_sym_LBRACE, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(5677), 1, anon_sym_STAR, ACTIONS(5679), 1, anon_sym_AMP_AMP, ACTIONS(5681), 1, anon_sym_AMP, STATE(3371), 1, sym_parameter_list, STATE(4225), 1, sym__abstract_declarator, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [131629] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4371), 1, anon_sym_COLON_COLON, ACTIONS(6070), 1, sym_identifier, STATE(3578), 1, aux_sym_sized_type_specifier_repeat1, STATE(4029), 1, sym__scope_resolution, STATE(3926), 2, sym_sized_type_specifier, sym_qualified_type_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(4373), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, [131662] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(3243), 1, anon_sym_COLON_COLON, ACTIONS(6072), 1, sym_identifier, ACTIONS(6074), 1, anon_sym_template, STATE(3672), 1, sym__scope_resolution, STATE(3802), 1, sym_template_function, STATE(3804), 1, sym_destructor_name, STATE(3812), 1, sym_dependent_identifier, STATE(3813), 1, sym_qualified_identifier, STATE(3815), 1, sym_operator_name, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [131703] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(6062), 1, sym_identifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(4014), 1, sym__scope_resolution, STATE(2263), 2, sym_sized_type_specifier, sym_qualified_type_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, [131736] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(5952), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(5958), 1, anon_sym_EQ, ACTIONS(5966), 1, anon_sym_SEMI, STATE(2749), 1, sym_parameter_list, STATE(4533), 1, aux_sym_declaration_repeat1, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, STATE(5048), 2, sym_argument_list, sym_initializer_list, [131775] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(4277), 1, anon_sym_LBRACE, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(5677), 1, anon_sym_STAR, ACTIONS(5679), 1, anon_sym_AMP_AMP, ACTIONS(5681), 1, anon_sym_AMP, STATE(3371), 1, sym_parameter_list, STATE(4266), 1, sym__abstract_declarator, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [131810] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(6070), 1, sym_identifier, STATE(1692), 1, aux_sym_sized_type_specifier_repeat1, STATE(4023), 1, sym__scope_resolution, STATE(2232), 2, sym_sized_type_specifier, sym_qualified_type_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(1706), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, [131843] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(6062), 1, sym_identifier, STATE(2210), 1, aux_sym_sized_type_specifier_repeat1, STATE(4015), 1, sym__scope_resolution, STATE(2263), 2, sym_sized_type_specifier, sym_qualified_type_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(59), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, [131876] = 12, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(5952), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(5958), 1, anon_sym_EQ, ACTIONS(6012), 1, anon_sym_SEMI, STATE(2749), 1, sym_parameter_list, STATE(4416), 1, aux_sym_declaration_repeat1, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, STATE(5048), 2, sym_argument_list, sym_initializer_list, [131915] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(6062), 1, sym_identifier, STATE(2302), 1, aux_sym_sized_type_specifier_repeat1, STATE(4014), 1, sym__scope_resolution, STATE(2263), 2, sym_sized_type_specifier, sym_qualified_type_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2408), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, [131948] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(5952), 1, anon_sym_LPAREN2, ACTIONS(5954), 1, anon_sym_SEMI, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(6076), 1, anon_sym_EQ, STATE(2749), 1, sym_parameter_list, STATE(4396), 1, aux_sym_declaration_repeat1, STATE(4514), 1, sym_initializer_list, STATE(5048), 1, sym_argument_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [131989] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4671), 1, anon_sym_COLON_COLON, ACTIONS(6078), 1, sym_identifier, STATE(1680), 1, aux_sym_sized_type_specifier_repeat1, STATE(4048), 1, sym__scope_resolution, STATE(2024), 2, sym_sized_type_specifier, sym_qualified_type_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(4673), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, [132022] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(5002), 1, anon_sym_LBRACE, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(5677), 1, anon_sym_STAR, ACTIONS(5679), 1, anon_sym_AMP_AMP, ACTIONS(5681), 1, anon_sym_AMP, STATE(3371), 1, sym_parameter_list, STATE(4195), 1, sym__abstract_declarator, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [132057] = 13, ACTIONS(3), 1, sym_comment, ACTIONS(1381), 1, anon_sym_TILDE, ACTIONS(1724), 1, anon_sym_operator, ACTIONS(6080), 1, sym_identifier, ACTIONS(6082), 1, anon_sym_COLON_COLON, ACTIONS(6084), 1, anon_sym_template, STATE(1857), 1, sym_operator_name, STATE(1858), 1, sym_qualified_identifier, STATE(1859), 1, sym_dependent_identifier, STATE(1860), 1, sym_destructor_name, STATE(1862), 1, sym_template_function, STATE(3683), 1, sym__scope_resolution, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [132098] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4105), 1, anon_sym_LT, STATE(3756), 1, sym_template_argument_list, ACTIONS(3000), 2, anon_sym_LBRACK, anon_sym_COLON, ACTIONS(2993), 8, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_GT2, [132125] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4526), 1, anon_sym_LPAREN2, STATE(1916), 1, sym_argument_list, ACTIONS(3517), 2, anon_sym_AMP, anon_sym_const, ACTIONS(3515), 9, anon_sym_RPAREN, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACK, anon_sym_volatile, anon_sym_restrict, anon_sym__Atomic, anon_sym_mutable, anon_sym_constexpr, [132150] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4367), 1, anon_sym_COLON_COLON, ACTIONS(6070), 1, sym_identifier, STATE(1953), 1, aux_sym_sized_type_specifier_repeat1, STATE(4016), 1, sym__scope_resolution, STATE(2469), 2, sym_sized_type_specifier, sym_qualified_type_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(2302), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, [132183] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(6086), 1, sym_identifier, STATE(1627), 1, aux_sym_sized_type_specifier_repeat1, STATE(4019), 1, sym__scope_resolution, STATE(1803), 2, sym_sized_type_specifier, sym_qualified_type_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, ACTIONS(4653), 4, anon_sym_signed, anon_sym_unsigned, anon_sym_long, anon_sym_short, [132216] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4753), 1, anon_sym_COLON_COLON, ACTIONS(5836), 1, sym_identifier, ACTIONS(5880), 1, anon_sym_LBRACE, STATE(2148), 1, sym_template_type, STATE(2498), 1, sym_enumerator_list, STATE(4033), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(6088), 2, anon_sym_class, anon_sym_struct, STATE(2632), 2, sym__class_name, sym_qualified_type_identifier, [132252] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4371), 1, anon_sym_COLON_COLON, ACTIONS(5840), 1, sym_identifier, ACTIONS(6090), 1, anon_sym_LBRACE, STATE(3699), 1, sym_template_type, STATE(3932), 1, sym_enumerator_list, STATE(4029), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(6092), 2, anon_sym_class, anon_sym_struct, STATE(3745), 2, sym__class_name, sym_qualified_type_identifier, [132288] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3026), 2, anon_sym_AMP, anon_sym_COLON, ACTIONS(3028), 10, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_final, anon_sym_override, [132308] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4671), 1, anon_sym_COLON_COLON, ACTIONS(5838), 1, sym_identifier, ACTIONS(6094), 1, anon_sym_LBRACE, STATE(1759), 1, sym_template_type, STATE(1999), 1, sym_enumerator_list, STATE(4048), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(6096), 2, anon_sym_class, anon_sym_struct, STATE(1893), 2, sym__class_name, sym_qualified_type_identifier, [132344] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(5856), 1, sym_identifier, ACTIONS(5876), 1, anon_sym_LBRACE, STATE(1947), 1, sym_template_type, STATE(2206), 1, sym_enumerator_list, STATE(4023), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(6098), 2, anon_sym_class, anon_sym_struct, STATE(3881), 2, sym__class_name, sym_qualified_type_identifier, [132380] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3048), 2, anon_sym_AMP, anon_sym_COLON, ACTIONS(3050), 10, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_final, anon_sym_override, [132400] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2311), 1, sym_enumerator_list, STATE(4015), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(6100), 2, anon_sym_class, anon_sym_struct, STATE(2425), 2, sym__class_name, sym_qualified_type_identifier, [132436] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2311), 1, sym_enumerator_list, STATE(4035), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(6102), 2, anon_sym_class, anon_sym_struct, STATE(3204), 2, sym__class_name, sym_qualified_type_identifier, [132472] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(5846), 1, sym_identifier, ACTIONS(5858), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2311), 1, sym_enumerator_list, STATE(4041), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(6104), 2, anon_sym_class, anon_sym_struct, STATE(3953), 2, sym__class_name, sym_qualified_type_identifier, [132508] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(5846), 1, sym_identifier, ACTIONS(5870), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2311), 1, sym_enumerator_list, STATE(4049), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(6106), 2, anon_sym_class, anon_sym_struct, STATE(3308), 2, sym__class_name, sym_qualified_type_identifier, [132544] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3044), 2, anon_sym_AMP, anon_sym_COLON, ACTIONS(3046), 10, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_final, anon_sym_override, [132564] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3412), 2, anon_sym_AMP, anon_sym_COLON, ACTIONS(3410), 9, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_final, anon_sym_override, [132586] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3040), 2, anon_sym_AMP, anon_sym_COLON, ACTIONS(3042), 10, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_final, anon_sym_override, [132606] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3008), 2, anon_sym_AMP, anon_sym_COLON, ACTIONS(3010), 10, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_final, anon_sym_override, [132626] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4367), 1, anon_sym_COLON_COLON, ACTIONS(5834), 1, sym_identifier, ACTIONS(5880), 1, anon_sym_LBRACE, STATE(2148), 1, sym_template_type, STATE(2498), 1, sym_enumerator_list, STATE(4016), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(6108), 2, anon_sym_class, anon_sym_struct, STATE(3468), 2, sym__class_name, sym_qualified_type_identifier, [132662] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(5846), 1, sym_identifier, ACTIONS(5870), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2311), 1, sym_enumerator_list, STATE(4049), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(6110), 2, anon_sym_class, anon_sym_struct, STATE(2666), 2, sym__class_name, sym_qualified_type_identifier, [132698] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3018), 2, anon_sym_AMP, anon_sym_COLON, ACTIONS(3020), 10, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_final, anon_sym_override, [132718] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(5866), 1, sym_identifier, ACTIONS(6112), 1, anon_sym_LBRACE, STATE(1674), 1, sym_template_type, STATE(1727), 1, sym_enumerator_list, STATE(4019), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(6114), 2, anon_sym_class, anon_sym_struct, STATE(1695), 2, sym__class_name, sym_qualified_type_identifier, [132754] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(5868), 1, sym_identifier, ACTIONS(5876), 1, anon_sym_LBRACE, STATE(1947), 1, sym_template_type, STATE(2206), 1, sym_enumerator_list, STATE(4042), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(6116), 2, anon_sym_class, anon_sym_struct, STATE(2505), 2, sym__class_name, sym_qualified_type_identifier, [132790] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(5844), 1, sym_identifier, ACTIONS(6118), 1, anon_sym_LBRACE, STATE(2080), 1, sym_template_type, STATE(2556), 1, sym_enumerator_list, STATE(4035), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(6120), 2, anon_sym_class, anon_sym_struct, STATE(2497), 2, sym__class_name, sym_qualified_type_identifier, [132826] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3032), 2, anon_sym_AMP, anon_sym_COLON, ACTIONS(3034), 10, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_final, anon_sym_override, [132846] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3418), 2, anon_sym_AMP, anon_sym_COLON, ACTIONS(3416), 9, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_final, anon_sym_override, [132868] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5952), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(5958), 1, anon_sym_EQ, STATE(2749), 1, sym_parameter_list, ACTIONS(6122), 2, anon_sym_COMMA, anon_sym_SEMI, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, STATE(5048), 2, sym_argument_list, sym_initializer_list, [132902] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3418), 2, anon_sym_AMP, anon_sym_COLON, ACTIONS(3416), 9, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_final, anon_sym_override, [132924] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3400), 2, anon_sym_AMP, anon_sym_COLON, ACTIONS(3398), 10, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_final, anon_sym_override, [132944] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3066), 2, anon_sym_AMP, anon_sym_COLON, ACTIONS(3073), 10, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_COLON_COLON, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_final, anon_sym_override, [132964] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(2653), 1, anon_sym_LPAREN2, ACTIONS(5451), 1, anon_sym_LBRACK, ACTIONS(5561), 1, anon_sym_STAR, ACTIONS(5563), 1, anon_sym_AMP_AMP, ACTIONS(5565), 1, anon_sym_AMP, STATE(3280), 1, sym_parameter_list, STATE(4075), 1, sym__abstract_declarator, STATE(3890), 5, sym_abstract_parenthesized_declarator, sym_abstract_pointer_declarator, sym_abstract_function_declarator, sym_abstract_array_declarator, sym_abstract_reference_declarator, [132996] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(5868), 1, sym_identifier, ACTIONS(5876), 1, anon_sym_LBRACE, STATE(1947), 1, sym_template_type, STATE(2206), 1, sym_enumerator_list, STATE(4042), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(6124), 2, anon_sym_class, anon_sym_struct, STATE(2742), 2, sym__class_name, sym_qualified_type_identifier, [133032] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2311), 1, sym_enumerator_list, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(6126), 2, anon_sym_class, anon_sym_struct, STATE(2692), 2, sym__class_name, sym_qualified_type_identifier, [133068] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2311), 1, sym_enumerator_list, STATE(4035), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(6128), 2, anon_sym_class, anon_sym_struct, STATE(3190), 2, sym__class_name, sym_qualified_type_identifier, [133104] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(5856), 1, sym_identifier, ACTIONS(5876), 1, anon_sym_LBRACE, STATE(1947), 1, sym_template_type, STATE(2206), 1, sym_enumerator_list, STATE(4023), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(6130), 2, anon_sym_class, anon_sym_struct, STATE(3467), 2, sym__class_name, sym_qualified_type_identifier, [133140] = 11, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(5866), 1, sym_identifier, ACTIONS(6112), 1, anon_sym_LBRACE, STATE(1674), 1, sym_template_type, STATE(1727), 1, sym_enumerator_list, STATE(4019), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, ACTIONS(6132), 2, anon_sym_class, anon_sym_struct, STATE(1971), 2, sym__class_name, sym_qualified_type_identifier, [133176] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2279), 1, sym_field_declaration_list, STATE(4340), 1, sym_virtual_specifier, STATE(4951), 1, sym_base_class_clause, ACTIONS(3348), 2, anon_sym_LPAREN2, anon_sym_STAR, ACTIONS(3350), 2, anon_sym___based, sym_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, [133207] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6134), 1, anon_sym_SEMI, ACTIONS(6136), 1, anon_sym_LBRACE, ACTIONS(6138), 1, anon_sym_EQ, ACTIONS(6140), 1, anon_sym_COLON, STATE(1427), 1, sym_compound_statement, STATE(4117), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(1428), 2, sym_default_method_clause, sym_delete_method_clause, [133240] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(768), 1, anon_sym_LBRACE, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6140), 1, anon_sym_COLON, ACTIONS(6142), 1, anon_sym_SEMI, ACTIONS(6144), 1, anon_sym_EQ, STATE(764), 1, sym_compound_statement, STATE(4124), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(745), 2, sym_default_method_clause, sym_delete_method_clause, [133273] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3972), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, [133302] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3883), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, [133331] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3893), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, [133360] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5890), 1, anon_sym_LBRACK, STATE(3109), 1, sym_parameter_list, STATE(3835), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6146), 5, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [133387] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, anon_sym_LBRACE, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6140), 1, anon_sym_COLON, ACTIONS(6148), 1, anon_sym_SEMI, ACTIONS(6150), 1, anon_sym_EQ, STATE(690), 1, sym_compound_statement, STATE(4123), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(689), 2, sym_default_method_clause, sym_delete_method_clause, [133420] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(4026), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, [133449] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(2686), 1, sym_parameter_list, STATE(3816), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6152), 5, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [133476] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3850), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, [133505] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5890), 1, anon_sym_LBRACK, STATE(3109), 1, sym_parameter_list, STATE(3835), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6154), 5, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [133532] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6140), 1, anon_sym_COLON, ACTIONS(6156), 1, anon_sym_SEMI, ACTIONS(6158), 1, anon_sym_LBRACE, ACTIONS(6160), 1, anon_sym_EQ, STATE(1568), 1, sym_compound_statement, STATE(4110), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(1567), 2, sym_default_method_clause, sym_delete_method_clause, [133565] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(245), 1, anon_sym_LBRACE, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6140), 1, anon_sym_COLON, ACTIONS(6162), 1, anon_sym_SEMI, ACTIONS(6164), 1, anon_sym_EQ, STATE(393), 1, sym_compound_statement, STATE(4115), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(415), 2, sym_default_method_clause, sym_delete_method_clause, [133598] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6140), 1, anon_sym_COLON, ACTIONS(6158), 1, anon_sym_LBRACE, ACTIONS(6160), 1, anon_sym_EQ, ACTIONS(6166), 1, anon_sym_SEMI, STATE(1545), 1, sym_compound_statement, STATE(4109), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(1544), 2, sym_default_method_clause, sym_delete_method_clause, [133631] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5890), 1, anon_sym_LBRACK, STATE(3109), 1, sym_parameter_list, STATE(3835), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6168), 5, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [133658] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3894), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, [133687] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5890), 1, anon_sym_LBRACK, STATE(3109), 1, sym_parameter_list, STATE(3835), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6170), 5, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [133714] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(3492), 1, anon_sym_AMP, ACTIONS(6172), 1, anon_sym_COLON, STATE(3869), 1, sym__enum_base_clause, STATE(3919), 1, sym_enumerator_list, ACTIONS(3490), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [133739] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(2686), 1, sym_parameter_list, STATE(3816), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6174), 5, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [133766] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(768), 1, anon_sym_LBRACE, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6140), 1, anon_sym_COLON, ACTIONS(6144), 1, anon_sym_EQ, ACTIONS(6176), 1, anon_sym_SEMI, STATE(768), 1, sym_compound_statement, STATE(4126), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(769), 2, sym_default_method_clause, sym_delete_method_clause, [133799] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3856), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, [133828] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(2686), 1, sym_parameter_list, STATE(3816), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6178), 5, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [133855] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(245), 1, anon_sym_LBRACE, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6140), 1, anon_sym_COLON, ACTIONS(6164), 1, anon_sym_EQ, ACTIONS(6180), 1, anon_sym_SEMI, STATE(392), 1, sym_compound_statement, STATE(4122), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(414), 2, sym_default_method_clause, sym_delete_method_clause, [133888] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3870), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, [133917] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(3475), 1, anon_sym_AMP, ACTIONS(6172), 1, anon_sym_COLON, STATE(3867), 1, sym__enum_base_clause, STATE(4003), 1, sym_enumerator_list, ACTIONS(3473), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [133942] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3840), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, [133971] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3844), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, [134000] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2953), 1, anon_sym_AMP, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(6004), 1, anon_sym_LT, STATE(3713), 1, sym_template_argument_list, ACTIONS(2961), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [134025] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5890), 1, anon_sym_LBRACK, STATE(3109), 1, sym_parameter_list, STATE(3835), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6182), 5, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [134052] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5890), 1, anon_sym_LBRACK, STATE(3109), 1, sym_parameter_list, STATE(3835), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6184), 5, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [134079] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, anon_sym_LBRACE, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6140), 1, anon_sym_COLON, ACTIONS(6150), 1, anon_sym_EQ, ACTIONS(6186), 1, anon_sym_SEMI, STATE(696), 1, sym_compound_statement, STATE(4130), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(733), 2, sym_default_method_clause, sym_delete_method_clause, [134112] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3899), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, [134141] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3764), 1, anon_sym_LBRACK, ACTIONS(6188), 1, anon_sym_LBRACK_RBRACK, ACTIONS(3762), 9, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_GT2, [134162] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2281), 1, sym_field_declaration_list, STATE(4270), 1, sym_virtual_specifier, STATE(4933), 1, sym_base_class_clause, ACTIONS(3320), 2, anon_sym_LPAREN2, anon_sym_STAR, ACTIONS(3322), 2, anon_sym___based, sym_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, [134193] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(2686), 1, sym_parameter_list, STATE(3816), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6190), 5, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [134220] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3073), 1, anon_sym_COLON_COLON, ACTIONS(3075), 2, anon_sym_LBRACK, anon_sym_COLON, ACTIONS(3068), 8, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_GT2, [134241] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3895), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, [134270] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(522), 1, anon_sym_LBRACE, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6140), 1, anon_sym_COLON, ACTIONS(6192), 1, anon_sym_SEMI, ACTIONS(6194), 1, anon_sym_EQ, STATE(748), 1, sym_compound_statement, STATE(4133), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(751), 2, sym_default_method_clause, sym_delete_method_clause, [134303] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2289), 1, sym_field_declaration_list, STATE(4285), 1, sym_virtual_specifier, STATE(4954), 1, sym_base_class_clause, ACTIONS(3336), 2, anon_sym_LPAREN2, anon_sym_STAR, ACTIONS(3338), 2, anon_sym___based, sym_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, [134334] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6140), 1, anon_sym_COLON, ACTIONS(6196), 1, anon_sym_SEMI, ACTIONS(6198), 1, anon_sym_LBRACE, ACTIONS(6200), 1, anon_sym_EQ, STATE(1625), 1, sym_compound_statement, STATE(4137), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(1623), 2, sym_default_method_clause, sym_delete_method_clause, [134367] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(6204), 1, anon_sym_LBRACK, STATE(3780), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6202), 7, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_GT2, [134390] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2293), 1, sym_field_declaration_list, STATE(4294), 1, sym_virtual_specifier, STATE(4969), 1, sym_base_class_clause, ACTIONS(3332), 2, anon_sym_LPAREN2, anon_sym_STAR, ACTIONS(3334), 2, anon_sym___based, sym_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, [134421] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6136), 1, anon_sym_LBRACE, ACTIONS(6138), 1, anon_sym_EQ, ACTIONS(6140), 1, anon_sym_COLON, ACTIONS(6206), 1, anon_sym_SEMI, STATE(1405), 1, sym_compound_statement, STATE(4120), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(1406), 2, sym_default_method_clause, sym_delete_method_clause, [134454] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2310), 1, sym_field_declaration_list, STATE(4346), 1, sym_virtual_specifier, STATE(4963), 1, sym_base_class_clause, ACTIONS(3340), 2, anon_sym_LPAREN2, anon_sym_STAR, ACTIONS(3342), 2, anon_sym___based, sym_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, [134485] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2301), 1, sym_field_declaration_list, STATE(4343), 1, sym_virtual_specifier, STATE(4956), 1, sym_base_class_clause, ACTIONS(3344), 2, anon_sym_LPAREN2, anon_sym_STAR, ACTIONS(3346), 2, anon_sym___based, sym_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, [134516] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3891), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, [134545] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(4261), 2, sym__class_name, sym_qualified_type_identifier, ACTIONS(6208), 3, anon_sym_public, anon_sym_private, anon_sym_protected, [134576] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2286), 1, sym_field_declaration_list, STATE(4254), 1, sym_virtual_specifier, STATE(4786), 1, sym_base_class_clause, ACTIONS(3328), 2, anon_sym_LPAREN2, anon_sym_STAR, ACTIONS(3330), 2, anon_sym___based, sym_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, [134607] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6140), 1, anon_sym_COLON, ACTIONS(6198), 1, anon_sym_LBRACE, ACTIONS(6200), 1, anon_sym_EQ, ACTIONS(6210), 1, anon_sym_SEMI, STATE(1504), 1, sym_compound_statement, STATE(4129), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(1508), 2, sym_default_method_clause, sym_delete_method_clause, [134640] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(4496), 2, sym__class_name, sym_qualified_type_identifier, ACTIONS(6212), 3, anon_sym_public, anon_sym_private, anon_sym_protected, [134671] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3855), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, [134700] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2297), 1, sym_field_declaration_list, STATE(4250), 1, sym_virtual_specifier, STATE(4774), 1, sym_base_class_clause, ACTIONS(3324), 2, anon_sym_LPAREN2, anon_sym_STAR, ACTIONS(3326), 2, anon_sym___based, sym_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, [134731] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(2686), 1, sym_parameter_list, STATE(3816), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6214), 5, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [134758] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3879), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, [134787] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3418), 1, anon_sym_AMP, ACTIONS(3416), 10, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_COLON, anon_sym_final, anon_sym_override, [134806] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3880), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, [134835] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3868), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, [134864] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2265), 1, sym_field_declaration_list, STATE(4234), 1, sym_virtual_specifier, STATE(4766), 1, sym_base_class_clause, ACTIONS(3310), 2, anon_sym_LPAREN2, anon_sym_STAR, ACTIONS(3312), 2, anon_sym___based, sym_identifier, ACTIONS(4174), 2, anon_sym_final, anon_sym_override, [134895] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(522), 1, anon_sym_LBRACE, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6140), 1, anon_sym_COLON, ACTIONS(6194), 1, anon_sym_EQ, ACTIONS(6216), 1, anon_sym_SEMI, STATE(763), 1, sym_compound_statement, STATE(4134), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(657), 2, sym_default_method_clause, sym_delete_method_clause, [134928] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3112), 1, anon_sym_LBRACK, ACTIONS(6218), 1, anon_sym_LBRACK_LBRACK, STATE(3780), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(3114), 7, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_GT2, [134951] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym___based, ACTIONS(5357), 1, sym_identifier, ACTIONS(5359), 1, anon_sym_LPAREN2, ACTIONS(5361), 1, anon_sym_STAR, STATE(3887), 1, sym__type_declarator, STATE(5232), 1, sym_ms_based_modifier, STATE(4095), 5, sym_parenthesized_type_declarator, sym_attributed_type_declarator, sym_pointer_type_declarator, sym_function_type_declarator, sym_array_type_declarator, [134980] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(3308), 9, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_GT2, [134998] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(5856), 1, sym_identifier, ACTIONS(5876), 1, anon_sym_LBRACE, STATE(1947), 1, sym_template_type, STATE(2082), 1, sym_enumerator_list, STATE(4023), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(3466), 2, sym__class_name, sym_qualified_type_identifier, [135030] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, anon_sym_LBRACE, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6140), 1, anon_sym_COLON, ACTIONS(6150), 1, anon_sym_EQ, STATE(696), 1, sym_compound_statement, STATE(4130), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(733), 2, sym_default_method_clause, sym_delete_method_clause, [135060] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4753), 1, anon_sym_COLON_COLON, ACTIONS(5836), 1, sym_identifier, ACTIONS(5880), 1, anon_sym_LBRACE, STATE(2148), 1, sym_template_type, STATE(2488), 1, sym_enumerator_list, STATE(4033), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(2628), 2, sym__class_name, sym_qualified_type_identifier, [135092] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(245), 1, anon_sym_LBRACE, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6140), 1, anon_sym_COLON, ACTIONS(6164), 1, anon_sym_EQ, STATE(393), 1, sym_compound_statement, STATE(4115), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(415), 2, sym_default_method_clause, sym_delete_method_clause, [135122] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2270), 1, sym_enumerator_list, STATE(4035), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(3194), 2, sym__class_name, sym_qualified_type_identifier, [135154] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(5846), 1, sym_identifier, ACTIONS(5870), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2270), 1, sym_enumerator_list, STATE(4049), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(2667), 2, sym__class_name, sym_qualified_type_identifier, [135186] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(522), 1, anon_sym_LBRACE, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6140), 1, anon_sym_COLON, ACTIONS(6194), 1, anon_sym_EQ, STATE(763), 1, sym_compound_statement, STATE(4134), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(657), 2, sym_default_method_clause, sym_delete_method_clause, [135216] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3521), 1, anon_sym_LBRACK, ACTIONS(3519), 9, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_GT2, [135234] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(5856), 1, sym_identifier, ACTIONS(5876), 1, anon_sym_LBRACE, STATE(1947), 1, sym_template_type, STATE(2082), 1, sym_enumerator_list, STATE(4023), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(3882), 2, sym__class_name, sym_qualified_type_identifier, [135266] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(5868), 1, sym_identifier, ACTIONS(5876), 1, anon_sym_LBRACE, STATE(1947), 1, sym_template_type, STATE(2082), 1, sym_enumerator_list, STATE(4042), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(2413), 2, sym__class_name, sym_qualified_type_identifier, [135298] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(5866), 1, sym_identifier, ACTIONS(6112), 1, anon_sym_LBRACE, STATE(1674), 1, sym_template_type, STATE(1777), 1, sym_enumerator_list, STATE(4019), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(1973), 2, sym__class_name, sym_qualified_type_identifier, [135330] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(2749), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6214), 4, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, [135356] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4671), 1, anon_sym_COLON_COLON, ACTIONS(5838), 1, sym_identifier, ACTIONS(6094), 1, anon_sym_LBRACE, STATE(1759), 1, sym_template_type, STATE(2011), 1, sym_enumerator_list, STATE(4048), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(1890), 2, sym__class_name, sym_qualified_type_identifier, [135388] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4371), 1, anon_sym_COLON_COLON, ACTIONS(5840), 1, sym_identifier, ACTIONS(6090), 1, anon_sym_LBRACE, STATE(3699), 1, sym_template_type, STATE(3978), 1, sym_enumerator_list, STATE(4029), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(3738), 2, sym__class_name, sym_qualified_type_identifier, [135420] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2270), 1, sym_enumerator_list, STATE(4035), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(3207), 2, sym__class_name, sym_qualified_type_identifier, [135452] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(2749), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6190), 4, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, [135478] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4367), 1, anon_sym_COLON_COLON, ACTIONS(5834), 1, sym_identifier, ACTIONS(5880), 1, anon_sym_LBRACE, STATE(2148), 1, sym_template_type, STATE(2488), 1, sym_enumerator_list, STATE(4016), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(3469), 2, sym__class_name, sym_qualified_type_identifier, [135510] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(2749), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6152), 4, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, [135536] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6223), 1, anon_sym_LT, ACTIONS(6225), 1, anon_sym_LBRACK, STATE(3897), 1, sym_template_argument_list, ACTIONS(6221), 7, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [135558] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3000), 1, anon_sym_LBRACK, ACTIONS(2993), 9, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_GT2, [135576] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(2749), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6174), 4, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, [135602] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3000), 1, anon_sym_LBRACK, ACTIONS(2993), 9, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_GT2, [135620] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(2749), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6178), 4, anon_sym_COMMA, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, [135646] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6229), 1, anon_sym_LBRACK, ACTIONS(6227), 9, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_GT2, [135664] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6233), 1, anon_sym_LBRACK, ACTIONS(6231), 9, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_GT2, [135682] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(5846), 1, sym_identifier, ACTIONS(5870), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2270), 1, sym_enumerator_list, STATE(4049), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(3291), 2, sym__class_name, sym_qualified_type_identifier, [135714] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2270), 1, sym_enumerator_list, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(2687), 2, sym__class_name, sym_qualified_type_identifier, [135746] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6237), 1, anon_sym_LBRACK, ACTIONS(6235), 9, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_GT2, [135764] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(768), 1, anon_sym_LBRACE, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6140), 1, anon_sym_COLON, ACTIONS(6144), 1, anon_sym_EQ, STATE(764), 1, sym_compound_statement, STATE(4124), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(745), 2, sym_default_method_clause, sym_delete_method_clause, [135794] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3000), 1, anon_sym_LBRACK, ACTIONS(2993), 9, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_GT2, [135812] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3000), 1, anon_sym_LBRACK, ACTIONS(2993), 9, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_GT2, [135830] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(768), 1, anon_sym_LBRACE, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6140), 1, anon_sym_COLON, ACTIONS(6144), 1, anon_sym_EQ, STATE(768), 1, sym_compound_statement, STATE(4126), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(769), 2, sym_default_method_clause, sym_delete_method_clause, [135860] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3000), 1, anon_sym_LBRACK, ACTIONS(2993), 9, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_GT2, [135878] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(6204), 1, anon_sym_LBRACK, STATE(3820), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6202), 6, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [135900] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3764), 1, anon_sym_LBRACK, ACTIONS(3762), 9, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_GT2, [135918] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(5868), 1, sym_identifier, ACTIONS(5876), 1, anon_sym_LBRACE, STATE(1947), 1, sym_template_type, STATE(2082), 1, sym_enumerator_list, STATE(4042), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(2752), 2, sym__class_name, sym_qualified_type_identifier, [135950] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(2731), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6214), 4, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_EQ, anon_sym_GT2, [135976] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3112), 1, anon_sym_LBRACK, ACTIONS(6239), 1, anon_sym_LBRACK_LBRACK, STATE(3820), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(3114), 6, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [135998] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(522), 1, anon_sym_LBRACE, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6140), 1, anon_sym_COLON, ACTIONS(6194), 1, anon_sym_EQ, STATE(748), 1, sym_compound_statement, STATE(4133), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(751), 2, sym_default_method_clause, sym_delete_method_clause, [136028] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(2731), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6190), 4, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_EQ, anon_sym_GT2, [136054] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4029), 1, anon_sym_LBRACK, ACTIONS(4027), 9, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_GT2, [136072] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(2731), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6152), 4, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_EQ, anon_sym_GT2, [136098] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(2731), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6174), 4, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_EQ, anon_sym_GT2, [136124] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6244), 1, anon_sym_LBRACK, ACTIONS(6242), 9, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_GT2, [136142] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(5866), 1, sym_identifier, ACTIONS(6112), 1, anon_sym_LBRACE, STATE(1674), 1, sym_template_type, STATE(1777), 1, sym_enumerator_list, STATE(4019), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(1705), 2, sym__class_name, sym_qualified_type_identifier, [136174] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(2731), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6178), 4, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_EQ, anon_sym_GT2, [136200] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6248), 1, anon_sym_LBRACK, ACTIONS(6246), 9, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_GT2, [136218] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(5846), 1, sym_identifier, ACTIONS(5858), 1, anon_sym_COLON_COLON, STATE(2080), 1, sym_template_type, STATE(2270), 1, sym_enumerator_list, STATE(4041), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(3999), 2, sym__class_name, sym_qualified_type_identifier, [136250] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6252), 1, anon_sym_LBRACK, ACTIONS(6250), 9, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_GT2, [136268] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, anon_sym_LBRACE, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6140), 1, anon_sym_COLON, ACTIONS(6150), 1, anon_sym_EQ, STATE(690), 1, sym_compound_statement, STATE(4123), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(689), 2, sym_default_method_clause, sym_delete_method_clause, [136298] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(245), 1, anon_sym_LBRACE, ACTIONS(4817), 1, anon_sym_LBRACK, ACTIONS(6140), 1, anon_sym_COLON, ACTIONS(6164), 1, anon_sym_EQ, STATE(392), 1, sym_compound_statement, STATE(4122), 1, sym_field_initializer_list, ACTIONS(3308), 2, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, STATE(414), 2, sym_default_method_clause, sym_delete_method_clause, [136328] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(5844), 1, sym_identifier, ACTIONS(6118), 1, anon_sym_LBRACE, STATE(2080), 1, sym_template_type, STATE(2581), 1, sym_enumerator_list, STATE(4035), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(2487), 2, sym__class_name, sym_qualified_type_identifier, [136360] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4459), 1, anon_sym_LBRACK_LBRACK, ACTIONS(6256), 1, anon_sym_LBRACK, STATE(3820), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6254), 6, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [136382] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3868), 1, anon_sym_LBRACK, ACTIONS(3866), 9, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_GT2, [136400] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6260), 1, anon_sym_LBRACK, ACTIONS(6258), 9, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, anon_sym_GT2, [136418] = 10, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(5844), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(2270), 1, sym_enumerator_list, STATE(4015), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(2453), 2, sym__class_name, sym_qualified_type_identifier, [136450] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(5537), 9, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_GT2, [136465] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(6264), 1, anon_sym_SEMI, ACTIONS(6266), 1, anon_sym_LBRACK, STATE(4085), 1, sym_parameter_list, STATE(4393), 1, aux_sym_type_definition_repeat2, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [136494] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6268), 1, sym_identifier, ACTIONS(6272), 1, sym_system_lib_string, STATE(5377), 2, sym_preproc_call_expression, sym_string_literal, ACTIONS(6270), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [136515] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(5320), 9, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_GT2, [136530] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6276), 1, anon_sym_LBRACK, ACTIONS(6274), 8, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [136547] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(6266), 1, anon_sym_LBRACK, ACTIONS(6278), 1, anon_sym_SEMI, STATE(4085), 1, sym_parameter_list, STATE(4475), 1, aux_sym_type_definition_repeat2, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [136576] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6282), 1, anon_sym_LBRACK, ACTIONS(6280), 8, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [136593] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(5505), 9, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_GT2, [136608] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4111), 1, sym_raw_string_literal, ACTIONS(6284), 1, anon_sym_RPAREN, STATE(1958), 2, sym_string_literal, aux_sym_concatenated_string_repeat1, ACTIONS(101), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [136629] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6288), 1, anon_sym_LBRACK, ACTIONS(6286), 8, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [136646] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6292), 1, anon_sym_LBRACK, ACTIONS(6290), 8, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [136663] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(6266), 1, anon_sym_LBRACK, ACTIONS(6294), 1, anon_sym_SEMI, STATE(4085), 1, sym_parameter_list, STATE(4506), 1, aux_sym_type_definition_repeat2, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [136692] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(5493), 9, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_GT2, [136707] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6266), 1, anon_sym_LBRACK, STATE(4085), 1, sym_parameter_list, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6296), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, [136732] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6266), 1, anon_sym_LBRACK, STATE(4085), 1, sym_parameter_list, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6298), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, [136757] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(5533), 9, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_GT2, [136772] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(6266), 1, anon_sym_LBRACK, ACTIONS(6300), 1, anon_sym_SEMI, STATE(4085), 1, sym_parameter_list, STATE(4551), 1, aux_sym_type_definition_repeat2, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [136801] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(6266), 1, anon_sym_LBRACK, ACTIONS(6302), 1, anon_sym_SEMI, STATE(4085), 1, sym_parameter_list, STATE(4454), 1, aux_sym_type_definition_repeat2, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [136830] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4111), 1, sym_raw_string_literal, ACTIONS(6304), 1, anon_sym_RPAREN, STATE(1958), 2, sym_string_literal, aux_sym_concatenated_string_repeat1, ACTIONS(101), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [136851] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(5483), 9, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_GT2, [136866] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(5509), 9, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_GT2, [136881] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(5557), 9, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_GT2, [136896] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6266), 1, anon_sym_LBRACK, STATE(4085), 1, sym_parameter_list, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6306), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, [136921] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(5331), 9, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_GT2, [136936] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6308), 1, sym_identifier, ACTIONS(6310), 1, sym_system_lib_string, STATE(5361), 2, sym_preproc_call_expression, sym_string_literal, ACTIONS(6270), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [136957] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4111), 1, sym_raw_string_literal, ACTIONS(6312), 1, anon_sym_RPAREN, STATE(1958), 2, sym_string_literal, aux_sym_concatenated_string_repeat1, ACTIONS(101), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [136978] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(5521), 9, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_GT2, [136993] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(6314), 1, sym_identifier, ACTIONS(6316), 1, anon_sym_COLON_COLON, STATE(3877), 1, sym__scope_resolution, STATE(4590), 1, sym_field_initializer, STATE(4336), 2, sym_template_method, sym_qualified_field_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [137020] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3509), 1, anon_sym_AMP, STATE(3940), 1, sym_enumerator_list, ACTIONS(3507), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [137039] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(6266), 1, anon_sym_LBRACK, ACTIONS(6318), 1, anon_sym_SEMI, STATE(4085), 1, sym_parameter_list, STATE(4495), 1, aux_sym_type_definition_repeat2, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [137068] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3513), 1, anon_sym_AMP, STATE(4001), 1, sym_enumerator_list, ACTIONS(3511), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [137087] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(6266), 1, anon_sym_LBRACK, ACTIONS(6320), 1, anon_sym_SEMI, STATE(4085), 1, sym_parameter_list, STATE(4436), 1, aux_sym_type_definition_repeat2, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [137116] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6322), 1, sym_identifier, ACTIONS(6324), 1, sym_system_lib_string, STATE(5108), 2, sym_preproc_call_expression, sym_string_literal, ACTIONS(6270), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [137137] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4111), 1, sym_raw_string_literal, ACTIONS(6326), 1, anon_sym_RPAREN, STATE(1958), 2, sym_string_literal, aux_sym_concatenated_string_repeat1, ACTIONS(101), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [137158] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(6330), 1, anon_sym_EQ, STATE(2731), 1, sym_parameter_list, ACTIONS(6328), 2, anon_sym_COMMA, anon_sym_GT2, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [137185] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4111), 1, sym_raw_string_literal, ACTIONS(6332), 1, anon_sym_RPAREN, STATE(1958), 2, sym_string_literal, aux_sym_concatenated_string_repeat1, ACTIONS(101), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [137206] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4111), 1, sym_raw_string_literal, ACTIONS(6334), 1, anon_sym_RPAREN, STATE(1958), 2, sym_string_literal, aux_sym_concatenated_string_repeat1, ACTIONS(101), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [137227] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6338), 1, anon_sym_LBRACK, ACTIONS(6336), 8, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [137244] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(6316), 1, anon_sym_COLON_COLON, ACTIONS(6340), 1, sym_identifier, ACTIONS(6342), 1, anon_sym_template, STATE(3877), 1, sym__scope_resolution, STATE(4866), 1, sym_qualified_field_identifier, STATE(4867), 1, sym_dependent_field_identifier, STATE(4868), 1, sym_template_method, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [137273] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(6344), 1, anon_sym_EQ, STATE(2731), 1, sym_parameter_list, ACTIONS(6328), 2, anon_sym_COMMA, anon_sym_RPAREN, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [137300] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(6266), 1, anon_sym_LBRACK, ACTIONS(6346), 1, anon_sym_SEMI, STATE(4085), 1, sym_parameter_list, STATE(4553), 1, aux_sym_type_definition_repeat2, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [137329] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(6266), 1, anon_sym_LBRACK, ACTIONS(6348), 1, anon_sym_SEMI, STATE(4085), 1, sym_parameter_list, STATE(4561), 1, aux_sym_type_definition_repeat2, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [137358] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(3475), 1, anon_sym_AMP, ACTIONS(5878), 1, anon_sym_COLON, STATE(2110), 1, sym_enumerator_list, STATE(2509), 1, sym__enum_base_clause, ACTIONS(3473), 5, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACE, anon_sym_LBRACK, [137381] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(3492), 1, anon_sym_AMP, ACTIONS(5878), 1, anon_sym_COLON, STATE(2249), 1, sym_enumerator_list, STATE(2531), 1, sym__enum_base_clause, ACTIONS(3490), 5, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACE, anon_sym_LBRACK, [137404] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(6266), 1, anon_sym_LBRACK, ACTIONS(6350), 1, anon_sym_SEMI, STATE(4085), 1, sym_parameter_list, STATE(4376), 1, aux_sym_type_definition_repeat2, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [137433] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, ACTIONS(3517), 1, anon_sym_AMP, ACTIONS(3515), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [137452] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(6314), 1, sym_identifier, ACTIONS(6316), 1, anon_sym_COLON_COLON, STATE(3877), 1, sym__scope_resolution, STATE(4334), 1, sym_field_initializer, STATE(4336), 2, sym_template_method, sym_qualified_field_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [137479] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6352), 1, sym_identifier, ACTIONS(6354), 1, sym_system_lib_string, STATE(5143), 2, sym_preproc_call_expression, sym_string_literal, ACTIONS(6270), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [137500] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(6266), 1, anon_sym_LBRACK, ACTIONS(6356), 1, anon_sym_SEMI, STATE(4085), 1, sym_parameter_list, STATE(4588), 1, aux_sym_type_definition_repeat2, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [137529] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(5529), 9, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_GT2, [137544] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(5525), 9, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_GT2, [137559] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(5487), 9, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_GT2, [137574] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(6266), 1, anon_sym_LBRACK, ACTIONS(6358), 1, anon_sym_SEMI, STATE(4085), 1, sym_parameter_list, STATE(4609), 1, aux_sym_type_definition_repeat2, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [137603] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(5513), 9, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, anon_sym_GT2, [137618] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(6266), 1, anon_sym_LBRACK, ACTIONS(6360), 1, anon_sym_SEMI, STATE(4085), 1, sym_parameter_list, STATE(4580), 1, aux_sym_type_definition_repeat2, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [137647] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(6266), 1, anon_sym_LBRACK, ACTIONS(6362), 1, anon_sym_SEMI, STATE(4085), 1, sym_parameter_list, STATE(4474), 1, aux_sym_type_definition_repeat2, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [137676] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(6266), 1, anon_sym_LBRACK, ACTIONS(6364), 1, anon_sym_SEMI, STATE(4085), 1, sym_parameter_list, STATE(4520), 1, aux_sym_type_definition_repeat2, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [137705] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6266), 1, anon_sym_LBRACK, STATE(4085), 1, sym_parameter_list, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6366), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, [137730] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4037), 1, anon_sym_LBRACK, ACTIONS(4035), 8, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [137747] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6370), 1, anon_sym_LBRACK, ACTIONS(6368), 8, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [137764] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(6266), 1, anon_sym_LBRACK, ACTIONS(6372), 1, anon_sym_SEMI, STATE(4085), 1, sym_parameter_list, STATE(4374), 1, aux_sym_type_definition_repeat2, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [137793] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4111), 1, sym_raw_string_literal, ACTIONS(6374), 1, anon_sym_RPAREN, STATE(1958), 2, sym_string_literal, aux_sym_concatenated_string_repeat1, ACTIONS(101), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [137814] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3569), 1, anon_sym_AMP, ACTIONS(3567), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [137830] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3740), 1, anon_sym_AMP, ACTIONS(3738), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [137846] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(5479), 1, anon_sym_COLON, ACTIONS(5884), 1, anon_sym_COMMA, ACTIONS(6376), 1, anon_sym_SEMI, ACTIONS(6378), 1, anon_sym_EQ, STATE(4102), 1, aux_sym_field_declaration_repeat1, STATE(5206), 1, sym_initializer_list, STATE(5244), 1, sym_bitfield_clause, [137874] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(4429), 2, sym__class_name, sym_qualified_type_identifier, [137900] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(3054), 1, sym_parameter_list, ACTIONS(6174), 2, anon_sym_RPAREN, anon_sym_SEMI, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [137924] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(6382), 1, anon_sym_LBRACK, STATE(3780), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, ACTIONS(6380), 4, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, [137944] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3605), 1, anon_sym_AMP, ACTIONS(3603), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [137960] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(3054), 1, sym_parameter_list, ACTIONS(6178), 2, anon_sym_RPAREN, anon_sym_SEMI, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [137984] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3559), 1, anon_sym_AMP, ACTIONS(3557), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138000] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3782), 1, anon_sym_AMP, ACTIONS(3780), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138016] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3032), 1, anon_sym_LBRACK, ACTIONS(3034), 7, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [138032] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3000), 1, anon_sym_LBRACK, ACTIONS(4107), 1, anon_sym_LT, STATE(1730), 1, sym_template_argument_list, ACTIONS(2993), 4, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, [138054] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(768), 1, anon_sym_LBRACE, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(659), 1, sym_compound_statement, STATE(3161), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [138080] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6384), 1, sym_raw_string_literal, STATE(3864), 1, sym_string_literal, STATE(5237), 1, sym_concatenated_string, ACTIONS(101), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [138100] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3760), 1, anon_sym_AMP, ACTIONS(3758), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138116] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(5479), 1, anon_sym_COLON, ACTIONS(5884), 1, anon_sym_COMMA, ACTIONS(6386), 1, anon_sym_SEMI, ACTIONS(6388), 1, anon_sym_EQ, STATE(4102), 1, aux_sym_field_declaration_repeat1, STATE(5339), 1, sym_initializer_list, STATE(5367), 1, sym_bitfield_clause, [138144] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(6082), 1, anon_sym_COLON_COLON, ACTIONS(6390), 1, sym_identifier, ACTIONS(6392), 1, anon_sym_namespace, STATE(3683), 1, sym__scope_resolution, STATE(5270), 1, sym_qualified_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [138170] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3706), 1, anon_sym_AMP, ACTIONS(3704), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138186] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3770), 1, anon_sym_AMP, ACTIONS(3768), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138202] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3581), 1, anon_sym_AMP, ACTIONS(3579), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138218] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(522), 1, anon_sym_LBRACE, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(709), 1, sym_compound_statement, STATE(3161), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [138244] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(6158), 1, anon_sym_LBRACE, STATE(1521), 1, sym_compound_statement, STATE(3161), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [138270] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3683), 1, anon_sym_AMP, ACTIONS(3681), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138286] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3026), 1, anon_sym_LBRACK, ACTIONS(3028), 7, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [138302] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3517), 1, anon_sym_AMP, ACTIONS(3515), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138318] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3786), 1, anon_sym_AMP, ACTIONS(3784), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138334] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3736), 1, anon_sym_AMP, ACTIONS(3734), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138350] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6396), 1, anon_sym_AMP, ACTIONS(6398), 2, anon_sym_EQ, anon_sym_DOT, ACTIONS(6394), 5, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACE, anon_sym_LBRACK, [138368] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(3054), 1, sym_parameter_list, ACTIONS(6190), 2, anon_sym_RPAREN, anon_sym_SEMI, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [138392] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3585), 1, anon_sym_AMP, ACTIONS(3583), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138408] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(4817), 1, anon_sym_LBRACK, STATE(1730), 1, sym_template_argument_list, ACTIONS(3308), 4, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, [138430] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3547), 1, anon_sym_AMP, ACTIONS(3545), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138446] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3744), 1, anon_sym_AMP, ACTIONS(3742), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138462] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3748), 1, anon_sym_AMP, ACTIONS(3746), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138478] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3698), 1, anon_sym_AMP, ACTIONS(3696), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138494] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6400), 1, sym_raw_string_literal, STATE(3900), 1, sym_string_literal, STATE(5112), 1, sym_concatenated_string, ACTIONS(101), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [138514] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3589), 1, anon_sym_AMP, ACTIONS(3587), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138530] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6402), 1, sym_raw_string_literal, STATE(3872), 1, sym_string_literal, STATE(5075), 1, sym_concatenated_string, ACTIONS(101), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [138550] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3752), 1, anon_sym_AMP, ACTIONS(3750), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138566] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3790), 1, anon_sym_AMP, ACTIONS(3788), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138582] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3756), 1, anon_sym_AMP, ACTIONS(3754), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138598] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3593), 1, anon_sym_AMP, ACTIONS(3591), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138614] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3597), 1, anon_sym_AMP, ACTIONS(3595), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138630] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3702), 1, anon_sym_AMP, ACTIONS(3700), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138646] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(6082), 1, anon_sym_COLON_COLON, ACTIONS(6404), 1, sym_identifier, ACTIONS(6406), 1, anon_sym_namespace, STATE(3683), 1, sym__scope_resolution, STATE(5416), 1, sym_qualified_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [138672] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3806), 1, anon_sym_AMP, ACTIONS(3804), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138688] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3577), 1, anon_sym_AMP, ACTIONS(3575), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138704] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(5846), 1, sym_identifier, STATE(2080), 1, sym_template_type, STATE(4014), 1, sym__scope_resolution, STATE(5384), 1, sym_dependent_type_identifier, STATE(4139), 2, sym__class_name, sym_qualified_type_identifier, [138730] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3601), 1, anon_sym_AMP, ACTIONS(3599), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138746] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3609), 1, anon_sym_AMP, ACTIONS(3607), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138762] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(6136), 1, anon_sym_LBRACE, STATE(1434), 1, sym_compound_statement, STATE(3161), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [138788] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3714), 1, anon_sym_AMP, ACTIONS(3712), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138804] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(6408), 1, anon_sym_COLON, STATE(2245), 1, sym__enum_base_clause, STATE(2261), 1, sym_enumerator_list, ACTIONS(3473), 2, anon_sym_LPAREN2, anon_sym_STAR, ACTIONS(3475), 2, anon_sym___based, sym_identifier, [138828] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(6082), 1, anon_sym_COLON_COLON, ACTIONS(6410), 1, sym_identifier, ACTIONS(6412), 1, anon_sym_namespace, STATE(3683), 1, sym__scope_resolution, STATE(5287), 1, sym_qualified_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [138854] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3687), 1, anon_sym_AMP, ACTIONS(3685), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138870] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(6082), 1, anon_sym_COLON_COLON, ACTIONS(6414), 1, sym_identifier, ACTIONS(6416), 1, anon_sym_namespace, STATE(3683), 1, sym__scope_resolution, STATE(5196), 1, sym_qualified_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [138896] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3563), 1, anon_sym_AMP, ACTIONS(3561), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138912] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6418), 1, sym_raw_string_literal, STATE(3874), 1, sym_string_literal, STATE(5171), 1, sym_concatenated_string, ACTIONS(101), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [138932] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3774), 1, anon_sym_AMP, ACTIONS(3772), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138948] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(245), 1, anon_sym_LBRACE, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(380), 1, sym_compound_statement, STATE(3161), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [138974] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3718), 1, anon_sym_AMP, ACTIONS(3716), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [138990] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(3054), 1, sym_parameter_list, ACTIONS(6214), 2, anon_sym_RPAREN, anon_sym_SEMI, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [139014] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3732), 1, anon_sym_AMP, ACTIONS(3730), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139030] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3517), 1, anon_sym_AMP, ACTIONS(3515), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139046] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3040), 1, anon_sym_LBRACK, ACTIONS(3042), 7, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [139062] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, anon_sym_LBRACE, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(807), 1, sym_compound_statement, STATE(3161), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [139088] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3044), 1, anon_sym_LBRACK, ACTIONS(3046), 7, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [139104] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3048), 1, anon_sym_LBRACK, ACTIONS(3050), 7, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [139120] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3617), 1, anon_sym_AMP, ACTIONS(3615), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139136] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3621), 1, anon_sym_AMP, ACTIONS(3619), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139152] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3631), 1, anon_sym_AMP, ACTIONS(3629), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139168] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6266), 1, anon_sym_LBRACK, STATE(4085), 1, sym_parameter_list, ACTIONS(6420), 2, anon_sym_COMMA, anon_sym_SEMI, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [139192] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(6082), 1, anon_sym_COLON_COLON, ACTIONS(6422), 1, sym_identifier, ACTIONS(6424), 1, anon_sym_namespace, STATE(3683), 1, sym__scope_resolution, STATE(5221), 1, sym_qualified_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [139218] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3679), 1, anon_sym_AMP, ACTIONS(3677), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139234] = 9, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, ACTIONS(5479), 1, anon_sym_COLON, ACTIONS(5884), 1, anon_sym_COMMA, ACTIONS(6426), 1, anon_sym_SEMI, ACTIONS(6428), 1, anon_sym_EQ, STATE(4102), 1, aux_sym_field_declaration_repeat1, STATE(5072), 1, sym_initializer_list, STATE(5073), 1, sym_bitfield_clause, [139262] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(6082), 1, anon_sym_COLON_COLON, ACTIONS(6430), 1, sym_identifier, ACTIONS(6432), 1, anon_sym_namespace, STATE(3683), 1, sym__scope_resolution, STATE(5173), 1, sym_qualified_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [139288] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6434), 1, sym_raw_string_literal, STATE(3847), 1, sym_string_literal, STATE(5154), 1, sym_concatenated_string, ACTIONS(101), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [139308] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3710), 1, anon_sym_AMP, ACTIONS(3708), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139324] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3635), 1, anon_sym_AMP, ACTIONS(3633), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139340] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3643), 1, anon_sym_AMP, ACTIONS(3641), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139356] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(3054), 1, sym_parameter_list, ACTIONS(6152), 2, anon_sym_RPAREN, anon_sym_SEMI, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [139380] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3647), 1, anon_sym_AMP, ACTIONS(3645), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139396] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3651), 1, anon_sym_AMP, ACTIONS(3649), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139412] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3655), 1, anon_sym_AMP, ACTIONS(3653), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139428] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3798), 1, anon_sym_AMP, ACTIONS(3796), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139444] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3659), 1, anon_sym_AMP, ACTIONS(3657), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139460] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3663), 1, anon_sym_AMP, ACTIONS(3661), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139476] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3008), 1, anon_sym_LBRACK, ACTIONS(3010), 7, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [139492] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3802), 1, anon_sym_AMP, ACTIONS(3800), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139508] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3667), 1, anon_sym_AMP, ACTIONS(3665), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139524] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3627), 1, anon_sym_AMP, ACTIONS(3625), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139540] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3671), 1, anon_sym_AMP, ACTIONS(3669), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139556] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3551), 1, anon_sym_AMP, ACTIONS(3549), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139572] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6436), 1, sym_raw_string_literal, STATE(3875), 1, sym_string_literal, STATE(5408), 1, sym_concatenated_string, ACTIONS(101), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [139592] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(6082), 1, anon_sym_COLON_COLON, ACTIONS(6438), 1, sym_identifier, ACTIONS(6440), 1, anon_sym_namespace, STATE(3683), 1, sym__scope_resolution, STATE(5430), 1, sym_qualified_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [139618] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3675), 1, anon_sym_AMP, ACTIONS(3673), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139634] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3018), 1, anon_sym_LBRACK, ACTIONS(3020), 7, anon_sym_COMMA, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [139650] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3555), 1, anon_sym_AMP, ACTIONS(3553), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139666] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(4176), 1, anon_sym_LBRACE, ACTIONS(6408), 1, anon_sym_COLON, STATE(2078), 1, sym__enum_base_clause, STATE(2262), 1, sym_enumerator_list, ACTIONS(3490), 2, anon_sym_LPAREN2, anon_sym_STAR, ACTIONS(3492), 2, anon_sym___based, sym_identifier, [139690] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6442), 1, sym_raw_string_literal, STATE(3857), 1, sym_string_literal, STATE(5121), 1, sym_concatenated_string, ACTIONS(101), 5, anon_sym_L_DQUOTE, anon_sym_u_DQUOTE, anon_sym_U_DQUOTE, anon_sym_u8_DQUOTE, anon_sym_DQUOTE, [139710] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3724), 1, anon_sym_AMP, ACTIONS(3722), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139726] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3639), 1, anon_sym_AMP, ACTIONS(3637), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139742] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3694), 1, anon_sym_AMP, ACTIONS(3692), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139758] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3728), 1, anon_sym_AMP, ACTIONS(3726), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139774] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(6198), 1, anon_sym_LBRACE, STATE(1624), 1, sym_compound_statement, STATE(3161), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [139800] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3778), 1, anon_sym_AMP, ACTIONS(3776), 7, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_EQ, [139816] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(3000), 1, anon_sym_LBRACK, ACTIONS(4107), 1, anon_sym_LT, STATE(3756), 1, sym_template_argument_list, ACTIONS(2993), 3, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, [139837] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(6082), 1, anon_sym_COLON_COLON, ACTIONS(6444), 1, sym_identifier, STATE(3683), 1, sym__scope_resolution, STATE(5157), 1, sym_qualified_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [139860] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(6446), 1, anon_sym_SEMI, STATE(3054), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [139883] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(6448), 1, anon_sym_SEMI, STATE(3054), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [139906] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6454), 1, anon_sym_delete, ACTIONS(6456), 1, anon_sym_new, ACTIONS(6452), 2, anon_sym_TILDE, anon_sym_COLON_COLON, ACTIONS(6450), 3, sym_identifier, anon_sym_template, anon_sym_operator, [139925] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5890), 1, anon_sym_LBRACK, ACTIONS(6168), 1, anon_sym_RPAREN, STATE(3214), 1, sym_parameter_list, STATE(4098), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [139948] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6458), 1, anon_sym_delete, ACTIONS(6460), 1, anon_sym_new, ACTIONS(6452), 2, anon_sym_TILDE, anon_sym_COLON_COLON, ACTIONS(6450), 3, sym_identifier, anon_sym_template, anon_sym_operator, [139967] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(2406), 1, anon_sym_COLON_COLON, ACTIONS(6462), 1, sym_identifier, STATE(2163), 1, sym_template_type, STATE(2164), 1, sym_dependent_type_identifier, STATE(2165), 1, sym_qualified_type_identifier, STATE(4014), 1, sym__scope_resolution, [139992] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(2661), 1, anon_sym_COLON_COLON, ACTIONS(6464), 1, sym_identifier, ACTIONS(6466), 1, anon_sym_template, STATE(2163), 1, sym_template_type, STATE(2164), 1, sym_dependent_type_identifier, STATE(2165), 1, sym_qualified_type_identifier, STATE(4015), 1, sym__scope_resolution, [140017] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(4367), 1, anon_sym_COLON_COLON, ACTIONS(6468), 1, sym_identifier, ACTIONS(6470), 1, anon_sym_template, STATE(2172), 1, sym_template_type, STATE(2176), 1, sym_dependent_type_identifier, STATE(2322), 1, sym_qualified_type_identifier, STATE(4016), 1, sym__scope_resolution, [140042] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(6472), 1, anon_sym_SEMI, STATE(3054), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [140065] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6474), 1, anon_sym_delete, ACTIONS(6476), 1, anon_sym_new, ACTIONS(6452), 2, anon_sym_TILDE, anon_sym_COLON_COLON, ACTIONS(6450), 3, sym_identifier, anon_sym_template, anon_sym_operator, [140084] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(4651), 1, anon_sym_COLON_COLON, ACTIONS(6478), 1, sym_identifier, ACTIONS(6480), 1, anon_sym_template, STATE(1676), 1, sym_dependent_type_identifier, STATE(1679), 1, sym_template_type, STATE(1701), 1, sym_qualified_type_identifier, STATE(4019), 1, sym__scope_resolution, [140109] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(4817), 1, anon_sym_LBRACK, STATE(3756), 1, sym_template_argument_list, ACTIONS(3308), 3, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, anon_sym_LBRACE, [140130] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(6082), 1, anon_sym_COLON_COLON, ACTIONS(6482), 1, sym_identifier, STATE(3683), 1, sym__scope_resolution, STATE(5453), 1, sym_qualified_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [140153] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(6484), 1, anon_sym_RPAREN, STATE(3054), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [140176] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(4285), 1, anon_sym_COLON_COLON, ACTIONS(6486), 1, sym_identifier, ACTIONS(6488), 1, anon_sym_template, STATE(1895), 1, sym_qualified_type_identifier, STATE(1933), 1, sym_dependent_type_identifier, STATE(1945), 1, sym_template_type, STATE(4023), 1, sym__scope_resolution, [140201] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(6082), 1, anon_sym_COLON_COLON, ACTIONS(6490), 1, sym_identifier, STATE(3683), 1, sym__scope_resolution, STATE(5110), 1, sym_qualified_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [140224] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5890), 1, anon_sym_LBRACK, ACTIONS(6154), 1, anon_sym_RPAREN, STATE(3214), 1, sym_parameter_list, STATE(4098), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [140247] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(6266), 1, anon_sym_LBRACK, ACTIONS(6492), 1, anon_sym_RPAREN, STATE(4085), 1, sym_parameter_list, STATE(3906), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [140270] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(6082), 1, anon_sym_COLON_COLON, ACTIONS(6494), 1, sym_identifier, STATE(3683), 1, sym__scope_resolution, STATE(5271), 1, sym_qualified_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [140293] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6496), 1, anon_sym_delete, ACTIONS(6498), 1, anon_sym_new, ACTIONS(6452), 2, anon_sym_TILDE, anon_sym_COLON_COLON, ACTIONS(6450), 3, sym_identifier, anon_sym_template, anon_sym_operator, [140312] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(4371), 1, anon_sym_COLON_COLON, ACTIONS(6500), 1, sym_identifier, ACTIONS(6502), 1, anon_sym_template, STATE(3709), 1, sym_template_type, STATE(3711), 1, sym_dependent_type_identifier, STATE(3775), 1, sym_qualified_type_identifier, STATE(4029), 1, sym__scope_resolution, [140337] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6504), 1, anon_sym_delete, ACTIONS(6506), 1, anon_sym_new, ACTIONS(6452), 2, anon_sym_TILDE, anon_sym_COLON_COLON, ACTIONS(6450), 3, sym_identifier, anon_sym_template, anon_sym_operator, [140356] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(6178), 1, anon_sym_LBRACE, STATE(3161), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [140379] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6508), 1, anon_sym_delete, ACTIONS(6510), 1, anon_sym_new, ACTIONS(6452), 2, anon_sym_TILDE, anon_sym_COLON_COLON, ACTIONS(6450), 3, sym_identifier, anon_sym_template, anon_sym_operator, [140398] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(4753), 1, anon_sym_COLON_COLON, ACTIONS(6470), 1, anon_sym_template, ACTIONS(6512), 1, sym_identifier, STATE(2172), 1, sym_template_type, STATE(2176), 1, sym_dependent_type_identifier, STATE(2322), 1, sym_qualified_type_identifier, STATE(4033), 1, sym__scope_resolution, [140423] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5890), 1, anon_sym_LBRACK, ACTIONS(6184), 1, anon_sym_RPAREN, STATE(3214), 1, sym_parameter_list, STATE(4098), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [140446] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(3290), 1, anon_sym_COLON_COLON, ACTIONS(6464), 1, sym_identifier, ACTIONS(6466), 1, anon_sym_template, STATE(2163), 1, sym_template_type, STATE(2164), 1, sym_dependent_type_identifier, STATE(2415), 1, sym_qualified_type_identifier, STATE(4035), 1, sym__scope_resolution, [140471] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(6514), 1, anon_sym_SEMI, STATE(3054), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [140494] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(6152), 1, anon_sym_LBRACE, STATE(3161), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [140517] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(6516), 1, anon_sym_SEMI, STATE(3054), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [140540] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(6190), 1, anon_sym_LBRACE, STATE(3161), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [140563] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(6214), 1, anon_sym_LBRACE, STATE(3161), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [140586] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(5858), 1, anon_sym_COLON_COLON, ACTIONS(6462), 1, sym_identifier, STATE(1895), 1, sym_qualified_type_identifier, STATE(2163), 1, sym_template_type, STATE(2164), 1, sym_dependent_type_identifier, STATE(4041), 1, sym__scope_resolution, [140611] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(4601), 1, anon_sym_COLON_COLON, ACTIONS(6488), 1, anon_sym_template, ACTIONS(6518), 1, sym_identifier, STATE(1895), 1, sym_qualified_type_identifier, STATE(1933), 1, sym_dependent_type_identifier, STATE(1945), 1, sym_template_type, STATE(4042), 1, sym__scope_resolution, [140636] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(6082), 1, anon_sym_COLON_COLON, ACTIONS(6520), 1, sym_identifier, STATE(3683), 1, sym__scope_resolution, STATE(5227), 1, sym_qualified_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [140659] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(6082), 1, anon_sym_COLON_COLON, ACTIONS(6522), 1, sym_identifier, STATE(3683), 1, sym__scope_resolution, STATE(5180), 1, sym_qualified_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [140682] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(6174), 1, anon_sym_LBRACE, STATE(3161), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [140705] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5890), 1, anon_sym_LBRACK, ACTIONS(6182), 1, anon_sym_RPAREN, STATE(3214), 1, sym_parameter_list, STATE(4098), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [140728] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5890), 1, anon_sym_LBRACK, ACTIONS(6146), 1, anon_sym_RPAREN, STATE(3214), 1, sym_parameter_list, STATE(4098), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [140751] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(4671), 1, anon_sym_COLON_COLON, ACTIONS(6524), 1, sym_identifier, ACTIONS(6526), 1, anon_sym_template, STATE(1808), 1, sym_dependent_type_identifier, STATE(1809), 1, sym_template_type, STATE(1829), 1, sym_qualified_type_identifier, STATE(4048), 1, sym__scope_resolution, [140776] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(5870), 1, anon_sym_COLON_COLON, ACTIONS(6462), 1, sym_identifier, STATE(2163), 1, sym_template_type, STATE(2164), 1, sym_dependent_type_identifier, STATE(2415), 1, sym_qualified_type_identifier, STATE(4049), 1, sym__scope_resolution, [140801] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(6082), 1, anon_sym_COLON_COLON, ACTIONS(6528), 1, sym_identifier, STATE(3683), 1, sym__scope_resolution, STATE(5254), 1, sym_qualified_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [140824] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(6530), 1, anon_sym_SEMI, STATE(3054), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [140847] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6532), 1, anon_sym_delete, ACTIONS(6534), 1, anon_sym_new, ACTIONS(6452), 2, anon_sym_TILDE, anon_sym_COLON_COLON, ACTIONS(6450), 3, sym_identifier, anon_sym_template, anon_sym_operator, [140866] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(6536), 1, anon_sym_LPAREN2, ACTIONS(6538), 1, anon_sym_LBRACE, STATE(4440), 1, sym_template_argument_list, STATE(4309), 2, sym_argument_list, sym_initializer_list, [140889] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(6082), 1, anon_sym_COLON_COLON, ACTIONS(6540), 1, sym_identifier, STATE(3683), 1, sym__scope_resolution, STATE(5431), 1, sym_qualified_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [140912] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(6082), 1, anon_sym_COLON_COLON, ACTIONS(6542), 1, sym_identifier, STATE(3683), 1, sym__scope_resolution, STATE(5286), 1, sym_qualified_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [140935] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(6544), 1, anon_sym_SEMI, STATE(3054), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [140958] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5890), 1, anon_sym_LBRACK, ACTIONS(6546), 1, anon_sym_RPAREN, STATE(3214), 1, sym_parameter_list, STATE(4098), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [140981] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(6082), 1, anon_sym_COLON_COLON, ACTIONS(6548), 1, sym_identifier, STATE(3683), 1, sym__scope_resolution, STATE(5388), 1, sym_qualified_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [141004] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, ACTIONS(6550), 1, anon_sym_SEMI, STATE(3054), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [141027] = 7, ACTIONS(3), 1, sym_comment, ACTIONS(931), 1, anon_sym_template, ACTIONS(6082), 1, anon_sym_COLON_COLON, ACTIONS(6552), 1, sym_identifier, STATE(3683), 1, sym__scope_resolution, STATE(5358), 1, sym_qualified_identifier, STATE(5384), 2, sym_template_type, sym_dependent_type_identifier, [141050] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3270), 1, sym_parameter_list, ACTIONS(5588), 3, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, [141068] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6560), 1, anon_sym_AMP, ACTIONS(6558), 5, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACE, anon_sym_LBRACK, [141082] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6564), 1, anon_sym_LBRACK, ACTIONS(6562), 5, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, [141096] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3272), 1, sym_parameter_list, ACTIONS(5588), 3, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_GT2, [141114] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6568), 1, anon_sym_LBRACK, ACTIONS(6566), 5, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, [141128] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3272), 1, sym_parameter_list, ACTIONS(6570), 3, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_GT2, [141146] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3281), 1, sym_parameter_list, ACTIONS(5613), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, [141164] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3272), 1, sym_parameter_list, ACTIONS(6572), 3, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_GT2, [141182] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6576), 1, anon_sym_AMP, ACTIONS(6574), 5, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACE, anon_sym_LBRACK, [141196] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6396), 1, anon_sym_AMP, ACTIONS(6394), 5, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACE, anon_sym_LBRACK, [141210] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3281), 1, sym_parameter_list, ACTIONS(4864), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, [141228] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3281), 1, sym_parameter_list, ACTIONS(6572), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, [141246] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3272), 1, sym_parameter_list, ACTIONS(6578), 3, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_GT2, [141264] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(5590), 1, anon_sym_LPAREN2, ACTIONS(5956), 1, anon_sym_LBRACK, STATE(2686), 1, sym_parameter_list, STATE(3761), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [141284] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3270), 1, sym_parameter_list, ACTIONS(6580), 3, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, [141302] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6582), 1, anon_sym_LBRACK, ACTIONS(6585), 1, anon_sym_EQ, ACTIONS(6587), 1, anon_sym_DOT, STATE(4076), 3, sym_subscript_designator, sym_field_designator, aux_sym_initializer_pair_repeat1, [141320] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6044), 1, anon_sym_TILDE, ACTIONS(6590), 1, sym_identifier, ACTIONS(6592), 1, anon_sym_template, STATE(2222), 3, sym_template_method, sym_destructor_name, sym_dependent_field_identifier, [141338] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3281), 1, sym_parameter_list, ACTIONS(5598), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, [141356] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6596), 1, anon_sym_LBRACK, ACTIONS(6594), 5, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, [141370] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3272), 1, sym_parameter_list, ACTIONS(4864), 3, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_GT2, [141388] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3272), 1, sym_parameter_list, ACTIONS(5613), 3, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_GT2, [141406] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5972), 1, anon_sym_TILDE, ACTIONS(6598), 1, sym_identifier, ACTIONS(6600), 1, anon_sym_template, STATE(1820), 3, sym_template_method, sym_destructor_name, sym_dependent_field_identifier, [141424] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3272), 1, sym_parameter_list, ACTIONS(5598), 3, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_GT2, [141442] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3272), 1, sym_parameter_list, ACTIONS(5617), 3, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_GT2, [141460] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6604), 1, anon_sym_LBRACK, ACTIONS(6602), 5, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, [141474] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5972), 1, anon_sym_TILDE, ACTIONS(6606), 1, sym_identifier, ACTIONS(6608), 1, anon_sym_template, STATE(1820), 3, sym_template_method, sym_destructor_name, sym_dependent_field_identifier, [141492] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6612), 1, anon_sym_LBRACK, ACTIONS(6610), 5, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, [141506] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6616), 1, anon_sym_LBRACK, ACTIONS(6614), 5, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, [141520] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6620), 1, anon_sym_AMP, ACTIONS(6618), 5, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACE, anon_sym_LBRACK, [141534] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3281), 1, sym_parameter_list, ACTIONS(6570), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, [141552] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3281), 1, sym_parameter_list, ACTIONS(6578), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, [141570] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3281), 1, sym_parameter_list, ACTIONS(5617), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, [141588] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6622), 1, anon_sym_LBRACK, ACTIONS(6624), 1, anon_sym_EQ, ACTIONS(6626), 1, anon_sym_DOT, STATE(4076), 3, sym_subscript_designator, sym_field_designator, aux_sym_initializer_pair_repeat1, [141606] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3270), 1, sym_parameter_list, ACTIONS(5598), 3, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, [141624] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6630), 1, anon_sym_LBRACK, ACTIONS(6628), 5, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, [141638] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3270), 1, sym_parameter_list, ACTIONS(4864), 3, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, [141656] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3272), 1, sym_parameter_list, ACTIONS(6632), 3, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_GT2, [141674] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3104), 1, anon_sym_LBRACK_LBRACK, ACTIONS(6256), 1, anon_sym_LBRACK, ACTIONS(6254), 2, anon_sym_RPAREN, anon_sym_LPAREN2, STATE(3780), 2, sym_attribute_declaration, aux_sym_attributed_declarator_repeat1, [141692] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6636), 1, anon_sym_LBRACK, ACTIONS(6634), 5, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_SEMI, anon_sym_LBRACK_LBRACK, [141706] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(6225), 1, anon_sym_LBRACK, STATE(3897), 1, sym_template_argument_list, ACTIONS(6221), 3, anon_sym_RPAREN, anon_sym_LPAREN2, anon_sym_LBRACK_LBRACK, [141724] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3281), 1, sym_parameter_list, ACTIONS(6632), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, [141742] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6638), 1, anon_sym_COMMA, STATE(4102), 1, aux_sym_field_declaration_repeat1, ACTIONS(6641), 4, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, anon_sym_COLON, [141758] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3270), 1, sym_parameter_list, ACTIONS(5613), 3, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, [141776] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3270), 1, sym_parameter_list, ACTIONS(5617), 3, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, [141794] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3281), 1, sym_parameter_list, ACTIONS(5588), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_SEMI, [141812] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2727), 1, anon_sym_AMP, ACTIONS(2725), 5, anon_sym_LPAREN2, anon_sym_STAR, anon_sym_AMP_AMP, anon_sym_LBRACE, anon_sym_LBRACK, [141826] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6643), 2, anon_sym_class, anon_sym_typename, STATE(4715), 3, sym_type_parameter_declaration, sym_variadic_type_parameter_declaration, sym_optional_type_parameter_declaration, [141839] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(6645), 1, anon_sym_SEMI, ACTIONS(6647), 1, anon_sym_EQ, STATE(2200), 1, sym_template_argument_list, [141858] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6158), 1, anon_sym_LBRACE, ACTIONS(6160), 1, anon_sym_EQ, STATE(1516), 1, sym_compound_statement, STATE(1515), 2, sym_default_method_clause, sym_delete_method_clause, [141875] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6158), 1, anon_sym_LBRACE, ACTIONS(6160), 1, anon_sym_EQ, STATE(1550), 1, sym_compound_statement, STATE(1546), 2, sym_default_method_clause, sym_delete_method_clause, [141892] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(6649), 1, anon_sym_SEMI, ACTIONS(6651), 1, anon_sym_EQ, STATE(2200), 1, sym_template_argument_list, [141911] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6653), 1, anon_sym_catch, ACTIONS(1738), 2, anon_sym_else, anon_sym_while, STATE(4112), 2, sym_catch_clause, aux_sym_try_statement_repeat1, [141926] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6656), 1, anon_sym_catch, ACTIONS(1732), 2, anon_sym_else, anon_sym_while, STATE(4112), 2, sym_catch_clause, aux_sym_try_statement_repeat1, [141941] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4520), 1, anon_sym_DOT_DOT_DOT, ACTIONS(4524), 1, anon_sym_EQ, ACTIONS(6658), 1, sym_identifier, ACTIONS(4522), 2, anon_sym_COMMA, anon_sym_GT2, [141958] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(245), 1, anon_sym_LBRACE, ACTIONS(6164), 1, anon_sym_EQ, STATE(376), 1, sym_compound_statement, STATE(375), 2, sym_default_method_clause, sym_delete_method_clause, [141975] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3272), 1, sym_parameter_list, ACTIONS(6328), 2, anon_sym_COMMA, anon_sym_GT2, [141992] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6136), 1, anon_sym_LBRACE, ACTIONS(6138), 1, anon_sym_EQ, STATE(1438), 1, sym_compound_statement, STATE(1439), 2, sym_default_method_clause, sym_delete_method_clause, [142009] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(6660), 1, anon_sym_SEMI, ACTIONS(6662), 1, anon_sym_EQ, STATE(2200), 1, sym_template_argument_list, [142028] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, STATE(4440), 1, sym_template_argument_list, ACTIONS(6664), 2, anon_sym_LPAREN2, anon_sym_LBRACE, [142045] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6136), 1, anon_sym_LBRACE, ACTIONS(6138), 1, anon_sym_EQ, STATE(1385), 1, sym_compound_statement, STATE(1426), 2, sym_default_method_clause, sym_delete_method_clause, [142062] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(6666), 1, anon_sym_SEMI, ACTIONS(6668), 1, anon_sym_EQ, STATE(2200), 1, sym_template_argument_list, [142081] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(245), 1, anon_sym_LBRACE, ACTIONS(6164), 1, anon_sym_EQ, STATE(395), 1, sym_compound_statement, STATE(394), 2, sym_default_method_clause, sym_delete_method_clause, [142098] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, anon_sym_LBRACE, ACTIONS(6150), 1, anon_sym_EQ, STATE(714), 1, sym_compound_statement, STATE(697), 2, sym_default_method_clause, sym_delete_method_clause, [142115] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(768), 1, anon_sym_LBRACE, ACTIONS(6144), 1, anon_sym_EQ, STATE(723), 1, sym_compound_statement, STATE(722), 2, sym_default_method_clause, sym_delete_method_clause, [142132] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3281), 1, sym_parameter_list, ACTIONS(6328), 2, anon_sym_COMMA, anon_sym_RPAREN, [142149] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(768), 1, anon_sym_LBRACE, ACTIONS(6144), 1, anon_sym_EQ, STATE(785), 1, sym_compound_statement, STATE(765), 2, sym_default_method_clause, sym_delete_method_clause, [142166] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(6670), 1, anon_sym_SEMI, ACTIONS(6672), 1, anon_sym_EQ, STATE(2200), 1, sym_template_argument_list, [142185] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(6674), 1, anon_sym_SEMI, ACTIONS(6676), 1, anon_sym_EQ, STATE(2200), 1, sym_template_argument_list, [142204] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6198), 1, anon_sym_LBRACE, ACTIONS(6200), 1, anon_sym_EQ, STATE(1562), 1, sym_compound_statement, STATE(1467), 2, sym_default_method_clause, sym_delete_method_clause, [142221] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, anon_sym_LBRACE, ACTIONS(6150), 1, anon_sym_EQ, STATE(720), 1, sym_compound_statement, STATE(718), 2, sym_default_method_clause, sym_delete_method_clause, [142238] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(6678), 1, anon_sym_SEMI, ACTIONS(6680), 1, anon_sym_EQ, STATE(2200), 1, sym_template_argument_list, [142257] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6684), 2, anon_sym_TILDE, anon_sym_COLON_COLON, ACTIONS(6682), 3, sym_identifier, anon_sym_template, anon_sym_operator, [142270] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(522), 1, anon_sym_LBRACE, ACTIONS(6194), 1, anon_sym_EQ, STATE(790), 1, sym_compound_statement, STATE(766), 2, sym_default_method_clause, sym_delete_method_clause, [142287] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(522), 1, anon_sym_LBRACE, ACTIONS(6194), 1, anon_sym_EQ, STATE(703), 1, sym_compound_statement, STATE(701), 2, sym_default_method_clause, sym_delete_method_clause, [142304] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4433), 1, anon_sym_LPAREN2, ACTIONS(6688), 1, anon_sym_COLON_COLON, STATE(4893), 1, sym_argument_list, ACTIONS(6686), 2, anon_sym_COMMA, anon_sym_RBRACK_RBRACK, [142321] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6692), 2, anon_sym_TILDE, anon_sym_COLON_COLON, ACTIONS(6690), 3, sym_identifier, anon_sym_template, anon_sym_operator, [142334] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6198), 1, anon_sym_LBRACE, ACTIONS(6200), 1, anon_sym_EQ, STATE(1502), 1, sym_compound_statement, STATE(1503), 2, sym_default_method_clause, sym_delete_method_clause, [142351] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2045), 1, sym_field_declaration_list, STATE(4768), 1, sym_base_class_clause, [142367] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6694), 1, anon_sym_DOT_DOT_DOT, ACTIONS(6696), 1, anon_sym_COMMA, ACTIONS(6698), 1, anon_sym_LBRACE, STATE(4493), 1, aux_sym_base_class_clause_repeat1, [142383] = 5, ACTIONS(5675), 1, sym_comment, ACTIONS(6700), 1, anon_sym_DQUOTE, ACTIONS(6702), 1, aux_sym_string_literal_token1, ACTIONS(6704), 1, sym_escape_sequence, STATE(4193), 1, aux_sym_string_literal_repeat1, [142399] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1738), 1, sym_field_declaration_list, STATE(4791), 1, sym_base_class_clause, [142415] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3990), 1, sym_field_declaration_list, STATE(4640), 1, sym_base_class_clause, [142431] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2553), 1, sym_field_declaration_list, STATE(4706), 1, sym_base_class_clause, [142447] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3016), 1, anon_sym_LBRACE, ACTIONS(6706), 1, sym_identifier, STATE(789), 1, sym_declaration_list, STATE(4576), 1, sym_namespace_definition_name, [142463] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3996), 1, sym_field_declaration_list, STATE(4637), 1, sym_base_class_clause, [142479] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6708), 1, anon_sym_COMMA, STATE(4146), 1, aux_sym_field_initializer_list_repeat1, ACTIONS(6711), 2, anon_sym_LBRACE, anon_sym_EQ, [142493] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3984), 1, sym_field_declaration_list, STATE(4641), 1, sym_base_class_clause, [142509] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2543), 1, sym_field_declaration_list, STATE(4698), 1, sym_base_class_clause, [142525] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2603), 1, sym_field_declaration_list, STATE(4751), 1, sym_base_class_clause, [142541] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3983), 1, sym_field_declaration_list, STATE(4644), 1, sym_base_class_clause, [142557] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2601), 1, sym_field_declaration_list, STATE(4759), 1, sym_base_class_clause, [142573] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6030), 1, anon_sym_LBRACE, STATE(1818), 1, sym_compound_statement, ACTIONS(5487), 2, anon_sym_LPAREN2, anon_sym_LBRACK, [142587] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2595), 1, sym_field_declaration_list, STATE(4760), 1, sym_base_class_clause, [142603] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, anon_sym_LBRACE, ACTIONS(6713), 1, anon_sym_SEMI, ACTIONS(6715), 1, anon_sym_EQ, STATE(767), 1, sym_compound_statement, [142619] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3979), 1, sym_field_declaration_list, STATE(4645), 1, sym_base_class_clause, [142635] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2594), 1, sym_field_declaration_list, STATE(4780), 1, sym_base_class_clause, [142651] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(522), 1, anon_sym_LBRACE, ACTIONS(6717), 1, anon_sym_SEMI, ACTIONS(6719), 1, anon_sym_EQ, STATE(677), 1, sym_compound_statement, [142667] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2590), 1, sym_field_declaration_list, STATE(4783), 1, sym_base_class_clause, [142683] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3971), 1, sym_field_declaration_list, STATE(4648), 1, sym_base_class_clause, [142699] = 5, ACTIONS(5675), 1, sym_comment, ACTIONS(6721), 1, anon_sym_LF, ACTIONS(6723), 1, anon_sym_LPAREN, ACTIONS(6725), 1, sym_preproc_arg, STATE(4844), 1, sym_preproc_params, [142715] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2589), 1, sym_field_declaration_list, STATE(4796), 1, sym_base_class_clause, [142731] = 5, ACTIONS(5675), 1, sym_comment, ACTIONS(6723), 1, anon_sym_LPAREN, ACTIONS(6727), 1, anon_sym_LF, ACTIONS(6729), 1, sym_preproc_arg, STATE(4708), 1, sym_preproc_params, [142747] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(6731), 1, anon_sym_SEMI, STATE(2200), 1, sym_template_argument_list, [142763] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(2993), 1, anon_sym_SEMI, ACTIONS(4107), 1, anon_sym_LT, STATE(2257), 1, sym_template_argument_list, [142779] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2538), 1, sym_field_declaration_list, STATE(4691), 1, sym_base_class_clause, [142795] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(6733), 1, anon_sym_DOT_DOT_DOT, ACTIONS(6735), 1, anon_sym_GT2, STATE(4593), 1, aux_sym_template_argument_list_repeat1, [142811] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3985), 1, sym_field_declaration_list, STATE(4628), 1, sym_base_class_clause, [142827] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(522), 1, anon_sym_LBRACE, ACTIONS(6737), 1, anon_sym_SEMI, ACTIONS(6739), 1, anon_sym_EQ, STATE(773), 1, sym_compound_statement, [142843] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3959), 1, sym_field_declaration_list, STATE(4626), 1, sym_base_class_clause, [142859] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3939), 1, sym_field_declaration_list, STATE(4623), 1, sym_base_class_clause, [142875] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3934), 1, sym_field_declaration_list, STATE(4621), 1, sym_base_class_clause, [142891] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(6741), 1, anon_sym_SEMI, STATE(2200), 1, sym_template_argument_list, [142907] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3943), 1, sym_field_declaration_list, STATE(4649), 1, sym_base_class_clause, [142923] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3038), 1, anon_sym_LBRACE, ACTIONS(6743), 1, sym_identifier, STATE(743), 1, sym_declaration_list, STATE(4468), 1, sym_namespace_definition_name, [142939] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3927), 1, sym_field_declaration_list, STATE(4619), 1, sym_base_class_clause, [142955] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3930), 1, sym_field_declaration_list, STATE(4650), 1, sym_base_class_clause, [142971] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3918), 1, sym_field_declaration_list, STATE(4618), 1, sym_base_class_clause, [142987] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, ACTIONS(6747), 1, anon_sym_COMMA, ACTIONS(6749), 1, anon_sym_RBRACE, STATE(4502), 1, sym_enumerator, [143003] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3901), 1, sym_field_declaration_list, STATE(4651), 1, sym_base_class_clause, [143019] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1734), 1, sym_field_declaration_list, STATE(4824), 1, sym_base_class_clause, [143035] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1741), 1, sym_field_declaration_list, STATE(4790), 1, sym_base_class_clause, [143051] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2537), 1, anon_sym_LT, ACTIONS(6751), 1, sym_identifier, STATE(821), 1, sym_template_parameter_list, STATE(2186), 1, sym_template_type, [143067] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2570), 1, sym_field_declaration_list, STATE(4819), 1, sym_base_class_clause, [143083] = 5, ACTIONS(5675), 1, sym_comment, ACTIONS(6753), 1, anon_sym_DQUOTE, ACTIONS(6755), 1, aux_sym_string_literal_token1, ACTIONS(6757), 1, sym_escape_sequence, STATE(4215), 1, aux_sym_string_literal_repeat1, [143099] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2127), 1, sym_field_declaration_list, STATE(4789), 1, sym_base_class_clause, [143115] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2323), 1, sym_field_declaration_list, STATE(4921), 1, sym_base_class_clause, [143131] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2564), 1, sym_field_declaration_list, STATE(4826), 1, sym_base_class_clause, [143147] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2227), 1, sym_field_declaration_list, STATE(4874), 1, sym_base_class_clause, [143163] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2285), 1, sym_field_declaration_list, STATE(4940), 1, sym_base_class_clause, [143179] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2226), 1, sym_field_declaration_list, STATE(4884), 1, sym_base_class_clause, [143195] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2534), 1, sym_field_declaration_list, STATE(4829), 1, sym_base_class_clause, [143211] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2291), 1, sym_field_declaration_list, STATE(4967), 1, sym_base_class_clause, [143227] = 5, ACTIONS(5675), 1, sym_comment, ACTIONS(6759), 1, anon_sym_DQUOTE, ACTIONS(6761), 1, aux_sym_string_literal_token1, ACTIONS(6763), 1, sym_escape_sequence, STATE(4307), 1, aux_sym_string_literal_repeat1, [143243] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2223), 1, sym_field_declaration_list, STATE(4889), 1, sym_base_class_clause, [143259] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4864), 1, anon_sym_LBRACE, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3330), 1, sym_parameter_list, [143275] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2221), 1, sym_field_declaration_list, STATE(4891), 1, sym_base_class_clause, [143291] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2215), 1, sym_field_declaration_list, STATE(4909), 1, sym_base_class_clause, [143307] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3016), 1, anon_sym_LBRACE, ACTIONS(6765), 1, anon_sym_COLON_COLON, ACTIONS(6767), 1, anon_sym_EQ, STATE(753), 1, sym_declaration_list, [143323] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6158), 1, anon_sym_LBRACE, ACTIONS(6769), 1, anon_sym_SEMI, ACTIONS(6771), 1, anon_sym_EQ, STATE(1541), 1, sym_compound_statement, [143339] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2214), 1, sym_field_declaration_list, STATE(5041), 1, sym_base_class_clause, [143355] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2168), 1, sym_field_declaration_list, STATE(4817), 1, sym_base_class_clause, [143371] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(6733), 1, anon_sym_DOT_DOT_DOT, ACTIONS(6773), 1, anon_sym_GT2, STATE(4557), 1, aux_sym_template_argument_list_repeat1, [143387] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2563), 1, sym_field_declaration_list, STATE(4709), 1, sym_base_class_clause, [143403] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6198), 1, anon_sym_LBRACE, ACTIONS(6775), 1, anon_sym_SEMI, ACTIONS(6777), 1, anon_sym_EQ, STATE(1513), 1, sym_compound_statement, [143419] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(6733), 1, anon_sym_DOT_DOT_DOT, ACTIONS(6779), 1, anon_sym_GT2, STATE(4480), 1, aux_sym_template_argument_list_repeat1, [143435] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3923), 1, sym_field_declaration_list, STATE(4635), 1, sym_base_class_clause, [143451] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3974), 1, sym_field_declaration_list, STATE(4638), 1, sym_base_class_clause, [143467] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6000), 1, anon_sym_LBRACE, STATE(2121), 1, sym_compound_statement, ACTIONS(5487), 2, anon_sym_LPAREN2, anon_sym_LBRACK, [143481] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(6781), 1, anon_sym_SEMI, STATE(2200), 1, sym_template_argument_list, [143497] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3991), 1, sym_field_declaration_list, STATE(4646), 1, sym_base_class_clause, [143513] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, ACTIONS(6783), 1, anon_sym_COMMA, ACTIONS(6785), 1, anon_sym_RBRACE, STATE(4578), 1, sym_enumerator, [143529] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(1792), 1, anon_sym_LBRACE, STATE(2653), 1, sym_compound_statement, ACTIONS(5487), 2, anon_sym_LPAREN2, anon_sym_LBRACK, [143543] = 5, ACTIONS(5675), 1, sym_comment, ACTIONS(6723), 1, anon_sym_LPAREN, ACTIONS(6787), 1, anon_sym_LF, ACTIONS(6789), 1, sym_preproc_arg, STATE(4665), 1, sym_preproc_params, [143559] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6158), 1, anon_sym_LBRACE, ACTIONS(6791), 1, anon_sym_SEMI, ACTIONS(6793), 1, anon_sym_EQ, STATE(1563), 1, sym_compound_statement, [143575] = 5, ACTIONS(5675), 1, sym_comment, ACTIONS(6761), 1, aux_sym_string_literal_token1, ACTIONS(6763), 1, sym_escape_sequence, ACTIONS(6795), 1, anon_sym_DQUOTE, STATE(4307), 1, aux_sym_string_literal_repeat1, [143591] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3014), 1, anon_sym_LBRACE, ACTIONS(6765), 1, anon_sym_COLON_COLON, ACTIONS(6797), 1, anon_sym_EQ, STATE(672), 1, sym_declaration_list, [143607] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(6733), 1, anon_sym_DOT_DOT_DOT, ACTIONS(6799), 1, anon_sym_GT2, STATE(4540), 1, aux_sym_template_argument_list_repeat1, [143623] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(6801), 1, anon_sym_SEMI, STATE(2200), 1, sym_template_argument_list, [143639] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(6733), 1, anon_sym_DOT_DOT_DOT, ACTIONS(6803), 1, anon_sym_GT2, STATE(4529), 1, aux_sym_template_argument_list_repeat1, [143655] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2566), 1, sym_field_declaration_list, STATE(4710), 1, sym_base_class_clause, [143671] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, anon_sym_LBRACE, ACTIONS(6805), 1, anon_sym_SEMI, ACTIONS(6807), 1, anon_sym_EQ, STATE(686), 1, sym_compound_statement, [143687] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1750), 1, sym_field_declaration_list, STATE(4667), 1, sym_base_class_clause, [143703] = 5, ACTIONS(5675), 1, sym_comment, ACTIONS(6809), 1, anon_sym_DQUOTE, ACTIONS(6811), 1, aux_sym_string_literal_token1, ACTIONS(6813), 1, sym_escape_sequence, STATE(4255), 1, aux_sym_string_literal_repeat1, [143719] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1751), 1, sym_field_declaration_list, STATE(4653), 1, sym_base_class_clause, [143735] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5598), 1, anon_sym_LBRACE, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3330), 1, sym_parameter_list, [143751] = 5, ACTIONS(5675), 1, sym_comment, ACTIONS(6761), 1, aux_sym_string_literal_token1, ACTIONS(6763), 1, sym_escape_sequence, ACTIONS(6815), 1, anon_sym_DQUOTE, STATE(4307), 1, aux_sym_string_literal_repeat1, [143767] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1756), 1, sym_field_declaration_list, STATE(4631), 1, sym_base_class_clause, [143783] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, ACTIONS(6817), 1, anon_sym_RPAREN, STATE(3281), 1, sym_parameter_list, [143799] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(768), 1, anon_sym_LBRACE, ACTIONS(6819), 1, anon_sym_SEMI, ACTIONS(6821), 1, anon_sym_EQ, STATE(772), 1, sym_compound_statement, [143815] = 5, ACTIONS(5675), 1, sym_comment, ACTIONS(6723), 1, anon_sym_LPAREN, ACTIONS(6823), 1, anon_sym_LF, ACTIONS(6825), 1, sym_preproc_arg, STATE(4929), 1, sym_preproc_params, [143831] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2063), 1, sym_field_declaration_list, STATE(4714), 1, sym_base_class_clause, [143847] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1757), 1, sym_field_declaration_list, STATE(4616), 1, sym_base_class_clause, [143863] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2060), 1, sym_field_declaration_list, STATE(4717), 1, sym_base_class_clause, [143879] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2260), 1, sym_field_declaration_list, STATE(4917), 1, sym_base_class_clause, [143895] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1761), 1, sym_field_declaration_list, STATE(4654), 1, sym_base_class_clause, [143911] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2099), 1, sym_field_declaration_list, STATE(4986), 1, sym_base_class_clause, [143927] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, ACTIONS(6827), 1, anon_sym_COMMA, ACTIONS(6829), 1, anon_sym_RBRACE, STATE(4460), 1, sym_enumerator, [143943] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1763), 1, sym_field_declaration_list, STATE(4657), 1, sym_base_class_clause, [143959] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2573), 1, sym_field_declaration_list, STATE(4652), 1, sym_base_class_clause, [143975] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2484), 1, sym_field_declaration_list, STATE(4941), 1, sym_base_class_clause, [143991] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2100), 1, sym_field_declaration_list, STATE(5000), 1, sym_base_class_clause, [144007] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2482), 1, sym_field_declaration_list, STATE(4946), 1, sym_base_class_clause, [144023] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2105), 1, sym_field_declaration_list, STATE(5001), 1, sym_base_class_clause, [144039] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2479), 1, sym_field_declaration_list, STATE(4959), 1, sym_base_class_clause, [144055] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5588), 1, anon_sym_LBRACE, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3330), 1, sym_parameter_list, [144071] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2106), 1, sym_field_declaration_list, STATE(5009), 1, sym_base_class_clause, [144087] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2057), 1, sym_field_declaration_list, STATE(4718), 1, sym_base_class_clause, [144103] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2116), 1, sym_field_declaration_list, STATE(5023), 1, sym_base_class_clause, [144119] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2600), 1, sym_field_declaration_list, STATE(4775), 1, sym_base_class_clause, [144135] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2266), 1, sym_field_declaration_list, STATE(4898), 1, sym_base_class_clause, [144151] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2587), 1, sym_field_declaration_list, STATE(4722), 1, sym_base_class_clause, [144167] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2548), 1, sym_field_declaration_list, STATE(4704), 1, sym_base_class_clause, [144183] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2117), 1, sym_field_declaration_list, STATE(5033), 1, sym_base_class_clause, [144199] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2287), 1, sym_field_declaration_list, STATE(4897), 1, sym_base_class_clause, [144215] = 5, ACTIONS(5675), 1, sym_comment, ACTIONS(6761), 1, aux_sym_string_literal_token1, ACTIONS(6763), 1, sym_escape_sequence, ACTIONS(6831), 1, anon_sym_DQUOTE, STATE(4307), 1, aux_sym_string_literal_repeat1, [144231] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, ACTIONS(6833), 1, anon_sym_COMMA, ACTIONS(6835), 1, anon_sym_RBRACE, STATE(4597), 1, sym_enumerator, [144247] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2052), 1, sym_field_declaration_list, STATE(4747), 1, sym_base_class_clause, [144263] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2537), 1, anon_sym_LT, ACTIONS(6751), 1, sym_identifier, STATE(839), 1, sym_template_parameter_list, STATE(2186), 1, sym_template_type, [144279] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3038), 1, anon_sym_LBRACE, ACTIONS(6765), 1, anon_sym_COLON_COLON, ACTIONS(6837), 1, anon_sym_EQ, STATE(798), 1, sym_declaration_list, [144295] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2051), 1, sym_field_declaration_list, STATE(4761), 1, sym_base_class_clause, [144311] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6696), 1, anon_sym_COMMA, ACTIONS(6839), 1, anon_sym_DOT_DOT_DOT, ACTIONS(6841), 1, anon_sym_LBRACE, STATE(4385), 1, aux_sym_base_class_clause_repeat1, [144327] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2046), 1, sym_field_declaration_list, STATE(4764), 1, sym_base_class_clause, [144343] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2537), 1, anon_sym_LT, ACTIONS(6751), 1, sym_identifier, STATE(837), 1, sym_template_parameter_list, STATE(2186), 1, sym_template_type, [144359] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2308), 1, sym_field_declaration_list, STATE(4960), 1, sym_base_class_clause, [144375] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2042), 1, sym_field_declaration_list, STATE(4776), 1, sym_base_class_clause, [144391] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5617), 1, anon_sym_LBRACE, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3330), 1, sym_parameter_list, [144407] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2040), 1, sym_field_declaration_list, STATE(4782), 1, sym_base_class_clause, [144423] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(768), 1, anon_sym_LBRACE, ACTIONS(6843), 1, anon_sym_SEMI, ACTIONS(6845), 1, anon_sym_EQ, STATE(716), 1, sym_compound_statement, [144439] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2137), 1, sym_field_declaration_list, STATE(4809), 1, sym_base_class_clause, [144455] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2305), 1, sym_field_declaration_list, STATE(4958), 1, sym_base_class_clause, [144471] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, ACTIONS(6847), 1, anon_sym_COMMA, ACTIONS(6849), 1, anon_sym_RBRACE, STATE(4581), 1, sym_enumerator, [144487] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(6851), 1, anon_sym_SEMI, STATE(2200), 1, sym_template_argument_list, [144503] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(6733), 1, anon_sym_DOT_DOT_DOT, ACTIONS(6853), 1, anon_sym_GT2, STATE(4526), 1, aux_sym_template_argument_list_repeat1, [144519] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(6855), 1, anon_sym_SEMI, STATE(2200), 1, sym_template_argument_list, [144535] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(6733), 1, anon_sym_DOT_DOT_DOT, ACTIONS(6857), 1, anon_sym_GT2, STATE(4500), 1, aux_sym_template_argument_list_repeat1, [144551] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(6859), 1, anon_sym_SEMI, STATE(2200), 1, sym_template_argument_list, [144567] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(6733), 1, anon_sym_DOT_DOT_DOT, ACTIONS(6861), 1, anon_sym_GT2, STATE(4589), 1, aux_sym_template_argument_list_repeat1, [144583] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2288), 1, sym_field_declaration_list, STATE(4955), 1, sym_base_class_clause, [144599] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1806), 1, sym_field_declaration_list, STATE(4732), 1, sym_base_class_clause, [144615] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2465), 1, sym_field_declaration_list, STATE(4992), 1, sym_base_class_clause, [144631] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2035), 1, sym_field_declaration_list, STATE(4794), 1, sym_base_class_clause, [144647] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2464), 1, sym_field_declaration_list, STATE(5003), 1, sym_base_class_clause, [144663] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1798), 1, sym_field_declaration_list, STATE(4735), 1, sym_base_class_clause, [144679] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2462), 1, sym_field_declaration_list, STATE(5016), 1, sym_base_class_clause, [144695] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2283), 1, sym_field_declaration_list, STATE(4953), 1, sym_base_class_clause, [144711] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2390), 1, sym_field_declaration_list, STATE(5020), 1, sym_base_class_clause, [144727] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2034), 1, sym_field_declaration_list, STATE(4688), 1, sym_base_class_clause, [144743] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2458), 1, sym_field_declaration_list, STATE(5025), 1, sym_base_class_clause, [144759] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1793), 1, sym_field_declaration_list, STATE(4739), 1, sym_base_class_clause, [144775] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2457), 1, sym_field_declaration_list, STATE(5027), 1, sym_base_class_clause, [144791] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2277), 1, sym_field_declaration_list, STATE(4950), 1, sym_base_class_clause, [144807] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2032), 1, sym_field_declaration_list, STATE(4808), 1, sym_base_class_clause, [144823] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1792), 1, sym_field_declaration_list, STATE(4754), 1, sym_base_class_clause, [144839] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2272), 1, sym_field_declaration_list, STATE(4916), 1, sym_base_class_clause, [144855] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2031), 1, sym_field_declaration_list, STATE(4813), 1, sym_base_class_clause, [144871] = 5, ACTIONS(5675), 1, sym_comment, ACTIONS(6723), 1, anon_sym_LPAREN, ACTIONS(6863), 1, anon_sym_LF, ACTIONS(6865), 1, sym_preproc_arg, STATE(4816), 1, sym_preproc_params, [144887] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(6733), 1, anon_sym_DOT_DOT_DOT, ACTIONS(6867), 1, anon_sym_GT2, STATE(4400), 1, aux_sym_template_argument_list_repeat1, [144903] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1764), 1, sym_field_declaration_list, STATE(4858), 1, sym_base_class_clause, [144919] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2029), 1, sym_field_declaration_list, STATE(4818), 1, sym_base_class_clause, [144935] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(6869), 1, anon_sym_SEMI, STATE(2200), 1, sym_template_argument_list, [144951] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1775), 1, sym_field_declaration_list, STATE(4770), 1, sym_base_class_clause, [144967] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2537), 1, anon_sym_LT, ACTIONS(6751), 1, sym_identifier, STATE(835), 1, sym_template_parameter_list, STATE(2186), 1, sym_template_type, [144983] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2028), 1, sym_field_declaration_list, STATE(4821), 1, sym_base_class_clause, [144999] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6871), 1, anon_sym_DOT_DOT_DOT, ACTIONS(6873), 3, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_EQ, [145011] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6198), 1, anon_sym_LBRACE, ACTIONS(6875), 1, anon_sym_SEMI, ACTIONS(6877), 1, anon_sym_EQ, STATE(1468), 1, sym_compound_statement, [145027] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6879), 1, anon_sym_COMMA, STATE(4146), 1, aux_sym_field_initializer_list_repeat1, ACTIONS(6881), 2, anon_sym_LBRACE, anon_sym_EQ, [145041] = 5, ACTIONS(5675), 1, sym_comment, ACTIONS(6883), 1, anon_sym_DQUOTE, ACTIONS(6885), 1, aux_sym_string_literal_token1, ACTIONS(6888), 1, sym_escape_sequence, STATE(4307), 1, aux_sym_string_literal_repeat1, [145057] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(6733), 1, anon_sym_DOT_DOT_DOT, ACTIONS(6891), 1, anon_sym_GT2, STATE(4411), 1, aux_sym_template_argument_list_repeat1, [145073] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6893), 1, anon_sym_DOT_DOT_DOT, ACTIONS(6895), 3, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_EQ, [145085] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6136), 1, anon_sym_LBRACE, ACTIONS(6897), 1, anon_sym_SEMI, ACTIONS(6899), 1, anon_sym_EQ, STATE(1430), 1, sym_compound_statement, [145101] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2132), 1, sym_field_declaration_list, STATE(4835), 1, sym_base_class_clause, [145117] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(6901), 1, anon_sym_SEMI, STATE(2200), 1, sym_template_argument_list, [145133] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2537), 1, anon_sym_LT, ACTIONS(6751), 1, sym_identifier, STATE(2186), 1, sym_template_type, STATE(4107), 1, sym_template_parameter_list, [145149] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(6903), 1, anon_sym_SEMI, STATE(2200), 1, sym_template_argument_list, [145165] = 5, ACTIONS(5675), 1, sym_comment, ACTIONS(6761), 1, aux_sym_string_literal_token1, ACTIONS(6763), 1, sym_escape_sequence, ACTIONS(6905), 1, anon_sym_DQUOTE, STATE(4307), 1, aux_sym_string_literal_repeat1, [145181] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(245), 1, anon_sym_LBRACE, ACTIONS(6907), 1, anon_sym_SEMI, ACTIONS(6909), 1, anon_sym_EQ, STATE(365), 1, sym_compound_statement, [145197] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3014), 1, anon_sym_LBRACE, ACTIONS(6911), 1, sym_identifier, STATE(754), 1, sym_declaration_list, STATE(4549), 1, sym_namespace_definition_name, [145213] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2448), 1, sym_field_declaration_list, STATE(5055), 1, sym_base_class_clause, [145229] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6913), 1, sym_identifier, ACTIONS(6915), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_GT2, [145241] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2139), 1, sym_field_declaration_list, STATE(5052), 1, sym_base_class_clause, [145257] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2447), 1, sym_field_declaration_list, STATE(5054), 1, sym_base_class_clause, [145273] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2974), 1, anon_sym_COLON_COLON, ACTIONS(4107), 1, anon_sym_LT, ACTIONS(6917), 1, anon_sym_SEMI, STATE(2200), 1, sym_template_argument_list, [145289] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2444), 1, sym_field_declaration_list, STATE(5049), 1, sym_base_class_clause, [145305] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5940), 1, anon_sym_LBRACE, STATE(3112), 1, sym_compound_statement, ACTIONS(5487), 2, anon_sym_LPAREN2, anon_sym_LBRACK, [145319] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2019), 1, sym_field_declaration_list, STATE(4857), 1, sym_base_class_clause, [145335] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2443), 1, sym_field_declaration_list, STATE(5044), 1, sym_base_class_clause, [145351] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2537), 1, anon_sym_LT, ACTIONS(6751), 1, sym_identifier, STATE(842), 1, sym_template_parameter_list, STATE(2186), 1, sym_template_type, [145367] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2440), 1, sym_field_declaration_list, STATE(5043), 1, sym_base_class_clause, [145383] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2017), 1, sym_field_declaration_list, STATE(4862), 1, sym_base_class_clause, [145399] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2015), 1, sym_field_declaration_list, STATE(4871), 1, sym_base_class_clause, [145415] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2439), 1, sym_field_declaration_list, STATE(5026), 1, sym_base_class_clause, [145431] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2143), 1, sym_field_declaration_list, STATE(5059), 1, sym_base_class_clause, [145447] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, ACTIONS(6919), 1, anon_sym_COMMA, ACTIONS(6921), 1, anon_sym_RBRACE, STATE(4444), 1, sym_enumerator, [145463] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6879), 1, anon_sym_COMMA, STATE(4306), 1, aux_sym_field_initializer_list_repeat1, ACTIONS(6923), 2, anon_sym_LBRACE, anon_sym_EQ, [145477] = 5, ACTIONS(5675), 1, sym_comment, ACTIONS(6925), 1, anon_sym_DQUOTE, ACTIONS(6927), 1, aux_sym_string_literal_token1, ACTIONS(6929), 1, sym_escape_sequence, STATE(4226), 1, aux_sym_string_literal_repeat1, [145493] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6536), 1, anon_sym_LPAREN2, ACTIONS(6538), 1, anon_sym_LBRACE, STATE(4304), 2, sym_argument_list, sym_initializer_list, [145507] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2256), 1, sym_field_declaration_list, STATE(4765), 1, sym_base_class_clause, [145523] = 5, ACTIONS(5675), 1, sym_comment, ACTIONS(6723), 1, anon_sym_LPAREN, ACTIONS(6931), 1, anon_sym_LF, ACTIONS(6933), 1, sym_preproc_arg, STATE(4881), 1, sym_preproc_params, [145539] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6136), 1, anon_sym_LBRACE, ACTIONS(6935), 1, anon_sym_SEMI, ACTIONS(6937), 1, anon_sym_EQ, STATE(1409), 1, sym_compound_statement, [145555] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2309), 1, sym_field_declaration_list, STATE(4769), 1, sym_base_class_clause, [145571] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, ACTIONS(6939), 1, anon_sym_RPAREN, STATE(3281), 1, sym_parameter_list, [145587] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2296), 1, sym_field_declaration_list, STATE(4773), 1, sym_base_class_clause, [145603] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2295), 1, sym_field_declaration_list, STATE(4612), 1, sym_base_class_clause, [145619] = 5, ACTIONS(5675), 1, sym_comment, ACTIONS(6941), 1, anon_sym_DQUOTE, ACTIONS(6943), 1, aux_sym_string_literal_token1, ACTIONS(6945), 1, sym_escape_sequence, STATE(4315), 1, aux_sym_string_literal_repeat1, [145635] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2284), 1, sym_field_declaration_list, STATE(4785), 1, sym_base_class_clause, [145651] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2282), 1, sym_field_declaration_list, STATE(4788), 1, sym_base_class_clause, [145667] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2537), 1, anon_sym_LT, ACTIONS(6751), 1, sym_identifier, STATE(834), 1, sym_template_parameter_list, STATE(2186), 1, sym_template_type, [145683] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2433), 1, sym_field_declaration_list, STATE(5015), 1, sym_base_class_clause, [145699] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(2537), 1, anon_sym_LT, ACTIONS(6751), 1, sym_identifier, STATE(827), 1, sym_template_parameter_list, STATE(2186), 1, sym_template_type, [145715] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3012), 1, anon_sym_LBRACE, ACTIONS(6765), 1, anon_sym_COLON_COLON, ACTIONS(6947), 1, anon_sym_EQ, STATE(398), 1, sym_declaration_list, [145731] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3450), 4, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_EQ, [145741] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2430), 1, sym_field_declaration_list, STATE(5012), 1, sym_base_class_clause, [145757] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3442), 4, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_EQ, [145767] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3488), 4, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_EQ, [145777] = 5, ACTIONS(5675), 1, sym_comment, ACTIONS(6949), 1, anon_sym_DQUOTE, ACTIONS(6951), 1, aux_sym_string_literal_token1, ACTIONS(6953), 1, sym_escape_sequence, STATE(4370), 1, aux_sym_string_literal_repeat1, [145793] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3316), 1, anon_sym_COLON, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2427), 1, sym_field_declaration_list, STATE(5008), 1, sym_base_class_clause, [145809] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4047), 4, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_EQ, [145819] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3012), 1, anon_sym_LBRACE, ACTIONS(6955), 1, sym_identifier, STATE(417), 1, sym_declaration_list, STATE(4387), 1, sym_namespace_definition_name, [145835] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3993), 4, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_EQ, [145845] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1936), 4, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_EQ, [145855] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3967), 4, anon_sym_DOT_DOT_DOT, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_EQ, [145865] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(245), 1, anon_sym_LBRACE, ACTIONS(6957), 1, anon_sym_SEMI, ACTIONS(6959), 1, anon_sym_EQ, STATE(409), 1, sym_compound_statement, [145881] = 5, ACTIONS(5675), 1, sym_comment, ACTIONS(6723), 1, anon_sym_LPAREN, ACTIONS(6961), 1, anon_sym_LF, ACTIONS(6963), 1, sym_preproc_arg, STATE(4911), 1, sym_preproc_params, [145897] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4433), 1, anon_sym_LPAREN2, STATE(4827), 1, sym_argument_list, ACTIONS(6965), 2, anon_sym_COMMA, anon_sym_RBRACK_RBRACK, [145911] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, ACTIONS(6967), 1, anon_sym_COMMA, ACTIONS(6969), 1, anon_sym_RBRACE, STATE(4432), 1, sym_enumerator, [145927] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1749), 1, sym_field_declaration_list, STATE(4863), 1, sym_base_class_clause, [145943] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(5613), 1, anon_sym_LBRACE, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3330), 1, sym_parameter_list, [145959] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1788), 1, sym_field_declaration_list, STATE(4762), 1, sym_base_class_clause, [145975] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, ACTIONS(3316), 1, anon_sym_COLON, STATE(1765), 1, sym_field_declaration_list, STATE(4853), 1, sym_base_class_clause, [145991] = 5, ACTIONS(5675), 1, sym_comment, ACTIONS(6761), 1, aux_sym_string_literal_token1, ACTIONS(6763), 1, sym_escape_sequence, ACTIONS(6971), 1, anon_sym_DQUOTE, STATE(4307), 1, aux_sym_string_literal_repeat1, [146007] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(6973), 1, anon_sym_GT2, STATE(4399), 1, aux_sym_template_argument_list_repeat1, [146020] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6696), 1, anon_sym_COMMA, ACTIONS(6975), 1, anon_sym_LBRACE, STATE(4430), 1, aux_sym_base_class_clause_repeat1, [146033] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6977), 1, anon_sym_COMMA, ACTIONS(6980), 1, anon_sym_RBRACK, STATE(4373), 1, aux_sym_structured_binding_declarator_repeat1, [146046] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(6982), 1, anon_sym_SEMI, STATE(4471), 1, aux_sym_type_definition_repeat2, [146059] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6984), 1, anon_sym_COMMA, ACTIONS(6986), 1, anon_sym_RBRACK_RBRACK, STATE(4421), 1, aux_sym_attribute_declaration_repeat1, [146072] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(6988), 1, anon_sym_SEMI, STATE(4471), 1, aux_sym_type_definition_repeat2, [146085] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6990), 1, sym_identifier, STATE(1819), 1, sym_template_function, STATE(2186), 1, sym_template_type, [146098] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, ACTIONS(6992), 1, anon_sym_RBRACE, STATE(4814), 1, sym_enumerator, [146111] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6992), 1, anon_sym_RBRACE, ACTIONS(6994), 1, anon_sym_COMMA, STATE(4537), 1, aux_sym_enumerator_list_repeat1, [146124] = 4, ACTIONS(5673), 1, anon_sym_LPAREN2, ACTIONS(5675), 1, sym_comment, ACTIONS(6996), 1, anon_sym_LF, STATE(3431), 1, sym_preproc_argument_list, [146137] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4733), 1, anon_sym_COMMA, ACTIONS(6998), 1, anon_sym_RPAREN, STATE(4476), 1, aux_sym_argument_list_repeat1, [146150] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6696), 1, anon_sym_COMMA, ACTIONS(6698), 1, anon_sym_LBRACE, STATE(4493), 1, aux_sym_base_class_clause_repeat1, [146163] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7000), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [146176] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7002), 1, anon_sym_COMMA, ACTIONS(7004), 1, anon_sym_RPAREN, STATE(4492), 1, aux_sym_throw_specifier_repeat1, [146189] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6696), 1, anon_sym_COMMA, ACTIONS(6698), 1, anon_sym_LBRACE, STATE(4497), 1, aux_sym_base_class_clause_repeat1, [146202] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7006), 1, sym_identifier, STATE(1822), 1, sym_template_function, STATE(2186), 1, sym_template_type, [146215] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3012), 1, anon_sym_LBRACE, ACTIONS(6765), 1, anon_sym_COLON_COLON, STATE(398), 1, sym_declaration_list, [146228] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7008), 1, anon_sym_LPAREN2, ACTIONS(7010), 1, anon_sym_constexpr, STATE(219), 1, sym_condition_clause, [146241] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7012), 1, sym_identifier, STATE(1822), 1, sym_template_function, STATE(2186), 1, sym_template_type, [146254] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7002), 1, anon_sym_COMMA, ACTIONS(7014), 1, anon_sym_RPAREN, STATE(4492), 1, aux_sym_throw_specifier_repeat1, [146267] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7008), 1, anon_sym_LPAREN2, ACTIONS(7016), 1, anon_sym_constexpr, STATE(179), 1, sym_condition_clause, [146280] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, ACTIONS(7018), 1, anon_sym_RBRACE, STATE(4814), 1, sym_enumerator, [146293] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(7020), 1, anon_sym_SEMI, STATE(4471), 1, aux_sym_type_definition_repeat2, [146306] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7022), 1, anon_sym_COMMA, ACTIONS(7024), 1, anon_sym_RPAREN, STATE(4465), 1, aux_sym_preproc_params_repeat1, [146319] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4363), 1, anon_sym_EQ, ACTIONS(4361), 2, anon_sym_COMMA, anon_sym_GT2, [146330] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7026), 1, anon_sym_SEMI, STATE(4437), 1, aux_sym_declaration_repeat1, [146343] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6398), 3, anon_sym_LBRACK, anon_sym_EQ, anon_sym_DOT, [146352] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7002), 1, anon_sym_COMMA, ACTIONS(7028), 1, anon_sym_RPAREN, STATE(4384), 1, aux_sym_throw_specifier_repeat1, [146365] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7030), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [146378] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7032), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [146391] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7034), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [146404] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7036), 1, anon_sym_COMMA, ACTIONS(7039), 1, anon_sym_RBRACK_RBRACK, STATE(4402), 1, aux_sym_attribute_declaration_repeat1, [146417] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6656), 1, anon_sym_catch, STATE(4113), 2, sym_catch_clause, aux_sym_try_statement_repeat1, [146428] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7041), 3, anon_sym_LBRACK, anon_sym_EQ, anon_sym_DOT, [146437] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(2575), 1, anon_sym_RBRACE, ACTIONS(7043), 1, anon_sym_COMMA, STATE(4516), 1, aux_sym_initializer_list_repeat1, [146450] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7045), 1, anon_sym_SEMI, STATE(4482), 1, aux_sym_declaration_repeat1, [146463] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(2621), 1, anon_sym_RBRACE, ACTIONS(7047), 1, anon_sym_COMMA, STATE(4516), 1, aux_sym_initializer_list_repeat1, [146476] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7049), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [146489] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4825), 1, anon_sym_COMMA, ACTIONS(4827), 1, anon_sym_RBRACE, STATE(4594), 1, aux_sym_initializer_list_repeat1, [146502] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7051), 1, anon_sym_COMMA, ACTIONS(7053), 1, anon_sym_RPAREN, STATE(4438), 1, aux_sym_parameter_list_repeat1, [146515] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7055), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [146528] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7057), 1, anon_sym_SEMI, STATE(4437), 1, aux_sym_declaration_repeat1, [146541] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7059), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [146554] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7061), 1, sym_identifier, STATE(1822), 1, sym_template_function, STATE(2186), 1, sym_template_type, [146567] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7063), 1, sym_identifier, ACTIONS(7065), 2, anon_sym_COMMA, anon_sym_GT2, [146578] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7067), 1, anon_sym_SEMI, STATE(4437), 1, aux_sym_declaration_repeat1, [146591] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7071), 1, anon_sym_EQ, ACTIONS(7069), 2, anon_sym_COMMA, anon_sym_RBRACE, [146602] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7073), 1, sym_identifier, STATE(1819), 1, sym_template_function, STATE(2186), 1, sym_template_type, [146615] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7075), 1, anon_sym_COMMA, ACTIONS(7077), 1, anon_sym_GT2, STATE(4426), 1, aux_sym_template_parameter_list_repeat1, [146628] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7079), 1, sym_identifier, STATE(1819), 1, sym_template_function, STATE(2186), 1, sym_template_type, [146641] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6984), 1, anon_sym_COMMA, ACTIONS(7081), 1, anon_sym_RBRACK_RBRACK, STATE(4402), 1, aux_sym_attribute_declaration_repeat1, [146654] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4733), 1, anon_sym_COMMA, ACTIONS(4793), 1, anon_sym_RPAREN, STATE(4498), 1, aux_sym_argument_list_repeat1, [146667] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7083), 1, anon_sym_COMMA, ACTIONS(7085), 1, anon_sym_RBRACE, STATE(4537), 1, aux_sym_enumerator_list_repeat1, [146680] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7087), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_GT2, [146689] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7087), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_GT2, [146698] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7075), 1, anon_sym_COMMA, ACTIONS(7089), 1, anon_sym_GT2, STATE(4575), 1, aux_sym_template_parameter_list_repeat1, [146711] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6984), 1, anon_sym_COMMA, ACTIONS(7091), 1, anon_sym_RBRACK_RBRACK, STATE(4585), 1, aux_sym_attribute_declaration_repeat1, [146724] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, ACTIONS(7085), 1, anon_sym_RBRACE, STATE(4814), 1, sym_enumerator, [146737] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7093), 1, anon_sym_DOT_DOT_DOT, ACTIONS(7095), 2, anon_sym_COMMA, anon_sym_LBRACE, [146748] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6696), 1, anon_sym_COMMA, ACTIONS(7097), 1, anon_sym_LBRACE, STATE(4497), 1, aux_sym_base_class_clause_repeat1, [146761] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7099), 1, anon_sym_catch, STATE(854), 2, sym_catch_clause, aux_sym_try_statement_repeat1, [146772] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7101), 1, anon_sym_COMMA, ACTIONS(7103), 1, anon_sym_RBRACE, STATE(4505), 1, aux_sym_enumerator_list_repeat1, [146785] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7105), 1, anon_sym_SEMI, STATE(4467), 1, aux_sym_declaration_repeat1, [146798] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4733), 1, anon_sym_COMMA, ACTIONS(7107), 1, anon_sym_RPAREN, STATE(4476), 1, aux_sym_argument_list_repeat1, [146811] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7109), 1, sym_identifier, STATE(2118), 1, sym_template_function, STATE(2198), 1, sym_template_type, [146824] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(7111), 1, anon_sym_SEMI, STATE(4471), 1, aux_sym_type_definition_repeat2, [146837] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7113), 1, anon_sym_COMMA, ACTIONS(7116), 1, anon_sym_SEMI, STATE(4437), 1, aux_sym_declaration_repeat1, [146850] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7051), 1, anon_sym_COMMA, ACTIONS(7118), 1, anon_sym_RPAREN, STATE(4573), 1, aux_sym_parameter_list_repeat1, [146863] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7120), 1, anon_sym_SEMI, STATE(4437), 1, aux_sym_declaration_repeat1, [146876] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3073), 1, anon_sym_COLON_COLON, ACTIONS(4035), 2, anon_sym_LPAREN2, anon_sym_LBRACE, [146887] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7122), 1, anon_sym_GT2, STATE(4413), 1, aux_sym_template_argument_list_repeat1, [146900] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4733), 1, anon_sym_COMMA, ACTIONS(4775), 1, anon_sym_RPAREN, STATE(4477), 1, aux_sym_argument_list_repeat1, [146913] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7124), 1, sym_identifier, STATE(1822), 1, sym_template_function, STATE(2186), 1, sym_template_type, [146926] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7126), 1, anon_sym_COMMA, ACTIONS(7128), 1, anon_sym_RBRACE, STATE(4479), 1, aux_sym_enumerator_list_repeat1, [146939] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7130), 1, anon_sym_GT2, STATE(4587), 1, aux_sym_template_argument_list_repeat1, [146952] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7132), 1, sym_identifier, STATE(1745), 1, sym_template_method, STATE(2186), 1, sym_template_type, [146965] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7134), 1, anon_sym_SEMI, STATE(4437), 1, aux_sym_declaration_repeat1, [146978] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7136), 1, anon_sym_SEMI, STATE(4437), 1, aux_sym_declaration_repeat1, [146991] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4587), 1, anon_sym_RBRACE, ACTIONS(4779), 1, anon_sym_COMMA, STATE(4405), 1, aux_sym_initializer_list_repeat1, [147004] = 4, ACTIONS(5673), 1, anon_sym_LPAREN2, ACTIONS(5675), 1, sym_comment, ACTIONS(7138), 1, anon_sym_LF, STATE(3431), 1, sym_preproc_argument_list, [147017] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4870), 1, anon_sym_RBRACK, ACTIONS(7140), 1, anon_sym_COMMA, STATE(4451), 1, aux_sym_lambda_capture_specifier_repeat1, [147030] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4819), 1, anon_sym_COMMA, ACTIONS(4821), 1, anon_sym_RBRACE, STATE(4407), 1, aux_sym_initializer_list_repeat1, [147043] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, ACTIONS(7143), 1, anon_sym_RBRACE, STATE(4814), 1, sym_enumerator, [147056] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(7145), 1, anon_sym_SEMI, STATE(4471), 1, aux_sym_type_definition_repeat2, [147069] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7147), 1, sym_identifier, STATE(1822), 1, sym_template_function, STATE(2186), 1, sym_template_type, [147082] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5645), 1, anon_sym_COMMA, ACTIONS(7149), 1, anon_sym_RPAREN, STATE(4548), 1, aux_sym_preproc_argument_list_repeat1, [147095] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7051), 1, anon_sym_COMMA, ACTIONS(7151), 1, anon_sym_RPAREN, STATE(4573), 1, aux_sym_parameter_list_repeat1, [147108] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7153), 1, sym_identifier, STATE(1822), 1, sym_template_function, STATE(2186), 1, sym_template_type, [147121] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7155), 1, sym_identifier, STATE(1822), 1, sym_template_function, STATE(2186), 1, sym_template_type, [147134] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7157), 1, anon_sym_COMMA, ACTIONS(7159), 1, anon_sym_RBRACE, STATE(4423), 1, aux_sym_enumerator_list_repeat1, [147147] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7161), 1, anon_sym_GT2, STATE(4501), 1, aux_sym_template_argument_list_repeat1, [147160] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4785), 1, anon_sym_COMMA, ACTIONS(4787), 1, anon_sym_RBRACE, STATE(4523), 1, aux_sym_initializer_list_repeat1, [147173] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4733), 1, anon_sym_COMMA, ACTIONS(4815), 1, anon_sym_RPAREN, STATE(4434), 1, aux_sym_argument_list_repeat1, [147186] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5645), 1, anon_sym_COMMA, ACTIONS(7163), 1, anon_sym_RPAREN, STATE(4548), 1, aux_sym_preproc_argument_list_repeat1, [147199] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7022), 1, anon_sym_COMMA, ACTIONS(7165), 1, anon_sym_RPAREN, STATE(4538), 1, aux_sym_preproc_params_repeat1, [147212] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7167), 1, anon_sym_SEMI, STATE(4437), 1, aux_sym_declaration_repeat1, [147225] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7169), 1, anon_sym_SEMI, STATE(4437), 1, aux_sym_declaration_repeat1, [147238] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3038), 1, anon_sym_LBRACE, ACTIONS(6765), 1, anon_sym_COLON_COLON, STATE(798), 1, sym_declaration_list, [147251] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7171), 1, anon_sym_GT2, STATE(4527), 1, aux_sym_template_argument_list_repeat1, [147264] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6984), 1, anon_sym_COMMA, ACTIONS(7173), 1, anon_sym_RBRACK_RBRACK, STATE(4402), 1, aux_sym_attribute_declaration_repeat1, [147277] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7175), 1, anon_sym_COMMA, ACTIONS(7178), 1, anon_sym_SEMI, STATE(4471), 1, aux_sym_type_definition_repeat2, [147290] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7180), 1, anon_sym_SEMI, STATE(4437), 1, aux_sym_declaration_repeat1, [147303] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7182), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [147316] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(7184), 1, anon_sym_SEMI, STATE(4471), 1, aux_sym_type_definition_repeat2, [147329] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(7186), 1, anon_sym_SEMI, STATE(4471), 1, aux_sym_type_definition_repeat2, [147342] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4932), 1, anon_sym_RPAREN, ACTIONS(7188), 1, anon_sym_COMMA, STATE(4476), 1, aux_sym_argument_list_repeat1, [147355] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4733), 1, anon_sym_COMMA, ACTIONS(7191), 1, anon_sym_RPAREN, STATE(4476), 1, aux_sym_argument_list_repeat1, [147368] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, ACTIONS(7193), 1, anon_sym_RBRACE, STATE(4814), 1, sym_enumerator, [147381] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7193), 1, anon_sym_RBRACE, ACTIONS(7195), 1, anon_sym_COMMA, STATE(4537), 1, aux_sym_enumerator_list_repeat1, [147394] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7197), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [147407] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7199), 1, sym_identifier, STATE(1819), 1, sym_template_function, STATE(1941), 1, sym_template_type, [147420] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7201), 1, anon_sym_SEMI, STATE(4437), 1, aux_sym_declaration_repeat1, [147433] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4703), 1, anon_sym_COMMA, ACTIONS(7203), 1, anon_sym_RBRACK, STATE(4451), 1, aux_sym_lambda_capture_specifier_repeat1, [147446] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6984), 1, anon_sym_COMMA, ACTIONS(7205), 1, anon_sym_RBRACK_RBRACK, STATE(4402), 1, aux_sym_attribute_declaration_repeat1, [147459] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7207), 1, anon_sym_SEMI, STATE(4447), 1, aux_sym_declaration_repeat1, [147472] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7209), 1, anon_sym_COMMA, ACTIONS(7211), 1, anon_sym_RBRACE, STATE(4537), 1, aux_sym_enumerator_list_repeat1, [147485] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, ACTIONS(7213), 1, anon_sym_RBRACE, STATE(4814), 1, sym_enumerator, [147498] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7215), 1, sym_identifier, STATE(1822), 1, sym_template_function, STATE(2186), 1, sym_template_type, [147511] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7217), 1, anon_sym_catch, STATE(147), 2, sym_catch_clause, aux_sym_try_statement_repeat1, [147522] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7008), 1, anon_sym_LPAREN2, ACTIONS(7219), 1, anon_sym_constexpr, STATE(345), 1, sym_condition_clause, [147535] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6984), 1, anon_sym_COMMA, ACTIONS(7221), 1, anon_sym_RBRACK_RBRACK, STATE(4484), 1, aux_sym_attribute_declaration_repeat1, [147548] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7223), 1, anon_sym_COMMA, ACTIONS(7226), 1, anon_sym_RPAREN, STATE(4492), 1, aux_sym_throw_specifier_repeat1, [147561] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6696), 1, anon_sym_COMMA, ACTIONS(6975), 1, anon_sym_LBRACE, STATE(4497), 1, aux_sym_base_class_clause_repeat1, [147574] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(2625), 1, anon_sym_RBRACE, ACTIONS(7228), 1, anon_sym_COMMA, STATE(4516), 1, aux_sym_initializer_list_repeat1, [147587] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(7230), 1, anon_sym_SEMI, STATE(4471), 1, aux_sym_type_definition_repeat2, [147600] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7232), 1, anon_sym_DOT_DOT_DOT, ACTIONS(7234), 2, anon_sym_COMMA, anon_sym_LBRACE, [147611] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7234), 1, anon_sym_LBRACE, ACTIONS(7236), 1, anon_sym_COMMA, STATE(4497), 1, aux_sym_base_class_clause_repeat1, [147624] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4733), 1, anon_sym_COMMA, ACTIONS(7239), 1, anon_sym_RPAREN, STATE(4476), 1, aux_sym_argument_list_repeat1, [147637] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7241), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [147650] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7243), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [147663] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7245), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [147676] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7247), 1, anon_sym_COMMA, ACTIONS(7249), 1, anon_sym_RBRACE, STATE(4379), 1, aux_sym_enumerator_list_repeat1, [147689] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4703), 1, anon_sym_COMMA, ACTIONS(7251), 1, anon_sym_RBRACK, STATE(4451), 1, aux_sym_lambda_capture_specifier_repeat1, [147702] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, ACTIONS(7253), 1, anon_sym_RBRACE, STATE(4814), 1, sym_enumerator, [147715] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7253), 1, anon_sym_RBRACE, ACTIONS(7255), 1, anon_sym_COMMA, STATE(4537), 1, aux_sym_enumerator_list_repeat1, [147728] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(7257), 1, anon_sym_SEMI, STATE(4471), 1, aux_sym_type_definition_repeat2, [147741] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, ACTIONS(7259), 1, anon_sym_RBRACE, STATE(4814), 1, sym_enumerator, [147754] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3983), 1, anon_sym_COMMA, ACTIONS(7261), 1, anon_sym_RBRACK, STATE(4373), 1, aux_sym_structured_binding_declarator_repeat1, [147767] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4733), 1, anon_sym_COMMA, ACTIONS(4777), 1, anon_sym_RPAREN, STATE(4381), 1, aux_sym_argument_list_repeat1, [147780] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6984), 1, anon_sym_COMMA, ACTIONS(7263), 1, anon_sym_RBRACK_RBRACK, STATE(4402), 1, aux_sym_attribute_declaration_repeat1, [147793] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3983), 1, anon_sym_COMMA, ACTIONS(7265), 1, anon_sym_RBRACK, STATE(4508), 1, aux_sym_structured_binding_declarator_repeat1, [147806] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7267), 1, anon_sym_COMMA, ACTIONS(7269), 1, anon_sym_RBRACE, STATE(4537), 1, aux_sym_enumerator_list_repeat1, [147819] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6984), 1, anon_sym_COMMA, ACTIONS(7271), 1, anon_sym_RBRACK_RBRACK, STATE(4470), 1, aux_sym_attribute_declaration_repeat1, [147832] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7275), 1, anon_sym_RPAREN, ACTIONS(7273), 2, anon_sym_COMMA, anon_sym_SEMI, [147843] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, ACTIONS(7269), 1, anon_sym_RBRACE, STATE(4814), 1, sym_enumerator, [147856] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4838), 1, anon_sym_RBRACE, ACTIONS(7277), 1, anon_sym_COMMA, STATE(4516), 1, aux_sym_initializer_list_repeat1, [147869] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4733), 1, anon_sym_COMMA, ACTIONS(7280), 1, anon_sym_RPAREN, STATE(4476), 1, aux_sym_argument_list_repeat1, [147882] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6733), 1, anon_sym_DOT_DOT_DOT, ACTIONS(7282), 2, anon_sym_COMMA, anon_sym_GT2, [147893] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7284), 1, anon_sym_COMMA, ACTIONS(7287), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [147906] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(7289), 1, anon_sym_SEMI, STATE(4471), 1, aux_sym_type_definition_repeat2, [147919] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7293), 1, anon_sym_RPAREN, ACTIONS(7291), 2, anon_sym_DOT_DOT_DOT, sym_identifier, [147930] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7051), 1, anon_sym_COMMA, ACTIONS(7295), 1, anon_sym_RPAREN, STATE(4457), 1, aux_sym_parameter_list_repeat1, [147943] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(2623), 1, anon_sym_RBRACE, ACTIONS(7297), 1, anon_sym_COMMA, STATE(4516), 1, aux_sym_initializer_list_repeat1, [147956] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7008), 1, anon_sym_LPAREN2, ACTIONS(7299), 1, anon_sym_constexpr, STATE(193), 1, sym_condition_clause, [147969] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7301), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [147982] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7303), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [147995] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7305), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [148008] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7307), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [148021] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7309), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [148034] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7311), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [148047] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7313), 1, anon_sym_GT2, STATE(4528), 1, aux_sym_template_argument_list_repeat1, [148060] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7315), 1, anon_sym_SEMI, STATE(4437), 1, aux_sym_declaration_repeat1, [148073] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7317), 1, anon_sym_SEMI, STATE(4437), 1, aux_sym_declaration_repeat1, [148086] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7319), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_GT2, [148095] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7321), 3, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_GT2, [148104] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7323), 3, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, [148113] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7325), 1, anon_sym_COMMA, ACTIONS(7328), 1, anon_sym_RBRACE, STATE(4537), 1, aux_sym_enumerator_list_repeat1, [148126] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7330), 1, anon_sym_COMMA, ACTIONS(7333), 1, anon_sym_RPAREN, STATE(4538), 1, aux_sym_preproc_params_repeat1, [148139] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7335), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [148152] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7337), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [148165] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7339), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [148178] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7341), 1, anon_sym_SEMI, STATE(4437), 1, aux_sym_declaration_repeat1, [148191] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7343), 1, anon_sym_SEMI, STATE(4437), 1, aux_sym_declaration_repeat1, [148204] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7345), 1, anon_sym_GT2, STATE(4539), 1, aux_sym_template_argument_list_repeat1, [148217] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7323), 3, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_EQ, [148226] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7347), 1, anon_sym_SEMI, STATE(4542), 1, aux_sym_declaration_repeat1, [148239] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7008), 1, anon_sym_LPAREN2, ACTIONS(7349), 1, anon_sym_constexpr, STATE(194), 1, sym_condition_clause, [148252] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5804), 1, anon_sym_RPAREN, ACTIONS(7351), 1, anon_sym_COMMA, STATE(4548), 1, aux_sym_preproc_argument_list_repeat1, [148265] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3014), 1, anon_sym_LBRACE, ACTIONS(6765), 1, anon_sym_COLON_COLON, STATE(672), 1, sym_declaration_list, [148278] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7354), 1, sym_identifier, STATE(1822), 1, sym_template_function, STATE(2186), 1, sym_template_type, [148291] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(7356), 1, anon_sym_SEMI, STATE(4471), 1, aux_sym_type_definition_repeat2, [148304] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, ACTIONS(7358), 1, anon_sym_RBRACE, STATE(4814), 1, sym_enumerator, [148317] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(7360), 1, anon_sym_SEMI, STATE(4471), 1, aux_sym_type_definition_repeat2, [148330] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1765), 3, anon_sym_else, anon_sym_while, anon_sym_catch, [148339] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7362), 1, anon_sym_catch, STATE(137), 2, sym_catch_clause, aux_sym_try_statement_repeat1, [148350] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7364), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [148363] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7366), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [148376] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6554), 1, anon_sym_LPAREN2, ACTIONS(6556), 1, anon_sym_LBRACK, STATE(3330), 1, sym_parameter_list, [148389] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7368), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [148402] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7370), 1, anon_sym_SEMI, STATE(4439), 1, aux_sym_declaration_repeat1, [148415] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(7372), 1, anon_sym_SEMI, STATE(4471), 1, aux_sym_type_definition_repeat2, [148428] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7374), 1, anon_sym_GT2, STATE(4473), 1, aux_sym_template_argument_list_repeat1, [148441] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7376), 1, anon_sym_SEMI, STATE(4437), 1, aux_sym_declaration_repeat1, [148454] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7002), 1, anon_sym_COMMA, ACTIONS(7378), 1, anon_sym_RPAREN, STATE(4390), 1, aux_sym_throw_specifier_repeat1, [148467] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7380), 1, anon_sym_SEMI, STATE(4437), 1, aux_sym_declaration_repeat1, [148480] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7382), 1, sym_identifier, STATE(2186), 1, sym_template_type, STATE(3836), 1, sym_template_function, [148493] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7384), 1, anon_sym_GT2, STATE(4556), 1, aux_sym_template_argument_list_repeat1, [148506] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4745), 1, anon_sym_COMMA, ACTIONS(4747), 1, anon_sym_RBRACE, STATE(4494), 1, aux_sym_initializer_list_repeat1, [148519] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7386), 1, anon_sym_SEMI, STATE(4601), 1, aux_sym_declaration_repeat1, [148532] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7388), 1, anon_sym_SEMI, STATE(4412), 1, aux_sym_declaration_repeat1, [148545] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7390), 1, sym_identifier, STATE(2118), 1, sym_template_function, STATE(2186), 1, sym_template_type, [148558] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7392), 1, anon_sym_catch, STATE(150), 2, sym_catch_clause, aux_sym_try_statement_repeat1, [148569] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7394), 1, anon_sym_COMMA, ACTIONS(7397), 1, anon_sym_RPAREN, STATE(4573), 1, aux_sym_parameter_list_repeat1, [148582] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7399), 1, anon_sym_SEMI, STATE(4563), 1, aux_sym_declaration_repeat1, [148595] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7401), 1, anon_sym_COMMA, ACTIONS(7404), 1, anon_sym_GT2, STATE(4575), 1, aux_sym_template_parameter_list_repeat1, [148608] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(3016), 1, anon_sym_LBRACE, ACTIONS(6765), 1, anon_sym_COLON_COLON, STATE(753), 1, sym_declaration_list, [148621] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7406), 3, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_EQ, [148630] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7408), 1, anon_sym_COMMA, ACTIONS(7410), 1, anon_sym_RBRACE, STATE(4486), 1, aux_sym_enumerator_list_repeat1, [148643] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, ACTIONS(7412), 1, anon_sym_RBRACE, STATE(4814), 1, sym_enumerator, [148656] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(7414), 1, anon_sym_SEMI, STATE(4471), 1, aux_sym_type_definition_repeat2, [148669] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7416), 1, anon_sym_COMMA, ACTIONS(7418), 1, anon_sym_RBRACE, STATE(4512), 1, aux_sym_enumerator_list_repeat1, [148682] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4733), 1, anon_sym_COMMA, ACTIONS(4805), 1, anon_sym_RPAREN, STATE(4607), 1, aux_sym_argument_list_repeat1, [148695] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6984), 1, anon_sym_COMMA, ACTIONS(7420), 1, anon_sym_RBRACK_RBRACK, STATE(4510), 1, aux_sym_attribute_declaration_repeat1, [148708] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4733), 1, anon_sym_COMMA, ACTIONS(4735), 1, anon_sym_RPAREN, STATE(4517), 1, aux_sym_argument_list_repeat1, [148721] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6984), 1, anon_sym_COMMA, ACTIONS(7422), 1, anon_sym_RBRACK_RBRACK, STATE(4402), 1, aux_sym_attribute_declaration_repeat1, [148734] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, ACTIONS(7424), 1, anon_sym_RBRACE, STATE(4814), 1, sym_enumerator, [148747] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7426), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [148760] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(7428), 1, anon_sym_SEMI, STATE(4471), 1, aux_sym_type_definition_repeat2, [148773] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7430), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [148786] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6711), 3, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_EQ, [148795] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7432), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [148808] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7434), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [148821] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7436), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [148834] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(2629), 1, anon_sym_RBRACE, ACTIONS(7438), 1, anon_sym_COMMA, STATE(4516), 1, aux_sym_initializer_list_repeat1, [148847] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7440), 1, anon_sym_GT2, STATE(4592), 1, aux_sym_template_argument_list_repeat1, [148860] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4615), 1, anon_sym_COMMA, ACTIONS(7442), 1, anon_sym_GT2, STATE(4519), 1, aux_sym_template_argument_list_repeat1, [148873] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7444), 1, anon_sym_COMMA, ACTIONS(7446), 1, anon_sym_RBRACE, STATE(4605), 1, aux_sym_enumerator_list_repeat1, [148886] = 4, ACTIONS(5673), 1, anon_sym_LPAREN2, ACTIONS(5675), 1, sym_comment, ACTIONS(7448), 1, anon_sym_LF, STATE(3431), 1, sym_preproc_argument_list, [148899] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7450), 3, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_EQ, [148908] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7452), 1, anon_sym_SEMI, STATE(4437), 1, aux_sym_declaration_repeat1, [148921] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7454), 1, anon_sym_SEMI, STATE(4437), 1, aux_sym_declaration_repeat1, [148934] = 4, ACTIONS(5673), 1, anon_sym_LPAREN2, ACTIONS(5675), 1, sym_comment, ACTIONS(7456), 1, anon_sym_LF, STATE(3431), 1, sym_preproc_argument_list, [148947] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7458), 1, sym_identifier, STATE(1822), 1, sym_template_function, STATE(1941), 1, sym_template_type, [148960] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5950), 1, anon_sym_COMMA, ACTIONS(7460), 1, anon_sym_SEMI, STATE(4532), 1, aux_sym_declaration_repeat1, [148973] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7462), 1, anon_sym_COMMA, ACTIONS(7464), 1, anon_sym_RBRACE, STATE(4537), 1, aux_sym_enumerator_list_repeat1, [148986] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, ACTIONS(7464), 1, anon_sym_RBRACE, STATE(4814), 1, sym_enumerator, [148999] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(4733), 1, anon_sym_COMMA, ACTIONS(7466), 1, anon_sym_RPAREN, STATE(4476), 1, aux_sym_argument_list_repeat1, [149012] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(7008), 1, anon_sym_LPAREN2, ACTIONS(7468), 1, anon_sym_constexpr, STATE(338), 1, sym_condition_clause, [149025] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6262), 1, anon_sym_COMMA, ACTIONS(7470), 1, anon_sym_SEMI, STATE(4471), 1, aux_sym_type_definition_repeat2, [149038] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7472), 1, anon_sym_catch, STATE(149), 2, sym_catch_clause, aux_sym_try_statement_repeat1, [149049] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, ACTIONS(7211), 1, anon_sym_RBRACE, STATE(4814), 1, sym_enumerator, [149062] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2273), 1, sym_field_declaration_list, [149072] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(7474), 1, anon_sym_LF, ACTIONS(7476), 1, sym_preproc_arg, [149082] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4107), 1, anon_sym_LT, STATE(2257), 1, sym_template_argument_list, [149092] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2127), 1, sym_field_declaration_list, [149102] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1739), 1, sym_field_declaration_list, [149112] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3996), 1, sym_field_declaration_list, [149122] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3990), 1, sym_field_declaration_list, [149132] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3986), 1, sym_field_declaration_list, [149142] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3984), 1, sym_field_declaration_list, [149152] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3983), 1, sym_field_declaration_list, [149162] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(7478), 1, anon_sym_LF, ACTIONS(7480), 1, sym_preproc_arg, [149172] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3980), 1, sym_field_declaration_list, [149182] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2553), 1, sym_field_declaration_list, [149192] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3979), 1, sym_field_declaration_list, [149202] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3971), 1, sym_field_declaration_list, [149212] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1738), 1, sym_field_declaration_list, [149222] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3969), 1, sym_field_declaration_list, [149232] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7482), 1, sym_identifier, STATE(4583), 1, sym_attribute, [149242] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4107), 1, anon_sym_LT, STATE(4440), 1, sym_template_argument_list, [149252] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1737), 1, sym_field_declaration_list, [149262] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4433), 1, anon_sym_LPAREN2, STATE(5341), 1, sym_argument_list, [149272] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2137), 1, sym_field_declaration_list, [149282] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3985), 1, sym_field_declaration_list, [149292] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3959), 1, sym_field_declaration_list, [149302] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3939), 1, sym_field_declaration_list, [149312] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3949), 1, sym_field_declaration_list, [149322] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3934), 1, sym_field_declaration_list, [149332] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3943), 1, sym_field_declaration_list, [149342] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3942), 1, sym_field_declaration_list, [149352] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3937), 1, sym_field_declaration_list, [149362] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3927), 1, sym_field_declaration_list, [149372] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3930), 1, sym_field_declaration_list, [149382] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3920), 1, sym_field_declaration_list, [149392] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3947), 1, sym_field_declaration_list, [149402] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3918), 1, sym_field_declaration_list, [149412] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3901), 1, sym_field_declaration_list, [149422] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3957), 1, sym_field_declaration_list, [149432] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3998), 1, sym_field_declaration_list, [149442] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3993), 1, sym_field_declaration_list, [149452] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3989), 1, sym_field_declaration_list, [149462] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2563), 1, sym_field_declaration_list, [149472] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1736), 1, sym_field_declaration_list, [149482] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1740), 1, sym_field_declaration_list, [149492] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1741), 1, sym_field_declaration_list, [149502] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2168), 1, sym_field_declaration_list, [149512] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1742), 1, sym_field_declaration_list, [149522] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7008), 1, anon_sym_LPAREN2, STATE(297), 1, sym_condition_clause, [149532] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(522), 1, anon_sym_LBRACE, STATE(428), 1, sym_compound_statement, [149542] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1734), 1, sym_field_declaration_list, [149552] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2566), 1, sym_field_declaration_list, [149562] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1992), 2, anon_sym_else, anon_sym_while, [149570] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6004), 1, anon_sym_LT, STATE(3713), 1, sym_template_argument_list, [149580] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1996), 2, anon_sym_else, anon_sym_while, [149588] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(7484), 1, anon_sym_LF, ACTIONS(7486), 1, sym_preproc_arg, [149598] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7488), 1, anon_sym_LPAREN2, STATE(4800), 1, sym_condition_clause, [149608] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1732), 1, sym_field_declaration_list, [149618] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7397), 2, anon_sym_COMMA, anon_sym_RPAREN, [149626] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7008), 1, anon_sym_LPAREN2, STATE(197), 1, sym_condition_clause, [149636] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [149644] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4105), 1, anon_sym_LT, STATE(3756), 1, sym_template_argument_list, [149654] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3923), 1, sym_field_declaration_list, [149664] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(2000), 2, anon_sym_else, anon_sym_while, [149672] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3974), 1, sym_field_declaration_list, [149682] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5842), 1, anon_sym_LBRACE, STATE(3991), 1, sym_field_declaration_list, [149692] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7490), 1, anon_sym_LT, STATE(1730), 1, sym_template_argument_list, [149702] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1984), 2, anon_sym_else, anon_sym_while, [149710] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(2004), 2, anon_sym_else, anon_sym_while, [149718] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1780), 2, anon_sym_else, anon_sym_while, [149726] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7492), 2, aux_sym_char_literal_token1, sym_escape_sequence, [149734] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(2008), 2, anon_sym_else, anon_sym_while, [149742] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2543), 1, sym_field_declaration_list, [149752] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1944), 2, anon_sym_else, anon_sym_while, [149760] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2603), 1, sym_field_declaration_list, [149770] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3858), 1, anon_sym_LPAREN2, STATE(2205), 1, sym_argument_list, [149780] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(2012), 2, anon_sym_else, anon_sym_while, [149788] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(2016), 2, anon_sym_else, anon_sym_while, [149796] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2052), 1, sym_field_declaration_list, [149806] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7494), 2, anon_sym_COLON_COLON, anon_sym_LBRACE, [149814] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1928), 1, anon_sym_while, ACTIONS(7496), 1, anon_sym_else, [149824] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2601), 1, sym_field_declaration_list, [149834] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1866), 2, anon_sym_else, anon_sym_while, [149842] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7333), 2, anon_sym_COMMA, anon_sym_RPAREN, [149850] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7498), 1, anon_sym_LT, STATE(1675), 1, sym_template_argument_list, [149860] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(7500), 1, anon_sym_LF, ACTIONS(7502), 1, sym_preproc_arg, [149870] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1792), 1, anon_sym_LBRACE, STATE(4572), 1, sym_compound_statement, [149880] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7504), 2, anon_sym_LF, sym_preproc_arg, [149888] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2597), 1, sym_field_declaration_list, [149898] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7506), 1, sym_identifier, STATE(1941), 1, sym_template_type, [149908] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [149916] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1792), 1, anon_sym_LBRACE, STATE(4554), 1, sym_compound_statement, [149926] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2595), 1, sym_field_declaration_list, [149936] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1351), 1, anon_sym_LBRACE, STATE(2638), 1, sym_initializer_list, [149946] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2594), 1, sym_field_declaration_list, [149956] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7404), 2, anon_sym_COMMA, anon_sym_GT2, [149964] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2591), 1, sym_field_declaration_list, [149974] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2590), 1, sym_field_declaration_list, [149984] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(7508), 1, anon_sym_LF, ACTIONS(7510), 1, sym_preproc_arg, [149994] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2589), 1, sym_field_declaration_list, [150004] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2585), 1, sym_field_declaration_list, [150014] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4105), 1, anon_sym_LT, STATE(2884), 1, sym_template_argument_list, [150024] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7512), 1, sym_identifier, ACTIONS(7514), 1, anon_sym_LPAREN2, [150034] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1924), 2, anon_sym_else, anon_sym_while, [150042] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2070), 1, sym_field_declaration_list, [150052] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7516), 2, anon_sym_COMMA, anon_sym_GT2, [150060] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [150068] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2069), 1, sym_field_declaration_list, [150078] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2068), 1, sym_field_declaration_list, [150088] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7518), 1, sym_identifier, ACTIONS(7520), 1, anon_sym_LPAREN2, [150098] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6751), 1, sym_identifier, STATE(2186), 1, sym_template_type, [150108] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5621), 1, anon_sym_LT, STATE(1934), 1, sym_template_argument_list, [150118] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2538), 1, sym_field_declaration_list, [150128] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7490), 1, anon_sym_LT, STATE(1356), 1, sym_template_argument_list, [150138] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7522), 2, anon_sym_COMMA, anon_sym_GT2, [150146] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [150154] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7524), 2, anon_sym_COMMA, anon_sym_GT2, [150162] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [150170] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7526), 1, anon_sym_LT, STATE(1678), 1, sym_template_argument_list, [150180] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [150188] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3389), 1, anon_sym_LPAREN2, STATE(1916), 1, sym_argument_list, [150198] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4107), 1, anon_sym_LT, STATE(3147), 1, sym_template_argument_list, [150208] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1746), 1, sym_field_declaration_list, [150218] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(6745), 1, sym_identifier, STATE(4814), 1, sym_enumerator, [150228] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4107), 1, anon_sym_LT, STATE(3756), 1, sym_template_argument_list, [150238] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1750), 1, sym_field_declaration_list, [150248] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1751), 1, sym_field_declaration_list, [150258] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7526), 1, anon_sym_LT, STATE(1960), 1, sym_template_argument_list, [150268] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1960), 1, anon_sym_LBRACE, STATE(1821), 1, sym_initializer_list, [150278] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1753), 1, sym_field_declaration_list, [150288] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7490), 1, anon_sym_LT, STATE(1358), 1, sym_template_argument_list, [150298] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4105), 1, anon_sym_LT, STATE(2672), 1, sym_template_argument_list, [150308] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4433), 1, anon_sym_LPAREN2, STATE(5224), 1, sym_argument_list, [150318] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(245), 1, anon_sym_LBRACE, STATE(146), 1, sym_compound_statement, [150328] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(2755), 2, anon_sym_COMMA, anon_sym_RBRACK, [150336] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4791), 1, anon_sym_RBRACK, ACTIONS(7528), 1, anon_sym_COMMA, [150346] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7530), 2, anon_sym_COMMA, anon_sym_GT2, [150354] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2064), 1, sym_field_declaration_list, [150364] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7482), 1, sym_identifier, STATE(4427), 1, sym_attribute, [150374] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7488), 1, anon_sym_LPAREN2, STATE(4659), 1, sym_condition_clause, [150384] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4840), 2, anon_sym_COMMA, anon_sym_RBRACE, [150392] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2552), 1, sym_field_declaration_list, [150402] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7532), 2, aux_sym_char_literal_token1, sym_escape_sequence, [150410] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2063), 1, sym_field_declaration_list, [150420] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1756), 1, sym_field_declaration_list, [150430] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4838), 2, anon_sym_COMMA, anon_sym_RBRACE, [150438] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1792), 1, anon_sym_LBRACE, STATE(4610), 1, sym_compound_statement, [150448] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1757), 1, sym_field_declaration_list, [150458] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2570), 1, sym_field_declaration_list, [150468] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2574), 1, sym_field_declaration_list, [150478] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2554), 1, sym_field_declaration_list, [150488] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2062), 1, sym_field_declaration_list, [150498] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1758), 1, sym_field_declaration_list, [150508] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7534), 1, sym_identifier, STATE(2186), 1, sym_template_type, [150518] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2061), 1, sym_field_declaration_list, [150528] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2264), 1, sym_field_declaration_list, [150538] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2260), 1, sym_field_declaration_list, [150548] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2060), 1, sym_field_declaration_list, [150558] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2059), 1, sym_field_declaration_list, [150568] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2259), 1, sym_field_declaration_list, [150578] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1761), 1, sym_field_declaration_list, [150588] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1763), 1, sym_field_declaration_list, [150598] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4433), 1, anon_sym_LPAREN2, STATE(5357), 1, sym_argument_list, [150608] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2313), 1, sym_field_declaration_list, [150618] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2266), 1, sym_field_declaration_list, [150628] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2548), 1, sym_field_declaration_list, [150638] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2058), 1, sym_field_declaration_list, [150648] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2057), 1, sym_field_declaration_list, [150658] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2323), 1, sym_field_declaration_list, [150668] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7008), 1, anon_sym_LPAREN2, STATE(198), 1, sym_condition_clause, [150678] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2565), 1, sym_field_declaration_list, [150688] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [150696] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2056), 1, sym_field_declaration_list, [150706] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2533), 1, sym_field_declaration_list, [150716] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1315), 1, anon_sym_LBRACE, STATE(857), 1, sym_compound_statement, [150726] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2276), 1, sym_field_declaration_list, [150736] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2287), 1, sym_field_declaration_list, [150746] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2285), 1, sym_field_declaration_list, [150756] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2294), 1, sym_field_declaration_list, [150766] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2227), 1, sym_field_declaration_list, [150776] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1729), 1, sym_field_declaration_list, [150786] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1728), 1, sym_field_declaration_list, [150796] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7536), 1, anon_sym_default, ACTIONS(7538), 1, anon_sym_delete, [150806] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2534), 1, sym_field_declaration_list, [150816] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2054), 1, sym_field_declaration_list, [150826] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2045), 1, sym_field_declaration_list, [150836] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2544), 1, sym_field_declaration_list, [150846] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [150854] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2291), 1, sym_field_declaration_list, [150864] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7008), 1, anon_sym_LPAREN2, STATE(184), 1, sym_condition_clause, [150874] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, anon_sym_LBRACE, STATE(421), 1, sym_compound_statement, [150884] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2226), 1, sym_field_declaration_list, [150894] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2246), 1, anon_sym_LBRACE, STATE(2253), 1, sym_initializer_list, [150904] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2051), 1, sym_field_declaration_list, [150914] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7498), 1, anon_sym_LT, STATE(1715), 1, sym_template_argument_list, [150924] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4105), 1, anon_sym_LT, STATE(2200), 1, sym_template_argument_list, [150934] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [150942] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [150950] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2050), 1, sym_field_declaration_list, [150960] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2223), 1, sym_field_declaration_list, [150970] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [150978] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [150986] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [150994] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2046), 1, sym_field_declaration_list, [151004] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7328), 2, anon_sym_COMMA, anon_sym_RBRACE, [151012] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2221), 1, sym_field_declaration_list, [151022] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(7540), 1, anon_sym_LF, ACTIONS(7542), 1, sym_preproc_arg, [151032] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2215), 1, sym_field_declaration_list, [151042] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2044), 1, sym_field_declaration_list, [151052] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2567), 1, sym_field_declaration_list, [151062] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [151070] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2042), 1, sym_field_declaration_list, [151080] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2040), 1, sym_field_declaration_list, [151090] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7544), 1, anon_sym_LPAREN2, STATE(5199), 1, sym_parenthesized_expression, [151100] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1810), 1, sym_field_declaration_list, [151110] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4932), 2, anon_sym_COMMA, anon_sym_RPAREN, [151118] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2568), 1, sym_field_declaration_list, [151128] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7546), 2, anon_sym_COMMA, anon_sym_RBRACK_RBRACK, [151136] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1920), 2, anon_sym_else, anon_sym_while, [151144] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2583), 1, sym_field_declaration_list, [151154] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4107), 1, anon_sym_LT, STATE(2672), 1, sym_template_argument_list, [151164] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [151172] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, STATE(4945), 1, sym_parameter_list, [151182] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2214), 1, sym_field_declaration_list, [151192] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4737), 1, anon_sym_RPAREN, ACTIONS(4739), 1, anon_sym_SEMI, [151202] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2150), 1, sym_field_declaration_list, [151212] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [151220] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [151228] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(7548), 1, anon_sym_LF, ACTIONS(7550), 1, sym_preproc_arg, [151238] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7008), 1, anon_sym_LPAREN2, STATE(191), 1, sym_condition_clause, [151248] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1862), 2, anon_sym_else, anon_sym_while, [151256] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1916), 2, anon_sym_else, anon_sym_while, [151264] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7552), 2, anon_sym_LF, sym_preproc_arg, [151272] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7554), 2, anon_sym_DOT_DOT_DOT, sym_identifier, [151280] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(7556), 1, anon_sym_LF, ACTIONS(7558), 1, sym_preproc_arg, [151290] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [151298] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7560), 1, sym_identifier, STATE(2192), 1, sym_template_method, [151308] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7562), 1, sym_identifier, STATE(1802), 1, sym_template_type, [151318] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [151326] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(245), 1, anon_sym_LBRACE, STATE(300), 1, sym_compound_statement, [151336] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [151344] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1806), 1, sym_field_declaration_list, [151354] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7008), 1, anon_sym_LPAREN2, STATE(298), 1, sym_condition_clause, [151364] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1798), 1, sym_field_declaration_list, [151374] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2035), 1, sym_field_declaration_list, [151384] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1793), 1, sym_field_declaration_list, [151394] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4107), 1, anon_sym_LT, STATE(2200), 1, sym_template_argument_list, [151404] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2034), 1, sym_field_declaration_list, [151414] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1792), 1, sym_field_declaration_list, [151424] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2032), 1, sym_field_declaration_list, [151434] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1788), 1, sym_field_declaration_list, [151444] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2564), 1, sym_field_declaration_list, [151454] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2031), 1, sym_field_declaration_list, [151464] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1775), 1, sym_field_declaration_list, [151474] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7564), 1, anon_sym_LT, STATE(1909), 1, sym_template_argument_list, [151484] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7498), 1, anon_sym_LT, STATE(1909), 1, sym_template_argument_list, [151494] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7566), 2, anon_sym_LPAREN2, anon_sym_LBRACE, [151502] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7566), 2, anon_sym_LPAREN2, anon_sym_LBRACE, [151510] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7566), 2, anon_sym_LPAREN2, anon_sym_LBRACE, [151518] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2029), 1, sym_field_declaration_list, [151528] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2484), 1, sym_field_declaration_list, [151538] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2028), 1, sym_field_declaration_list, [151548] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2099), 1, sym_field_declaration_list, [151558] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1912), 2, anon_sym_else, anon_sym_while, [151566] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2100), 1, sym_field_declaration_list, [151576] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [151584] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1940), 2, anon_sym_else, anon_sym_while, [151592] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2482), 1, sym_field_declaration_list, [151602] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [151610] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [151618] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7526), 1, anon_sym_LT, STATE(1801), 1, sym_template_argument_list, [151628] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(7568), 1, anon_sym_LF, ACTIONS(7570), 1, sym_preproc_arg, [151638] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4741), 2, anon_sym_COMMA, anon_sym_SEMI, [151646] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6122), 2, anon_sym_COMMA, anon_sym_SEMI, [151654] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2104), 1, sym_field_declaration_list, [151664] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(51), 1, anon_sym_LBRACE, STATE(411), 1, sym_compound_statement, [151674] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2479), 1, sym_field_declaration_list, [151684] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7008), 1, anon_sym_LPAREN2, STATE(190), 1, sym_condition_clause, [151694] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2105), 1, sym_field_declaration_list, [151704] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2106), 1, sym_field_declaration_list, [151714] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(768), 1, anon_sym_LBRACE, STATE(462), 1, sym_compound_statement, [151724] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2115), 1, sym_field_declaration_list, [151734] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7572), 2, anon_sym_COLON_COLON, anon_sym_LBRACE, [151742] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7574), 2, anon_sym_COMMA, anon_sym_RBRACK_RBRACK, [151750] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7576), 1, sym_identifier, STATE(1745), 1, sym_template_method, [151760] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7482), 1, sym_identifier, STATE(5006), 1, sym_attribute, [151770] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7095), 2, anon_sym_COMMA, anon_sym_LBRACE, [151778] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2328), 1, sym_field_declaration_list, [151788] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2325), 1, sym_field_declaration_list, [151798] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [151806] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2600), 1, sym_field_declaration_list, [151816] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7578), 1, anon_sym_default, ACTIONS(7580), 1, anon_sym_delete, [151826] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [151834] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1988), 2, anon_sym_else, anon_sym_while, [151842] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2587), 1, sym_field_declaration_list, [151852] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2116), 1, sym_field_declaration_list, [151862] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [151870] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7498), 1, anon_sym_LT, STATE(1671), 1, sym_template_argument_list, [151880] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [151888] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2117), 1, sym_field_declaration_list, [151898] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [151906] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(7582), 1, anon_sym_LF, ACTIONS(7584), 1, sym_preproc_arg, [151916] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7490), 1, anon_sym_LT, STATE(1658), 1, sym_template_argument_list, [151926] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1870), 2, anon_sym_else, anon_sym_while, [151934] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4359), 1, anon_sym_LBRACE, STATE(2573), 1, sym_field_declaration_list, [151944] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1874), 2, anon_sym_else, anon_sym_while, [151952] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2315), 1, sym_field_declaration_list, [151962] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2320), 1, sym_field_declaration_list, [151972] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7482), 1, sym_identifier, STATE(4375), 1, sym_attribute, [151982] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7488), 1, anon_sym_LPAREN2, STATE(4990), 1, sym_condition_clause, [151992] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1878), 2, anon_sym_else, anon_sym_while, [152000] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2308), 1, sym_field_declaration_list, [152010] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7586), 2, aux_sym_char_literal_token1, sym_escape_sequence, [152018] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [152026] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1315), 1, anon_sym_LBRACE, STATE(935), 1, sym_compound_statement, [152036] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7008), 1, anon_sym_LPAREN2, STATE(226), 1, sym_condition_clause, [152046] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1792), 1, anon_sym_LBRACE, STATE(4403), 1, sym_compound_statement, [152056] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2019), 1, sym_field_declaration_list, [152066] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2017), 1, sym_field_declaration_list, [152076] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(7588), 1, anon_sym_LF, ACTIONS(7590), 1, sym_preproc_arg, [152086] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7592), 2, anon_sym_COMMA, anon_sym_GT2, [152094] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3430), 1, anon_sym_LBRACE, STATE(2015), 1, sym_field_declaration_list, [152104] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5639), 1, anon_sym_LT, STATE(2202), 1, sym_template_argument_list, [152114] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2305), 1, sym_field_declaration_list, [152124] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [152132] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1904), 2, anon_sym_else, anon_sym_while, [152140] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [152148] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4433), 1, anon_sym_LPAREN2, STATE(5214), 1, sym_argument_list, [152158] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1882), 2, anon_sym_else, anon_sym_while, [152166] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1886), 2, anon_sym_else, anon_sym_while, [152174] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2288), 1, sym_field_declaration_list, [152184] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2465), 1, sym_field_declaration_list, [152194] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2464), 1, sym_field_declaration_list, [152204] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [152212] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [152220] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(522), 1, anon_sym_LBRACE, STATE(419), 1, sym_compound_statement, [152230] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2462), 1, sym_field_declaration_list, [152240] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7594), 1, anon_sym_default, ACTIONS(7596), 1, anon_sym_delete, [152250] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7526), 1, anon_sym_LT, STATE(2225), 1, sym_template_argument_list, [152260] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7598), 1, sym_identifier, STATE(3712), 1, sym_template_type, [152270] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2256), 1, sym_field_declaration_list, [152280] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2309), 1, sym_field_declaration_list, [152290] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2390), 1, sym_field_declaration_list, [152300] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2303), 1, sym_field_declaration_list, [152310] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2283), 1, sym_field_declaration_list, [152320] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2296), 1, sym_field_declaration_list, [152330] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2295), 1, sym_field_declaration_list, [152340] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7600), 2, anon_sym_COMMA, anon_sym_GT2, [152348] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2290), 1, sym_field_declaration_list, [152358] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2458), 1, sym_field_declaration_list, [152368] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2284), 1, sym_field_declaration_list, [152378] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2457), 1, sym_field_declaration_list, [152388] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7602), 1, sym_identifier, STATE(2198), 1, sym_template_type, [152398] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2282), 1, sym_field_declaration_list, [152408] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7008), 1, anon_sym_LPAREN2, STATE(222), 1, sym_condition_clause, [152418] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1900), 2, anon_sym_else, anon_sym_while, [152426] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7604), 1, anon_sym_default, ACTIONS(7606), 1, anon_sym_delete, [152436] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2277), 1, sym_field_declaration_list, [152446] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1896), 2, anon_sym_else, anon_sym_while, [152454] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4170), 1, anon_sym_LBRACE, STATE(2272), 1, sym_field_declaration_list, [152464] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7544), 1, anon_sym_LPAREN2, STATE(5363), 1, sym_parenthesized_expression, [152474] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1890), 1, anon_sym_while, ACTIONS(7608), 1, anon_sym_else, [152484] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(7610), 1, anon_sym_LF, ACTIONS(7612), 1, sym_preproc_arg, [152494] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4739), 1, anon_sym_SEMI, ACTIONS(4789), 1, anon_sym_RPAREN, [152504] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [152512] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7544), 1, anon_sym_LPAREN2, STATE(5175), 1, sym_parenthesized_expression, [152522] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [152530] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, STATE(4784), 1, sym_parameter_list, [152540] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1830), 2, anon_sym_else, anon_sym_while, [152548] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, STATE(4701), 1, sym_parameter_list, [152558] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7544), 1, anon_sym_LPAREN2, STATE(5319), 1, sym_parenthesized_expression, [152568] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1908), 2, anon_sym_else, anon_sym_while, [152576] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1826), 2, anon_sym_else, anon_sym_while, [152584] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1822), 2, anon_sym_else, anon_sym_while, [152592] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7614), 1, anon_sym_default, ACTIONS(7616), 1, anon_sym_delete, [152602] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4107), 1, anon_sym_LT, STATE(1730), 1, sym_template_argument_list, [152612] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2131), 1, sym_field_declaration_list, [152622] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2448), 1, sym_field_declaration_list, [152632] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1792), 1, anon_sym_LBRACE, STATE(4431), 1, sym_compound_statement, [152642] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(1834), 2, anon_sym_else, anon_sym_while, [152650] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1792), 1, anon_sym_LBRACE, STATE(4968), 1, sym_compound_statement, [152660] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7008), 1, anon_sym_LPAREN2, STATE(203), 1, sym_condition_clause, [152670] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2447), 1, sym_field_declaration_list, [152680] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2132), 1, sym_field_declaration_list, [152690] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1765), 1, sym_field_declaration_list, [152700] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(7618), 1, anon_sym_LF, ACTIONS(7620), 1, sym_preproc_arg, [152710] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1764), 1, sym_field_declaration_list, [152720] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7622), 2, aux_sym_char_literal_token1, sym_escape_sequence, [152728] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7488), 1, anon_sym_LPAREN2, STATE(4924), 1, sym_condition_clause, [152738] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3314), 1, anon_sym_LBRACE, STATE(1749), 1, sym_field_declaration_list, [152748] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2133), 1, sym_field_declaration_list, [152758] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2135), 1, sym_field_declaration_list, [152768] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6980), 2, anon_sym_COMMA, anon_sym_RBRACK, [152776] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2445), 1, sym_field_declaration_list, [152786] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2139), 1, sym_field_declaration_list, [152796] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7624), 1, sym_identifier, ACTIONS(7626), 1, anon_sym_inline, [152806] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7039), 2, anon_sym_COMMA, anon_sym_RBRACK_RBRACK, [152814] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7008), 1, anon_sym_LPAREN2, STATE(154), 1, sym_condition_clause, [152824] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2422), 1, sym_field_declaration_list, [152834] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2140), 1, sym_field_declaration_list, [152844] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, STATE(5018), 1, sym_parameter_list, [152854] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2444), 1, sym_field_declaration_list, [152864] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2423), 1, sym_field_declaration_list, [152874] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7628), 1, sym_identifier, STATE(1670), 1, sym_template_type, [152884] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, STATE(4885), 1, sym_parameter_list, [152894] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2424), 1, sym_field_declaration_list, [152904] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2443), 1, sym_field_declaration_list, [152914] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7544), 1, anon_sym_LPAREN2, STATE(5100), 1, sym_parenthesized_expression, [152924] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(768), 1, anon_sym_LBRACE, STATE(373), 1, sym_compound_statement, [152934] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(2456), 1, anon_sym_LBRACE, STATE(3082), 1, sym_initializer_list, [152944] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2441), 1, sym_field_declaration_list, [152954] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7630), 2, anon_sym_COMMA, anon_sym_LBRACE, [152962] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2440), 1, sym_field_declaration_list, [152972] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2141), 1, sym_field_declaration_list, [152982] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7226), 2, anon_sym_COMMA, anon_sym_RPAREN, [152990] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2439), 1, sym_field_declaration_list, [153000] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2426), 1, sym_field_declaration_list, [153010] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2437), 1, sym_field_declaration_list, [153020] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7632), 1, anon_sym_default, ACTIONS(7634), 1, anon_sym_delete, [153030] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2427), 1, sym_field_declaration_list, [153040] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2143), 1, sym_field_declaration_list, [153050] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7482), 1, sym_identifier, STATE(4491), 1, sym_attribute, [153060] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7488), 1, anon_sym_LPAREN2, STATE(4849), 1, sym_condition_clause, [153070] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2144), 1, sym_field_declaration_list, [153080] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1792), 1, anon_sym_LBRACE, STATE(4489), 1, sym_compound_statement, [153090] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7636), 2, aux_sym_char_literal_token1, sym_escape_sequence, [153098] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7638), 2, aux_sym_char_literal_token1, sym_escape_sequence, [153106] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7008), 1, anon_sym_LPAREN2, STATE(180), 1, sym_condition_clause, [153116] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7488), 1, anon_sym_LPAREN2, STATE(4890), 1, sym_condition_clause, [153126] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(1792), 1, anon_sym_LBRACE, STATE(4555), 1, sym_compound_statement, [153136] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7482), 1, sym_identifier, STATE(4513), 1, sym_attribute, [153146] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2120), 1, sym_field_declaration_list, [153156] = 3, ACTIONS(5675), 1, sym_comment, ACTIONS(7640), 1, anon_sym_LF, ACTIONS(7642), 1, sym_preproc_arg, [153166] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2429), 1, sym_field_declaration_list, [153176] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2389), 1, sym_field_declaration_list, [153186] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2430), 1, sym_field_declaration_list, [153196] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4697), 2, anon_sym_RPAREN, anon_sym_SEMI, [153204] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7644), 1, sym_identifier, STATE(1745), 1, sym_template_method, [153214] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7273), 2, anon_sym_COMMA, anon_sym_SEMI, [153222] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2431), 1, sym_field_declaration_list, [153232] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7490), 1, anon_sym_LT, STATE(1354), 1, sym_template_argument_list, [153242] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7646), 1, anon_sym_default, ACTIONS(7648), 1, anon_sym_delete, [153252] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2151), 1, sym_field_declaration_list, [153262] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7650), 2, anon_sym_LF, sym_preproc_arg, [153270] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2432), 1, sym_field_declaration_list, [153280] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2434), 1, sym_field_declaration_list, [153290] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(4091), 1, anon_sym_LBRACE, STATE(2433), 1, sym_field_declaration_list, [153300] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(5590), 1, anon_sym_LPAREN2, STATE(4743), 1, sym_parameter_list, [153310] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(7544), 1, anon_sym_LPAREN2, STATE(5369), 1, sym_parenthesized_expression, [153320] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(3623), 1, anon_sym_LBRACE, STATE(2152), 1, sym_field_declaration_list, [153330] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7652), 1, sym_identifier, [153337] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7654), 1, anon_sym_SEMI, [153344] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4848), 1, anon_sym_RPAREN, [153351] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7656), 1, aux_sym_preproc_if_token2, [153358] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7658), 1, anon_sym_RPAREN, [153365] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7660), 1, anon_sym_RPAREN, [153372] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4850), 1, anon_sym_RPAREN, [153379] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7662), 1, anon_sym_LF, [153386] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7664), 1, sym_identifier, [153393] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4852), 1, anon_sym_RPAREN, [153400] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7666), 1, aux_sym_preproc_if_token2, [153407] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6647), 1, anon_sym_EQ, [153414] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7668), 1, anon_sym_SEMI, [153421] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7670), 1, anon_sym_SEMI, [153428] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7672), 1, anon_sym_SEMI, [153435] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6326), 1, anon_sym_RPAREN, [153442] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7674), 1, aux_sym_preproc_if_token2, [153449] = 2, ACTIONS(3304), 1, anon_sym_LF, ACTIONS(5675), 1, sym_comment, [153456] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7676), 1, anon_sym_SEMI, [153463] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7678), 1, aux_sym_preproc_if_token2, [153470] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(5230), 1, anon_sym_RBRACK, [153477] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7680), 1, anon_sym_SEMI, [153484] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7682), 1, aux_sym_preproc_if_token2, [153491] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7684), 1, anon_sym_SEMI, [153498] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7686), 1, anon_sym_SEMI, [153505] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4846), 1, anon_sym_RPAREN, [153512] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7688), 1, anon_sym_SEMI, [153519] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7690), 1, sym_identifier, [153526] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7692), 1, anon_sym_STAR, [153533] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7694), 1, aux_sym_preproc_if_token2, [153540] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7696), 1, anon_sym_SEMI, [153547] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7698), 1, sym_identifier, [153554] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7700), 1, anon_sym_COLON, [153561] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4882), 1, anon_sym_RPAREN, [153568] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7702), 1, anon_sym_LPAREN2, [153575] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7704), 1, anon_sym_SEMI, [153582] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4888), 1, anon_sym_RPAREN, [153589] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(2879), 1, anon_sym_SEMI, [153596] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7706), 1, aux_sym_preproc_if_token2, [153603] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7708), 1, anon_sym_SEMI, [153610] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7710), 1, anon_sym_SEMI, [153617] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7712), 1, aux_sym_preproc_if_token2, [153624] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7714), 1, sym_identifier, [153631] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7716), 1, sym_identifier, [153638] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4996), 1, anon_sym_RPAREN, [153645] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4964), 1, anon_sym_RPAREN, [153652] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4954), 1, anon_sym_RPAREN, [153659] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4968), 1, anon_sym_SEMI, [153666] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(6996), 1, anon_sym_LF, [153673] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7718), 1, anon_sym_SEMI, [153680] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6917), 1, anon_sym_SEMI, [153687] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7720), 1, anon_sym_LF, [153694] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6374), 1, anon_sym_RPAREN, [153701] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7722), 1, anon_sym_RPAREN, [153708] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7724), 1, sym_identifier, [153715] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4908), 1, anon_sym_RPAREN, [153722] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7726), 1, anon_sym_COLON, [153729] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6676), 1, anon_sym_EQ, [153736] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7728), 1, sym_identifier, [153743] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6662), 1, anon_sym_EQ, [153750] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4992), 1, anon_sym_RPAREN, [153757] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6304), 1, anon_sym_RPAREN, [153764] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7730), 1, sym_identifier, [153771] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7732), 1, sym_identifier, [153778] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7734), 1, sym_identifier, [153785] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7736), 1, anon_sym_RPAREN, [153792] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4878), 1, anon_sym_RPAREN, [153799] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7738), 1, anon_sym_SEMI, [153806] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7740), 1, aux_sym_preproc_if_token2, [153813] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4856), 1, anon_sym_SEMI, [153820] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4920), 1, anon_sym_SEMI, [153827] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7742), 1, anon_sym_LF, [153834] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7744), 1, anon_sym_SEMI, [153841] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7746), 1, anon_sym_SQUOTE, [153848] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7748), 1, anon_sym_SEMI, [153855] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4876), 1, anon_sym_RPAREN, [153862] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7750), 1, anon_sym_SEMI, [153869] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7752), 1, anon_sym_SEMI, [153876] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7754), 1, anon_sym_SEMI, [153883] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7756), 1, anon_sym_RPAREN, [153890] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7758), 1, anon_sym_STAR, [153897] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7760), 1, sym_identifier, [153904] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7762), 1, anon_sym_SEMI, [153911] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7138), 1, anon_sym_LF, [153918] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7764), 1, sym_identifier, [153925] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3766), 1, sym_identifier, [153932] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4587), 1, anon_sym_RBRACE, [153939] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4912), 1, anon_sym_SEMI, [153946] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7766), 1, anon_sym_SEMI, [153953] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4789), 1, anon_sym_RPAREN, [153960] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6668), 1, anon_sym_EQ, [153967] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7768), 1, anon_sym_SEMI, [153974] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7770), 1, sym_identifier, [153981] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7772), 1, anon_sym_SEMI, [153988] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6284), 1, anon_sym_RPAREN, [153995] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7774), 1, sym_identifier, [154002] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7776), 1, aux_sym_preproc_if_token2, [154009] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6869), 1, anon_sym_SEMI, [154016] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7778), 1, anon_sym_LF, [154023] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4821), 1, anon_sym_RBRACE, [154030] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7780), 1, aux_sym_preproc_if_token2, [154037] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4958), 1, anon_sym_RPAREN, [154044] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7782), 1, sym_identifier, [154051] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7784), 1, anon_sym_SEMI, [154058] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7786), 1, anon_sym_SEMI, [154065] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7788), 1, anon_sym_SEMI, [154072] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7790), 1, anon_sym_SEMI, [154079] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4910), 1, anon_sym_SEMI, [154086] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7792), 1, anon_sym_LF, [154093] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6651), 1, anon_sym_EQ, [154100] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7794), 1, anon_sym_SEMI, [154107] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6332), 1, anon_sym_RPAREN, [154114] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4928), 1, anon_sym_RPAREN, [154121] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6660), 1, anon_sym_SEMI, [154128] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7796), 1, anon_sym_SEMI, [154135] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7798), 1, anon_sym_SEMI, [154142] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7800), 1, anon_sym_SEMI, [154149] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7802), 1, anon_sym_SEMI, [154156] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7804), 1, anon_sym_RPAREN, [154163] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7806), 1, anon_sym_LPAREN2, [154170] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6859), 1, anon_sym_SEMI, [154177] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7808), 1, anon_sym_LPAREN2, [154184] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7810), 1, sym_identifier, [154191] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7159), 1, anon_sym_RBRACE, [154198] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7812), 1, sym_identifier, [154205] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4930), 1, anon_sym_RPAREN, [154212] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7814), 1, anon_sym_RPAREN, [154219] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7816), 1, anon_sym_RPAREN, [154226] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7818), 1, anon_sym_LPAREN2, [154233] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4962), 1, anon_sym_RPAREN, [154240] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7820), 1, anon_sym_STAR, [154247] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7822), 1, anon_sym_LF, [154254] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7824), 1, sym_identifier, [154261] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7826), 1, anon_sym_RPAREN, [154268] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4966), 1, anon_sym_RPAREN, [154275] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7828), 1, anon_sym_RPAREN, [154282] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6674), 1, anon_sym_SEMI, [154289] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7830), 1, anon_sym_COLON, [154296] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7832), 1, sym_identifier, [154303] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7834), 1, anon_sym_SEMI, [154310] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4944), 1, anon_sym_RPAREN, [154317] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7836), 1, anon_sym_while, [154324] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7838), 1, sym_identifier, [154331] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7840), 1, anon_sym_LPAREN2, [154338] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7842), 1, anon_sym_RPAREN, [154345] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7249), 1, anon_sym_RBRACE, [154352] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7844), 1, anon_sym_SEMI, [154359] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(5000), 1, anon_sym_SEMI, [154366] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7846), 1, anon_sym_SQUOTE, [154373] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7848), 1, anon_sym_LF, [154380] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7850), 1, anon_sym_SEMI, [154387] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7852), 1, aux_sym_preproc_if_token2, [154394] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7854), 1, sym_identifier, [154401] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4940), 1, anon_sym_SEMI, [154408] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7856), 1, anon_sym_RPAREN, [154415] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7858), 1, anon_sym_SEMI, [154422] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4982), 1, anon_sym_SEMI, [154429] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7860), 1, anon_sym_RPAREN, [154436] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7862), 1, sym_identifier, [154443] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7864), 1, anon_sym_SQUOTE, [154450] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7866), 1, anon_sym_RPAREN, [154457] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6666), 1, anon_sym_SEMI, [154464] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6680), 1, anon_sym_EQ, [154471] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7868), 1, sym_identifier, [154478] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7870), 1, anon_sym_RPAREN, [154485] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7872), 1, sym_identifier, [154492] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4938), 1, anon_sym_RPAREN, [154499] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6903), 1, anon_sym_SEMI, [154506] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7874), 1, anon_sym_SEMI, [154513] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7103), 1, anon_sym_RBRACE, [154520] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7876), 1, anon_sym_LF, [154527] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7878), 1, anon_sym_SEMI, [154534] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7880), 1, anon_sym_STAR, [154541] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7882), 1, anon_sym_COLON, [154548] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7884), 1, anon_sym_RPAREN, [154555] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7128), 1, anon_sym_RBRACE, [154562] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7886), 1, sym_identifier, [154569] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6312), 1, anon_sym_RPAREN, [154576] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7888), 1, anon_sym_SEMI, [154583] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7890), 1, anon_sym_SEMI, [154590] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7892), 1, anon_sym_SEMI, [154597] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6672), 1, anon_sym_EQ, [154604] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7894), 1, aux_sym_preproc_if_token2, [154611] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7896), 1, anon_sym_STAR, [154618] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7898), 1, anon_sym_SEMI, [154625] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4976), 1, anon_sym_SEMI, [154632] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7900), 1, anon_sym_SEMI, [154639] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7902), 1, aux_sym_preproc_if_token2, [154646] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7904), 1, aux_sym_preproc_if_token2, [154653] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7906), 1, anon_sym_RPAREN, [154660] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7908), 1, anon_sym_LF, [154667] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7910), 1, anon_sym_SEMI, [154674] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7912), 1, anon_sym_SEMI, [154681] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7914), 1, anon_sym_LF, [154688] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6855), 1, anon_sym_SEMI, [154695] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(5176), 1, anon_sym_RBRACK, [154702] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7916), 1, anon_sym_SEMI, [154709] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7918), 1, sym_identifier, [154716] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7920), 1, anon_sym_SEMI, [154723] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7922), 1, anon_sym_RPAREN, [154730] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7924), 1, anon_sym_LF, [154737] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4942), 1, anon_sym_SEMI, [154744] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7926), 1, anon_sym_SQUOTE, [154751] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4157), 1, sym_identifier, [154758] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7928), 1, anon_sym_SEMI, [154765] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7930), 1, anon_sym_SEMI, [154772] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4894), 1, anon_sym_RPAREN, [154779] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7932), 1, anon_sym_SEMI, [154786] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7934), 1, anon_sym_COLON, [154793] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7936), 1, aux_sym_preproc_if_token2, [154800] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6645), 1, anon_sym_SEMI, [154807] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6781), 1, anon_sym_SEMI, [154814] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(2833), 1, anon_sym_SEMI, [154821] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(5008), 1, anon_sym_RPAREN, [154828] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7938), 1, anon_sym_SEMI, [154835] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(5006), 1, anon_sym_RPAREN, [154842] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7940), 1, anon_sym_RPAREN, [154849] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4952), 1, anon_sym_RPAREN, [154856] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7942), 1, anon_sym_RPAREN, [154863] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4936), 1, anon_sym_RPAREN, [154870] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4747), 1, anon_sym_RBRACE, [154877] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4737), 1, anon_sym_RPAREN, [154884] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4886), 1, anon_sym_RPAREN, [154891] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7944), 1, anon_sym_COLON, [154898] = 2, ACTIONS(3292), 1, anon_sym_LF, ACTIONS(5675), 1, sym_comment, [154905] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7946), 1, anon_sym_LPAREN2, [154912] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6851), 1, anon_sym_SEMI, [154919] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6678), 1, anon_sym_SEMI, [154926] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7948), 1, anon_sym_LF, [154933] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7950), 1, sym_identifier, [154940] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4787), 1, anon_sym_RBRACE, [154947] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7952), 1, anon_sym_RPAREN, [154954] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7954), 1, anon_sym_LF, [154961] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7956), 1, aux_sym_preproc_if_token2, [154968] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7958), 1, aux_sym_preproc_if_token2, [154975] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7960), 1, anon_sym_RPAREN, [154982] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6188), 1, sym_identifier, [154989] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7962), 1, sym_identifier, [154996] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4924), 1, anon_sym_RPAREN, [155003] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7964), 1, anon_sym_SEMI, [155010] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7966), 1, sym_identifier, [155017] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4874), 1, anon_sym_RPAREN, [155024] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7968), 1, aux_sym_preproc_if_token2, [155031] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7970), 1, anon_sym_SQUOTE, [155038] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7972), 1, anon_sym_LPAREN2, [155045] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7974), 1, anon_sym_LF, [155052] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7976), 1, anon_sym_LPAREN2, [155059] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7978), 1, anon_sym_LPAREN2, [155066] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7980), 1, anon_sym_SEMI, [155073] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7982), 1, anon_sym_LPAREN2, [155080] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4984), 1, anon_sym_SEMI, [155087] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7984), 1, anon_sym_while, [155094] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7986), 1, anon_sym_SEMI, [155101] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7988), 1, aux_sym_preproc_if_token2, [155108] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7990), 1, anon_sym_RPAREN, [155115] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7992), 1, anon_sym_SEMI, [155122] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7994), 1, anon_sym_SEMI, [155129] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7996), 1, aux_sym_preproc_if_token2, [155136] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7998), 1, anon_sym_while, [155143] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8000), 1, anon_sym_SEMI, [155150] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8002), 1, anon_sym_LPAREN2, [155157] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8004), 1, anon_sym_SEMI, [155164] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8006), 1, anon_sym_SEMI, [155171] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8008), 1, aux_sym_preproc_if_token2, [155178] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8010), 1, anon_sym_SEMI, [155185] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8012), 1, anon_sym_SEMI, [155192] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8014), 1, anon_sym_SEMI, [155199] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8016), 1, anon_sym_SEMI, [155206] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4934), 1, anon_sym_SEMI, [155213] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8018), 1, anon_sym_RPAREN, [155220] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8020), 1, sym_identifier, [155227] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8022), 1, sym_identifier, [155234] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4986), 1, anon_sym_RPAREN, [155241] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8024), 1, anon_sym_STAR, [155248] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8026), 1, sym_identifier, [155255] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8028), 1, anon_sym_COLON, [155262] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4956), 1, anon_sym_RPAREN, [155269] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8030), 1, aux_sym_preproc_if_token2, [155276] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8032), 1, sym_identifier, [155283] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8034), 1, anon_sym_SEMI, [155290] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7418), 1, anon_sym_RBRACE, [155297] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8036), 1, anon_sym_STAR, [155304] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8038), 1, sym_identifier, [155311] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3249), 1, anon_sym_LBRACE, [155318] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7446), 1, anon_sym_RBRACE, [155325] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8040), 1, sym_identifier, [155332] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(8042), 1, anon_sym_LF, [155339] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8044), 1, anon_sym_LPAREN2, [155346] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8046), 1, anon_sym_SEMI, [155353] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8048), 1, anon_sym_RPAREN, [155360] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8050), 1, anon_sym_while, [155367] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8052), 1, anon_sym_SEMI, [155374] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8054), 1, anon_sym_LPAREN2, [155381] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4585), 1, anon_sym_SEMI, [155388] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4980), 1, anon_sym_RPAREN, [155395] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4884), 1, anon_sym_SEMI, [155402] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8056), 1, sym_identifier, [155409] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8058), 1, anon_sym_RPAREN, [155416] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6741), 1, anon_sym_SEMI, [155423] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8060), 1, sym_identifier, [155430] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8062), 1, anon_sym_RPAREN, [155437] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7448), 1, anon_sym_LF, [155444] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8064), 1, aux_sym_preproc_if_token2, [155451] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8066), 1, anon_sym_SEMI, [155458] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8068), 1, anon_sym_RPAREN, [155465] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4868), 1, anon_sym_RPAREN, [155472] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4896), 1, anon_sym_RPAREN, [155479] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8070), 1, anon_sym_SEMI, [155486] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(8072), 1, anon_sym_LF, [155493] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8074), 1, anon_sym_SEMI, [155500] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8076), 1, aux_sym_preproc_if_token2, [155507] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8078), 1, anon_sym_LPAREN2, [155514] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8080), 1, anon_sym_RPAREN, [155521] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8082), 1, anon_sym_SEMI, [155528] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8084), 1, anon_sym_while, [155535] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4880), 1, anon_sym_RPAREN, [155542] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4978), 1, anon_sym_RPAREN, [155549] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(7456), 1, anon_sym_LF, [155556] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4906), 1, anon_sym_SEMI, [155563] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8086), 1, sym_identifier, [155570] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8088), 1, aux_sym_preproc_if_token2, [155577] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(8090), 1, anon_sym_LF, [155584] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8092), 1, anon_sym_RPAREN, [155591] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8094), 1, anon_sym_LPAREN2, [155598] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3414), 1, anon_sym_COLON_COLON, [155605] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8096), 1, aux_sym_preproc_if_token2, [155612] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8098), 1, anon_sym_while, [155619] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4914), 1, anon_sym_RPAREN, [155626] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6801), 1, anon_sym_SEMI, [155633] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4970), 1, anon_sym_SEMI, [155640] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4994), 1, anon_sym_SEMI, [155647] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8100), 1, sym_identifier, [155654] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(8102), 1, anon_sym_LF, [155661] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8104), 1, anon_sym_SEMI, [155668] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8106), 1, anon_sym_SEMI, [155675] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8108), 1, anon_sym_LPAREN2, [155682] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4998), 1, anon_sym_RPAREN, [155689] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8110), 1, anon_sym_SEMI, [155696] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8112), 1, anon_sym_STAR, [155703] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8114), 1, sym_identifier, [155710] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8116), 1, anon_sym_RPAREN, [155717] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8118), 1, ts_builtin_sym_end, [155724] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8120), 1, anon_sym_SEMI, [155731] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8122), 1, anon_sym_LPAREN2, [155738] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8124), 1, anon_sym_LPAREN2, [155745] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8126), 1, anon_sym_LPAREN2, [155752] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4960), 1, anon_sym_RPAREN, [155759] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8128), 1, aux_sym_preproc_if_token2, [155766] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6334), 1, anon_sym_RPAREN, [155773] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8130), 1, aux_sym_preproc_if_token2, [155780] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8132), 1, anon_sym_LPAREN2, [155787] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8134), 1, aux_sym_preproc_if_token2, [155794] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4854), 1, anon_sym_RPAREN, [155801] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8136), 1, sym_identifier, [155808] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8138), 1, anon_sym_SEMI, [155815] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8140), 1, sym_identifier, [155822] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6670), 1, anon_sym_SEMI, [155829] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8142), 1, anon_sym_SEMI, [155836] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8144), 1, aux_sym_preproc_if_token2, [155843] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(8146), 1, anon_sym_LF, [155850] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8148), 1, aux_sym_preproc_if_token2, [155857] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(2823), 1, anon_sym_SEMI, [155864] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8150), 1, anon_sym_LPAREN2, [155871] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8152), 1, anon_sym_LPAREN2, [155878] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8154), 1, anon_sym_LPAREN2, [155885] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8156), 1, anon_sym_SEMI, [155892] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3941), 1, sym_identifier, [155899] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4898), 1, anon_sym_RPAREN, [155906] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8158), 1, anon_sym_COLON, [155913] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(3269), 1, anon_sym_LBRACE, [155920] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6649), 1, anon_sym_SEMI, [155927] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6901), 1, anon_sym_SEMI, [155934] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8160), 1, anon_sym_RPAREN, [155941] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4827), 1, anon_sym_RBRACE, [155948] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8162), 1, anon_sym_LPAREN2, [155955] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8164), 1, anon_sym_LPAREN2, [155962] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(8166), 1, anon_sym_LF, [155969] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8168), 1, anon_sym_SQUOTE, [155976] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8170), 1, anon_sym_SEMI, [155983] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(4842), 1, anon_sym_SEMI, [155990] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8172), 1, anon_sym_SEMI, [155997] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8174), 1, anon_sym_SEMI, [156004] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8176), 1, anon_sym_SEMI, [156011] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8178), 1, anon_sym_LPAREN2, [156018] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8180), 1, anon_sym_LPAREN2, [156025] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(7410), 1, anon_sym_RBRACE, [156032] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8182), 1, anon_sym_SEMI, [156039] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8184), 1, anon_sym_LPAREN2, [156046] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8186), 1, anon_sym_LPAREN2, [156053] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8188), 1, anon_sym_SEMI, [156060] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8190), 1, anon_sym_LPAREN2, [156067] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8192), 1, anon_sym_LPAREN2, [156074] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8194), 1, anon_sym_SEMI, [156081] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(6731), 1, anon_sym_SEMI, [156088] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8196), 1, anon_sym_LPAREN2, [156095] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8198), 1, anon_sym_SEMI, [156102] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8200), 1, anon_sym_STAR, [156109] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8202), 1, sym_identifier, [156116] = 2, ACTIONS(5675), 1, sym_comment, ACTIONS(8204), 1, anon_sym_LF, [156123] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(8206), 1, sym_identifier, }; static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(1329)] = 0, [SMALL_STATE(1330)] = 85, [SMALL_STATE(1331)] = 156, [SMALL_STATE(1332)] = 283, [SMALL_STATE(1333)] = 410, [SMALL_STATE(1334)] = 501, [SMALL_STATE(1335)] = 628, [SMALL_STATE(1336)] = 713, [SMALL_STATE(1337)] = 784, [SMALL_STATE(1338)] = 877, [SMALL_STATE(1339)] = 970, [SMALL_STATE(1340)] = 1069, [SMALL_STATE(1341)] = 1140, [SMALL_STATE(1342)] = 1239, [SMALL_STATE(1343)] = 1332, [SMALL_STATE(1344)] = 1403, [SMALL_STATE(1345)] = 1496, [SMALL_STATE(1346)] = 1623, [SMALL_STATE(1347)] = 1694, [SMALL_STATE(1348)] = 1765, [SMALL_STATE(1349)] = 1836, [SMALL_STATE(1350)] = 1929, [SMALL_STATE(1351)] = 2028, [SMALL_STATE(1352)] = 2154, [SMALL_STATE(1353)] = 2280, [SMALL_STATE(1354)] = 2368, [SMALL_STATE(1355)] = 2446, [SMALL_STATE(1356)] = 2572, [SMALL_STATE(1357)] = 2650, [SMALL_STATE(1358)] = 2734, [SMALL_STATE(1359)] = 2811, [SMALL_STATE(1360)] = 2931, [SMALL_STATE(1361)] = 3048, [SMALL_STATE(1362)] = 3114, [SMALL_STATE(1363)] = 3180, [SMALL_STATE(1364)] = 3246, [SMALL_STATE(1365)] = 3312, [SMALL_STATE(1366)] = 3378, [SMALL_STATE(1367)] = 3444, [SMALL_STATE(1368)] = 3510, [SMALL_STATE(1369)] = 3629, [SMALL_STATE(1370)] = 3748, [SMALL_STATE(1371)] = 3814, [SMALL_STATE(1372)] = 3930, [SMALL_STATE(1373)] = 4041, [SMALL_STATE(1374)] = 4152, [SMALL_STATE(1375)] = 4263, [SMALL_STATE(1376)] = 4374, [SMALL_STATE(1377)] = 4441, [SMALL_STATE(1378)] = 4552, [SMALL_STATE(1379)] = 4663, [SMALL_STATE(1380)] = 4774, [SMALL_STATE(1381)] = 4885, [SMALL_STATE(1382)] = 4996, [SMALL_STATE(1383)] = 5107, [SMALL_STATE(1384)] = 5218, [SMALL_STATE(1385)] = 5280, [SMALL_STATE(1386)] = 5342, [SMALL_STATE(1387)] = 5404, [SMALL_STATE(1388)] = 5468, [SMALL_STATE(1389)] = 5530, [SMALL_STATE(1390)] = 5592, [SMALL_STATE(1391)] = 5654, [SMALL_STATE(1392)] = 5716, [SMALL_STATE(1393)] = 5778, [SMALL_STATE(1394)] = 5840, [SMALL_STATE(1395)] = 5902, [SMALL_STATE(1396)] = 5964, [SMALL_STATE(1397)] = 6026, [SMALL_STATE(1398)] = 6088, [SMALL_STATE(1399)] = 6150, [SMALL_STATE(1400)] = 6212, [SMALL_STATE(1401)] = 6274, [SMALL_STATE(1402)] = 6336, [SMALL_STATE(1403)] = 6398, [SMALL_STATE(1404)] = 6460, [SMALL_STATE(1405)] = 6522, [SMALL_STATE(1406)] = 6584, [SMALL_STATE(1407)] = 6646, [SMALL_STATE(1408)] = 6708, [SMALL_STATE(1409)] = 6770, [SMALL_STATE(1410)] = 6832, [SMALL_STATE(1411)] = 6894, [SMALL_STATE(1412)] = 6956, [SMALL_STATE(1413)] = 7018, [SMALL_STATE(1414)] = 7080, [SMALL_STATE(1415)] = 7142, [SMALL_STATE(1416)] = 7204, [SMALL_STATE(1417)] = 7266, [SMALL_STATE(1418)] = 7328, [SMALL_STATE(1419)] = 7390, [SMALL_STATE(1420)] = 7452, [SMALL_STATE(1421)] = 7514, [SMALL_STATE(1422)] = 7576, [SMALL_STATE(1423)] = 7638, [SMALL_STATE(1424)] = 7700, [SMALL_STATE(1425)] = 7762, [SMALL_STATE(1426)] = 7824, [SMALL_STATE(1427)] = 7886, [SMALL_STATE(1428)] = 7948, [SMALL_STATE(1429)] = 8010, [SMALL_STATE(1430)] = 8072, [SMALL_STATE(1431)] = 8134, [SMALL_STATE(1432)] = 8196, [SMALL_STATE(1433)] = 8258, [SMALL_STATE(1434)] = 8320, [SMALL_STATE(1435)] = 8382, [SMALL_STATE(1436)] = 8444, [SMALL_STATE(1437)] = 8506, [SMALL_STATE(1438)] = 8568, [SMALL_STATE(1439)] = 8630, [SMALL_STATE(1440)] = 8692, [SMALL_STATE(1441)] = 8754, [SMALL_STATE(1442)] = 8816, [SMALL_STATE(1443)] = 8878, [SMALL_STATE(1444)] = 8940, [SMALL_STATE(1445)] = 9002, [SMALL_STATE(1446)] = 9064, [SMALL_STATE(1447)] = 9126, [SMALL_STATE(1448)] = 9188, [SMALL_STATE(1449)] = 9250, [SMALL_STATE(1450)] = 9312, [SMALL_STATE(1451)] = 9374, [SMALL_STATE(1452)] = 9436, [SMALL_STATE(1453)] = 9498, [SMALL_STATE(1454)] = 9560, [SMALL_STATE(1455)] = 9622, [SMALL_STATE(1456)] = 9684, [SMALL_STATE(1457)] = 9746, [SMALL_STATE(1458)] = 9808, [SMALL_STATE(1459)] = 9872, [SMALL_STATE(1460)] = 9933, [SMALL_STATE(1461)] = 9994, [SMALL_STATE(1462)] = 10055, [SMALL_STATE(1463)] = 10116, [SMALL_STATE(1464)] = 10177, [SMALL_STATE(1465)] = 10238, [SMALL_STATE(1466)] = 10299, [SMALL_STATE(1467)] = 10359, [SMALL_STATE(1468)] = 10419, [SMALL_STATE(1469)] = 10479, [SMALL_STATE(1470)] = 10539, [SMALL_STATE(1471)] = 10599, [SMALL_STATE(1472)] = 10659, [SMALL_STATE(1473)] = 10719, [SMALL_STATE(1474)] = 10779, [SMALL_STATE(1475)] = 10839, [SMALL_STATE(1476)] = 10899, [SMALL_STATE(1477)] = 10959, [SMALL_STATE(1478)] = 11019, [SMALL_STATE(1479)] = 11079, [SMALL_STATE(1480)] = 11139, [SMALL_STATE(1481)] = 11199, [SMALL_STATE(1482)] = 11259, [SMALL_STATE(1483)] = 11319, [SMALL_STATE(1484)] = 11379, [SMALL_STATE(1485)] = 11439, [SMALL_STATE(1486)] = 11499, [SMALL_STATE(1487)] = 11559, [SMALL_STATE(1488)] = 11619, [SMALL_STATE(1489)] = 11679, [SMALL_STATE(1490)] = 11745, [SMALL_STATE(1491)] = 11805, [SMALL_STATE(1492)] = 11865, [SMALL_STATE(1493)] = 11925, [SMALL_STATE(1494)] = 11985, [SMALL_STATE(1495)] = 12045, [SMALL_STATE(1496)] = 12105, [SMALL_STATE(1497)] = 12165, [SMALL_STATE(1498)] = 12273, [SMALL_STATE(1499)] = 12381, [SMALL_STATE(1500)] = 12441, [SMALL_STATE(1501)] = 12501, [SMALL_STATE(1502)] = 12609, [SMALL_STATE(1503)] = 12669, [SMALL_STATE(1504)] = 12729, [SMALL_STATE(1505)] = 12789, [SMALL_STATE(1506)] = 12897, [SMALL_STATE(1507)] = 12957, [SMALL_STATE(1508)] = 13017, [SMALL_STATE(1509)] = 13077, [SMALL_STATE(1510)] = 13137, [SMALL_STATE(1511)] = 13197, [SMALL_STATE(1512)] = 13257, [SMALL_STATE(1513)] = 13317, [SMALL_STATE(1514)] = 13377, [SMALL_STATE(1515)] = 13437, [SMALL_STATE(1516)] = 13497, [SMALL_STATE(1517)] = 13557, [SMALL_STATE(1518)] = 13617, [SMALL_STATE(1519)] = 13677, [SMALL_STATE(1520)] = 13737, [SMALL_STATE(1521)] = 13797, [SMALL_STATE(1522)] = 13857, [SMALL_STATE(1523)] = 13917, [SMALL_STATE(1524)] = 14025, [SMALL_STATE(1525)] = 14085, [SMALL_STATE(1526)] = 14145, [SMALL_STATE(1527)] = 14205, [SMALL_STATE(1528)] = 14265, [SMALL_STATE(1529)] = 14325, [SMALL_STATE(1530)] = 14385, [SMALL_STATE(1531)] = 14445, [SMALL_STATE(1532)] = 14505, [SMALL_STATE(1533)] = 14565, [SMALL_STATE(1534)] = 14625, [SMALL_STATE(1535)] = 14685, [SMALL_STATE(1536)] = 14745, [SMALL_STATE(1537)] = 14805, [SMALL_STATE(1538)] = 14865, [SMALL_STATE(1539)] = 14925, [SMALL_STATE(1540)] = 14985, [SMALL_STATE(1541)] = 15045, [SMALL_STATE(1542)] = 15105, [SMALL_STATE(1543)] = 15165, [SMALL_STATE(1544)] = 15225, [SMALL_STATE(1545)] = 15285, [SMALL_STATE(1546)] = 15345, [SMALL_STATE(1547)] = 15405, [SMALL_STATE(1548)] = 15465, [SMALL_STATE(1549)] = 15525, [SMALL_STATE(1550)] = 15585, [SMALL_STATE(1551)] = 15645, [SMALL_STATE(1552)] = 15705, [SMALL_STATE(1553)] = 15765, [SMALL_STATE(1554)] = 15825, [SMALL_STATE(1555)] = 15885, [SMALL_STATE(1556)] = 15993, [SMALL_STATE(1557)] = 16053, [SMALL_STATE(1558)] = 16113, [SMALL_STATE(1559)] = 16173, [SMALL_STATE(1560)] = 16233, [SMALL_STATE(1561)] = 16293, [SMALL_STATE(1562)] = 16353, [SMALL_STATE(1563)] = 16413, [SMALL_STATE(1564)] = 16473, [SMALL_STATE(1565)] = 16533, [SMALL_STATE(1566)] = 16593, [SMALL_STATE(1567)] = 16653, [SMALL_STATE(1568)] = 16713, [SMALL_STATE(1569)] = 16773, [SMALL_STATE(1570)] = 16833, [SMALL_STATE(1571)] = 16893, [SMALL_STATE(1572)] = 16953, [SMALL_STATE(1573)] = 17013, [SMALL_STATE(1574)] = 17073, [SMALL_STATE(1575)] = 17133, [SMALL_STATE(1576)] = 17193, [SMALL_STATE(1577)] = 17253, [SMALL_STATE(1578)] = 17313, [SMALL_STATE(1579)] = 17379, [SMALL_STATE(1580)] = 17439, [SMALL_STATE(1581)] = 17499, [SMALL_STATE(1582)] = 17559, [SMALL_STATE(1583)] = 17667, [SMALL_STATE(1584)] = 17727, [SMALL_STATE(1585)] = 17787, [SMALL_STATE(1586)] = 17847, [SMALL_STATE(1587)] = 17907, [SMALL_STATE(1588)] = 17967, [SMALL_STATE(1589)] = 18027, [SMALL_STATE(1590)] = 18087, [SMALL_STATE(1591)] = 18147, [SMALL_STATE(1592)] = 18255, [SMALL_STATE(1593)] = 18315, [SMALL_STATE(1594)] = 18375, [SMALL_STATE(1595)] = 18435, [SMALL_STATE(1596)] = 18495, [SMALL_STATE(1597)] = 18555, [SMALL_STATE(1598)] = 18615, [SMALL_STATE(1599)] = 18675, [SMALL_STATE(1600)] = 18735, [SMALL_STATE(1601)] = 18795, [SMALL_STATE(1602)] = 18855, [SMALL_STATE(1603)] = 18915, [SMALL_STATE(1604)] = 18975, [SMALL_STATE(1605)] = 19035, [SMALL_STATE(1606)] = 19095, [SMALL_STATE(1607)] = 19155, [SMALL_STATE(1608)] = 19215, [SMALL_STATE(1609)] = 19275, [SMALL_STATE(1610)] = 19335, [SMALL_STATE(1611)] = 19395, [SMALL_STATE(1612)] = 19455, [SMALL_STATE(1613)] = 19515, [SMALL_STATE(1614)] = 19575, [SMALL_STATE(1615)] = 19635, [SMALL_STATE(1616)] = 19695, [SMALL_STATE(1617)] = 19755, [SMALL_STATE(1618)] = 19823, [SMALL_STATE(1619)] = 19883, [SMALL_STATE(1620)] = 19991, [SMALL_STATE(1621)] = 20051, [SMALL_STATE(1622)] = 20111, [SMALL_STATE(1623)] = 20171, [SMALL_STATE(1624)] = 20231, [SMALL_STATE(1625)] = 20291, [SMALL_STATE(1626)] = 20351, [SMALL_STATE(1627)] = 20414, [SMALL_STATE(1628)] = 20481, [SMALL_STATE(1629)] = 20548, [SMALL_STATE(1630)] = 20653, [SMALL_STATE(1631)] = 20720, [SMALL_STATE(1632)] = 20825, [SMALL_STATE(1633)] = 20932, [SMALL_STATE(1634)] = 20999, [SMALL_STATE(1635)] = 21104, [SMALL_STATE(1636)] = 21209, [SMALL_STATE(1637)] = 21267, [SMALL_STATE(1638)] = 21325, [SMALL_STATE(1639)] = 21383, [SMALL_STATE(1640)] = 21441, [SMALL_STATE(1641)] = 21499, [SMALL_STATE(1642)] = 21557, [SMALL_STATE(1643)] = 21615, [SMALL_STATE(1644)] = 21673, [SMALL_STATE(1645)] = 21731, [SMALL_STATE(1646)] = 21789, [SMALL_STATE(1647)] = 21847, [SMALL_STATE(1648)] = 21930, [SMALL_STATE(1649)] = 21999, [SMALL_STATE(1650)] = 22068, [SMALL_STATE(1651)] = 22137, [SMALL_STATE(1652)] = 22206, [SMALL_STATE(1653)] = 22277, [SMALL_STATE(1654)] = 22346, [SMALL_STATE(1655)] = 22415, [SMALL_STATE(1656)] = 22484, [SMALL_STATE(1657)] = 22553, [SMALL_STATE(1658)] = 22622, [SMALL_STATE(1659)] = 22686, [SMALL_STATE(1660)] = 22756, [SMALL_STATE(1661)] = 22818, [SMALL_STATE(1662)] = 22894, [SMALL_STATE(1663)] = 22956, [SMALL_STATE(1664)] = 23018, [SMALL_STATE(1665)] = 23080, [SMALL_STATE(1666)] = 23156, [SMALL_STATE(1667)] = 23226, [SMALL_STATE(1668)] = 23290, [SMALL_STATE(1669)] = 23355, [SMALL_STATE(1670)] = 23414, [SMALL_STATE(1671)] = 23469, [SMALL_STATE(1672)] = 23524, [SMALL_STATE(1673)] = 23589, [SMALL_STATE(1674)] = 23654, [SMALL_STATE(1675)] = 23711, [SMALL_STATE(1676)] = 23774, [SMALL_STATE(1677)] = 23831, [SMALL_STATE(1678)] = 23896, [SMALL_STATE(1679)] = 23959, [SMALL_STATE(1680)] = 24016, [SMALL_STATE(1681)] = 24079, [SMALL_STATE(1682)] = 24145, [SMALL_STATE(1683)] = 24211, [SMALL_STATE(1684)] = 24265, [SMALL_STATE(1685)] = 24325, [SMALL_STATE(1686)] = 24379, [SMALL_STATE(1687)] = 24439, [SMALL_STATE(1688)] = 24493, [SMALL_STATE(1689)] = 24551, [SMALL_STATE(1690)] = 24611, [SMALL_STATE(1691)] = 24671, [SMALL_STATE(1692)] = 24733, [SMALL_STATE(1693)] = 24795, [SMALL_STATE(1694)] = 24849, [SMALL_STATE(1695)] = 24909, [SMALL_STATE(1696)] = 24969, [SMALL_STATE(1697)] = 25035, [SMALL_STATE(1698)] = 25093, [SMALL_STATE(1699)] = 25147, [SMALL_STATE(1700)] = 25213, [SMALL_STATE(1701)] = 25279, [SMALL_STATE(1702)] = 25333, [SMALL_STATE(1703)] = 25387, [SMALL_STATE(1704)] = 25453, [SMALL_STATE(1705)] = 25507, [SMALL_STATE(1706)] = 25567, [SMALL_STATE(1707)] = 25633, [SMALL_STATE(1708)] = 25699, [SMALL_STATE(1709)] = 25753, [SMALL_STATE(1710)] = 25815, [SMALL_STATE(1711)] = 25881, [SMALL_STATE(1712)] = 25938, [SMALL_STATE(1713)] = 25997, [SMALL_STATE(1714)] = 26058, [SMALL_STATE(1715)] = 26113, [SMALL_STATE(1716)] = 26168, [SMALL_STATE(1717)] = 26223, [SMALL_STATE(1718)] = 26278, [SMALL_STATE(1719)] = 26343, [SMALL_STATE(1720)] = 26412, [SMALL_STATE(1721)] = 26469, [SMALL_STATE(1722)] = 26528, [SMALL_STATE(1723)] = 26595, [SMALL_STATE(1724)] = 26652, [SMALL_STATE(1725)] = 26709, [SMALL_STATE(1726)] = 26766, [SMALL_STATE(1727)] = 26822, [SMALL_STATE(1728)] = 26874, [SMALL_STATE(1729)] = 26926, [SMALL_STATE(1730)] = 26978, [SMALL_STATE(1731)] = 27032, [SMALL_STATE(1732)] = 27084, [SMALL_STATE(1733)] = 27136, [SMALL_STATE(1734)] = 27190, [SMALL_STATE(1735)] = 27242, [SMALL_STATE(1736)] = 27294, [SMALL_STATE(1737)] = 27346, [SMALL_STATE(1738)] = 27398, [SMALL_STATE(1739)] = 27450, [SMALL_STATE(1740)] = 27502, [SMALL_STATE(1741)] = 27554, [SMALL_STATE(1742)] = 27606, [SMALL_STATE(1743)] = 27658, [SMALL_STATE(1744)] = 27710, [SMALL_STATE(1745)] = 27762, [SMALL_STATE(1746)] = 27814, [SMALL_STATE(1747)] = 27866, [SMALL_STATE(1748)] = 27918, [SMALL_STATE(1749)] = 27982, [SMALL_STATE(1750)] = 28034, [SMALL_STATE(1751)] = 28086, [SMALL_STATE(1752)] = 28138, [SMALL_STATE(1753)] = 28190, [SMALL_STATE(1754)] = 28242, [SMALL_STATE(1755)] = 28294, [SMALL_STATE(1756)] = 28346, [SMALL_STATE(1757)] = 28398, [SMALL_STATE(1758)] = 28450, [SMALL_STATE(1759)] = 28502, [SMALL_STATE(1760)] = 28556, [SMALL_STATE(1761)] = 28608, [SMALL_STATE(1762)] = 28660, [SMALL_STATE(1763)] = 28712, [SMALL_STATE(1764)] = 28764, [SMALL_STATE(1765)] = 28816, [SMALL_STATE(1766)] = 28868, [SMALL_STATE(1767)] = 28932, [SMALL_STATE(1768)] = 28996, [SMALL_STATE(1769)] = 29048, [SMALL_STATE(1770)] = 29104, [SMALL_STATE(1771)] = 29156, [SMALL_STATE(1772)] = 29208, [SMALL_STATE(1773)] = 29260, [SMALL_STATE(1774)] = 29324, [SMALL_STATE(1775)] = 29376, [SMALL_STATE(1776)] = 29428, [SMALL_STATE(1777)] = 29492, [SMALL_STATE(1778)] = 29544, [SMALL_STATE(1779)] = 29596, [SMALL_STATE(1780)] = 29648, [SMALL_STATE(1781)] = 29740, [SMALL_STATE(1782)] = 29804, [SMALL_STATE(1783)] = 29856, [SMALL_STATE(1784)] = 29920, [SMALL_STATE(1785)] = 29984, [SMALL_STATE(1786)] = 30048, [SMALL_STATE(1787)] = 30100, [SMALL_STATE(1788)] = 30152, [SMALL_STATE(1789)] = 30204, [SMALL_STATE(1790)] = 30268, [SMALL_STATE(1791)] = 30320, [SMALL_STATE(1792)] = 30372, [SMALL_STATE(1793)] = 30424, [SMALL_STATE(1794)] = 30476, [SMALL_STATE(1795)] = 30528, [SMALL_STATE(1796)] = 30580, [SMALL_STATE(1797)] = 30634, [SMALL_STATE(1798)] = 30686, [SMALL_STATE(1799)] = 30738, [SMALL_STATE(1800)] = 30790, [SMALL_STATE(1801)] = 30842, [SMALL_STATE(1802)] = 30894, [SMALL_STATE(1803)] = 30946, [SMALL_STATE(1804)] = 30998, [SMALL_STATE(1805)] = 31050, [SMALL_STATE(1806)] = 31102, [SMALL_STATE(1807)] = 31154, [SMALL_STATE(1808)] = 31246, [SMALL_STATE(1809)] = 31300, [SMALL_STATE(1810)] = 31354, [SMALL_STATE(1811)] = 31406, [SMALL_STATE(1812)] = 31458, [SMALL_STATE(1813)] = 31541, [SMALL_STATE(1814)] = 31630, [SMALL_STATE(1815)] = 31721, [SMALL_STATE(1816)] = 31790, [SMALL_STATE(1817)] = 31857, [SMALL_STATE(1818)] = 31918, [SMALL_STATE(1819)] = 31969, [SMALL_STATE(1820)] = 32020, [SMALL_STATE(1821)] = 32071, [SMALL_STATE(1822)] = 32122, [SMALL_STATE(1823)] = 32173, [SMALL_STATE(1824)] = 32224, [SMALL_STATE(1825)] = 32285, [SMALL_STATE(1826)] = 32336, [SMALL_STATE(1827)] = 32397, [SMALL_STATE(1828)] = 32482, [SMALL_STATE(1829)] = 32573, [SMALL_STATE(1830)] = 32624, [SMALL_STATE(1831)] = 32675, [SMALL_STATE(1832)] = 32766, [SMALL_STATE(1833)] = 32831, [SMALL_STATE(1834)] = 32894, [SMALL_STATE(1835)] = 32945, [SMALL_STATE(1836)] = 33036, [SMALL_STATE(1837)] = 33097, [SMALL_STATE(1838)] = 33166, [SMALL_STATE(1839)] = 33221, [SMALL_STATE(1840)] = 33286, [SMALL_STATE(1841)] = 33377, [SMALL_STATE(1842)] = 33468, [SMALL_STATE(1843)] = 33519, [SMALL_STATE(1844)] = 33570, [SMALL_STATE(1845)] = 33655, [SMALL_STATE(1846)] = 33720, [SMALL_STATE(1847)] = 33781, [SMALL_STATE(1848)] = 33834, [SMALL_STATE(1849)] = 33885, [SMALL_STATE(1850)] = 33936, [SMALL_STATE(1851)] = 34027, [SMALL_STATE(1852)] = 34118, [SMALL_STATE(1853)] = 34209, [SMALL_STATE(1854)] = 34278, [SMALL_STATE(1855)] = 34341, [SMALL_STATE(1856)] = 34432, [SMALL_STATE(1857)] = 34523, [SMALL_STATE(1858)] = 34574, [SMALL_STATE(1859)] = 34625, [SMALL_STATE(1860)] = 34676, [SMALL_STATE(1861)] = 34727, [SMALL_STATE(1862)] = 34792, [SMALL_STATE(1863)] = 34843, [SMALL_STATE(1864)] = 34894, [SMALL_STATE(1865)] = 34945, [SMALL_STATE(1866)] = 35036, [SMALL_STATE(1867)] = 35121, [SMALL_STATE(1868)] = 35172, [SMALL_STATE(1869)] = 35223, [SMALL_STATE(1870)] = 35292, [SMALL_STATE(1871)] = 35343, [SMALL_STATE(1872)] = 35434, [SMALL_STATE(1873)] = 35485, [SMALL_STATE(1874)] = 35546, [SMALL_STATE(1875)] = 35609, [SMALL_STATE(1876)] = 35660, [SMALL_STATE(1877)] = 35751, [SMALL_STATE(1878)] = 35802, [SMALL_STATE(1879)] = 35893, [SMALL_STATE(1880)] = 35984, [SMALL_STATE(1881)] = 36069, [SMALL_STATE(1882)] = 36120, [SMALL_STATE(1883)] = 36171, [SMALL_STATE(1884)] = 36236, [SMALL_STATE(1885)] = 36301, [SMALL_STATE(1886)] = 36352, [SMALL_STATE(1887)] = 36443, [SMALL_STATE(1888)] = 36494, [SMALL_STATE(1889)] = 36581, [SMALL_STATE(1890)] = 36672, [SMALL_STATE(1891)] = 36729, [SMALL_STATE(1892)] = 36780, [SMALL_STATE(1893)] = 36831, [SMALL_STATE(1894)] = 36888, [SMALL_STATE(1895)] = 36939, [SMALL_STATE(1896)] = 36990, [SMALL_STATE(1897)] = 37041, [SMALL_STATE(1898)] = 37118, [SMALL_STATE(1899)] = 37197, [SMALL_STATE(1900)] = 37288, [SMALL_STATE(1901)] = 37379, [SMALL_STATE(1902)] = 37430, [SMALL_STATE(1903)] = 37481, [SMALL_STATE(1904)] = 37572, [SMALL_STATE(1905)] = 37623, [SMALL_STATE(1906)] = 37674, [SMALL_STATE(1907)] = 37755, [SMALL_STATE(1908)] = 37806, [SMALL_STATE(1909)] = 37881, [SMALL_STATE(1910)] = 37932, [SMALL_STATE(1911)] = 37983, [SMALL_STATE(1912)] = 38056, [SMALL_STATE(1913)] = 38107, [SMALL_STATE(1914)] = 38170, [SMALL_STATE(1915)] = 38221, [SMALL_STATE(1916)] = 38286, [SMALL_STATE(1917)] = 38337, [SMALL_STATE(1918)] = 38388, [SMALL_STATE(1919)] = 38439, [SMALL_STATE(1920)] = 38490, [SMALL_STATE(1921)] = 38541, [SMALL_STATE(1922)] = 38595, [SMALL_STATE(1923)] = 38657, [SMALL_STATE(1924)] = 38707, [SMALL_STATE(1925)] = 38763, [SMALL_STATE(1926)] = 38817, [SMALL_STATE(1927)] = 38873, [SMALL_STATE(1928)] = 38923, [SMALL_STATE(1929)] = 38973, [SMALL_STATE(1930)] = 39023, [SMALL_STATE(1931)] = 39079, [SMALL_STATE(1932)] = 39133, [SMALL_STATE(1933)] = 39189, [SMALL_STATE(1934)] = 39241, [SMALL_STATE(1935)] = 39291, [SMALL_STATE(1936)] = 39341, [SMALL_STATE(1937)] = 39391, [SMALL_STATE(1938)] = 39447, [SMALL_STATE(1939)] = 39505, [SMALL_STATE(1940)] = 39561, [SMALL_STATE(1941)] = 39619, [SMALL_STATE(1942)] = 39669, [SMALL_STATE(1943)] = 39719, [SMALL_STATE(1944)] = 39773, [SMALL_STATE(1945)] = 39827, [SMALL_STATE(1946)] = 39879, [SMALL_STATE(1947)] = 39935, [SMALL_STATE(1948)] = 39987, [SMALL_STATE(1949)] = 40037, [SMALL_STATE(1950)] = 40097, [SMALL_STATE(1951)] = 40159, [SMALL_STATE(1952)] = 40209, [SMALL_STATE(1953)] = 40263, [SMALL_STATE(1954)] = 40321, [SMALL_STATE(1955)] = 40371, [SMALL_STATE(1956)] = 40421, [SMALL_STATE(1957)] = 40482, [SMALL_STATE(1958)] = 40543, [SMALL_STATE(1959)] = 40598, [SMALL_STATE(1960)] = 40649, [SMALL_STATE(1961)] = 40700, [SMALL_STATE(1962)] = 40755, [SMALL_STATE(1963)] = 40808, [SMALL_STATE(1964)] = 40869, [SMALL_STATE(1965)] = 40930, [SMALL_STATE(1966)] = 40985, [SMALL_STATE(1967)] = 41046, [SMALL_STATE(1968)] = 41107, [SMALL_STATE(1969)] = 41168, [SMALL_STATE(1970)] = 41223, [SMALL_STATE(1971)] = 41284, [SMALL_STATE(1972)] = 41337, [SMALL_STATE(1973)] = 41398, [SMALL_STATE(1974)] = 41451, [SMALL_STATE(1975)] = 41506, [SMALL_STATE(1976)] = 41563, [SMALL_STATE(1977)] = 41614, [SMALL_STATE(1978)] = 41675, [SMALL_STATE(1979)] = 41730, [SMALL_STATE(1980)] = 41783, [SMALL_STATE(1981)] = 41834, [SMALL_STATE(1982)] = 41906, [SMALL_STATE(1983)] = 41954, [SMALL_STATE(1984)] = 42036, [SMALL_STATE(1985)] = 42084, [SMALL_STATE(1986)] = 42166, [SMALL_STATE(1987)] = 42226, [SMALL_STATE(1988)] = 42312, [SMALL_STATE(1989)] = 42360, [SMALL_STATE(1990)] = 42424, [SMALL_STATE(1991)] = 42490, [SMALL_STATE(1992)] = 42560, [SMALL_STATE(1993)] = 42608, [SMALL_STATE(1994)] = 42682, [SMALL_STATE(1995)] = 42758, [SMALL_STATE(1996)] = 42836, [SMALL_STATE(1997)] = 42916, [SMALL_STATE(1998)] = 42976, [SMALL_STATE(1999)] = 43038, [SMALL_STATE(2000)] = 43086, [SMALL_STATE(2001)] = 43178, [SMALL_STATE(2002)] = 43228, [SMALL_STATE(2003)] = 43276, [SMALL_STATE(2004)] = 43324, [SMALL_STATE(2005)] = 43372, [SMALL_STATE(2006)] = 43464, [SMALL_STATE(2007)] = 43512, [SMALL_STATE(2008)] = 43560, [SMALL_STATE(2009)] = 43644, [SMALL_STATE(2010)] = 43692, [SMALL_STATE(2011)] = 43740, [SMALL_STATE(2012)] = 43788, [SMALL_STATE(2013)] = 43836, [SMALL_STATE(2014)] = 43884, [SMALL_STATE(2015)] = 43936, [SMALL_STATE(2016)] = 43984, [SMALL_STATE(2017)] = 44032, [SMALL_STATE(2018)] = 44080, [SMALL_STATE(2019)] = 44128, [SMALL_STATE(2020)] = 44176, [SMALL_STATE(2021)] = 44224, [SMALL_STATE(2022)] = 44306, [SMALL_STATE(2023)] = 44354, [SMALL_STATE(2024)] = 44402, [SMALL_STATE(2025)] = 44450, [SMALL_STATE(2026)] = 44498, [SMALL_STATE(2027)] = 44546, [SMALL_STATE(2028)] = 44594, [SMALL_STATE(2029)] = 44642, [SMALL_STATE(2030)] = 44690, [SMALL_STATE(2031)] = 44738, [SMALL_STATE(2032)] = 44786, [SMALL_STATE(2033)] = 44834, [SMALL_STATE(2034)] = 44882, [SMALL_STATE(2035)] = 44930, [SMALL_STATE(2036)] = 44978, [SMALL_STATE(2037)] = 45026, [SMALL_STATE(2038)] = 45074, [SMALL_STATE(2039)] = 45132, [SMALL_STATE(2040)] = 45180, [SMALL_STATE(2041)] = 45228, [SMALL_STATE(2042)] = 45310, [SMALL_STATE(2043)] = 45358, [SMALL_STATE(2044)] = 45406, [SMALL_STATE(2045)] = 45454, [SMALL_STATE(2046)] = 45502, [SMALL_STATE(2047)] = 45550, [SMALL_STATE(2048)] = 45616, [SMALL_STATE(2049)] = 45676, [SMALL_STATE(2050)] = 45724, [SMALL_STATE(2051)] = 45772, [SMALL_STATE(2052)] = 45820, [SMALL_STATE(2053)] = 45868, [SMALL_STATE(2054)] = 45916, [SMALL_STATE(2055)] = 45964, [SMALL_STATE(2056)] = 46012, [SMALL_STATE(2057)] = 46060, [SMALL_STATE(2058)] = 46108, [SMALL_STATE(2059)] = 46156, [SMALL_STATE(2060)] = 46204, [SMALL_STATE(2061)] = 46252, [SMALL_STATE(2062)] = 46300, [SMALL_STATE(2063)] = 46348, [SMALL_STATE(2064)] = 46396, [SMALL_STATE(2065)] = 46444, [SMALL_STATE(2066)] = 46504, [SMALL_STATE(2067)] = 46554, [SMALL_STATE(2068)] = 46612, [SMALL_STATE(2069)] = 46660, [SMALL_STATE(2070)] = 46708, [SMALL_STATE(2071)] = 46756, [SMALL_STATE(2072)] = 46806, [SMALL_STATE(2073)] = 46865, [SMALL_STATE(2074)] = 46912, [SMALL_STATE(2075)] = 46959, [SMALL_STATE(2076)] = 47006, [SMALL_STATE(2077)] = 47053, [SMALL_STATE(2078)] = 47100, [SMALL_STATE(2079)] = 47151, [SMALL_STATE(2080)] = 47198, [SMALL_STATE(2081)] = 47247, [SMALL_STATE(2082)] = 47294, [SMALL_STATE(2083)] = 47341, [SMALL_STATE(2084)] = 47388, [SMALL_STATE(2085)] = 47435, [SMALL_STATE(2086)] = 47482, [SMALL_STATE(2087)] = 47529, [SMALL_STATE(2088)] = 47576, [SMALL_STATE(2089)] = 47623, [SMALL_STATE(2090)] = 47670, [SMALL_STATE(2091)] = 47717, [SMALL_STATE(2092)] = 47764, [SMALL_STATE(2093)] = 47813, [SMALL_STATE(2094)] = 47860, [SMALL_STATE(2095)] = 47907, [SMALL_STATE(2096)] = 47954, [SMALL_STATE(2097)] = 48001, [SMALL_STATE(2098)] = 48048, [SMALL_STATE(2099)] = 48099, [SMALL_STATE(2100)] = 48146, [SMALL_STATE(2101)] = 48193, [SMALL_STATE(2102)] = 48240, [SMALL_STATE(2103)] = 48293, [SMALL_STATE(2104)] = 48340, [SMALL_STATE(2105)] = 48387, [SMALL_STATE(2106)] = 48434, [SMALL_STATE(2107)] = 48481, [SMALL_STATE(2108)] = 48528, [SMALL_STATE(2109)] = 48575, [SMALL_STATE(2110)] = 48622, [SMALL_STATE(2111)] = 48669, [SMALL_STATE(2112)] = 48728, [SMALL_STATE(2113)] = 48789, [SMALL_STATE(2114)] = 48848, [SMALL_STATE(2115)] = 48895, [SMALL_STATE(2116)] = 48942, [SMALL_STATE(2117)] = 48989, [SMALL_STATE(2118)] = 49036, [SMALL_STATE(2119)] = 49083, [SMALL_STATE(2120)] = 49130, [SMALL_STATE(2121)] = 49177, [SMALL_STATE(2122)] = 49224, [SMALL_STATE(2123)] = 49271, [SMALL_STATE(2124)] = 49318, [SMALL_STATE(2125)] = 49365, [SMALL_STATE(2126)] = 49412, [SMALL_STATE(2127)] = 49471, [SMALL_STATE(2128)] = 49518, [SMALL_STATE(2129)] = 49565, [SMALL_STATE(2130)] = 49612, [SMALL_STATE(2131)] = 49659, [SMALL_STATE(2132)] = 49706, [SMALL_STATE(2133)] = 49753, [SMALL_STATE(2134)] = 49800, [SMALL_STATE(2135)] = 49847, [SMALL_STATE(2136)] = 49894, [SMALL_STATE(2137)] = 49941, [SMALL_STATE(2138)] = 49988, [SMALL_STATE(2139)] = 50035, [SMALL_STATE(2140)] = 50082, [SMALL_STATE(2141)] = 50129, [SMALL_STATE(2142)] = 50176, [SMALL_STATE(2143)] = 50223, [SMALL_STATE(2144)] = 50270, [SMALL_STATE(2145)] = 50317, [SMALL_STATE(2146)] = 50376, [SMALL_STATE(2147)] = 50423, [SMALL_STATE(2148)] = 50484, [SMALL_STATE(2149)] = 50533, [SMALL_STATE(2150)] = 50580, [SMALL_STATE(2151)] = 50627, [SMALL_STATE(2152)] = 50674, [SMALL_STATE(2153)] = 50721, [SMALL_STATE(2154)] = 50806, [SMALL_STATE(2155)] = 50867, [SMALL_STATE(2156)] = 50948, [SMALL_STATE(2157)] = 51029, [SMALL_STATE(2158)] = 51088, [SMALL_STATE(2159)] = 51151, [SMALL_STATE(2160)] = 51216, [SMALL_STATE(2161)] = 51285, [SMALL_STATE(2162)] = 51356, [SMALL_STATE(2163)] = 51429, [SMALL_STATE(2164)] = 51478, [SMALL_STATE(2165)] = 51527, [SMALL_STATE(2166)] = 51574, [SMALL_STATE(2167)] = 51621, [SMALL_STATE(2168)] = 51696, [SMALL_STATE(2169)] = 51743, [SMALL_STATE(2170)] = 51804, [SMALL_STATE(2171)] = 51851, [SMALL_STATE(2172)] = 51898, [SMALL_STATE(2173)] = 51947, [SMALL_STATE(2174)] = 52024, [SMALL_STATE(2175)] = 52103, [SMALL_STATE(2176)] = 52162, [SMALL_STATE(2177)] = 52211, [SMALL_STATE(2178)] = 52272, [SMALL_STATE(2179)] = 52355, [SMALL_STATE(2180)] = 52436, [SMALL_STATE(2181)] = 52483, [SMALL_STATE(2182)] = 52540, [SMALL_STATE(2183)] = 52621, [SMALL_STATE(2184)] = 52668, [SMALL_STATE(2185)] = 52715, [SMALL_STATE(2186)] = 52780, [SMALL_STATE(2187)] = 52827, [SMALL_STATE(2188)] = 52886, [SMALL_STATE(2189)] = 52933, [SMALL_STATE(2190)] = 52980, [SMALL_STATE(2191)] = 53027, [SMALL_STATE(2192)] = 53074, [SMALL_STATE(2193)] = 53121, [SMALL_STATE(2194)] = 53168, [SMALL_STATE(2195)] = 53215, [SMALL_STATE(2196)] = 53262, [SMALL_STATE(2197)] = 53309, [SMALL_STATE(2198)] = 53366, [SMALL_STATE(2199)] = 53413, [SMALL_STATE(2200)] = 53460, [SMALL_STATE(2201)] = 53507, [SMALL_STATE(2202)] = 53554, [SMALL_STATE(2203)] = 53601, [SMALL_STATE(2204)] = 53652, [SMALL_STATE(2205)] = 53699, [SMALL_STATE(2206)] = 53746, [SMALL_STATE(2207)] = 53793, [SMALL_STATE(2208)] = 53840, [SMALL_STATE(2209)] = 53887, [SMALL_STATE(2210)] = 53948, [SMALL_STATE(2211)] = 54003, [SMALL_STATE(2212)] = 54056, [SMALL_STATE(2213)] = 54103, [SMALL_STATE(2214)] = 54150, [SMALL_STATE(2215)] = 54197, [SMALL_STATE(2216)] = 54244, [SMALL_STATE(2217)] = 54291, [SMALL_STATE(2218)] = 54350, [SMALL_STATE(2219)] = 54409, [SMALL_STATE(2220)] = 54456, [SMALL_STATE(2221)] = 54503, [SMALL_STATE(2222)] = 54550, [SMALL_STATE(2223)] = 54597, [SMALL_STATE(2224)] = 54644, [SMALL_STATE(2225)] = 54691, [SMALL_STATE(2226)] = 54738, [SMALL_STATE(2227)] = 54785, [SMALL_STATE(2228)] = 54832, [SMALL_STATE(2229)] = 54879, [SMALL_STATE(2230)] = 54926, [SMALL_STATE(2231)] = 54973, [SMALL_STATE(2232)] = 55020, [SMALL_STATE(2233)] = 55067, [SMALL_STATE(2234)] = 55126, [SMALL_STATE(2235)] = 55173, [SMALL_STATE(2236)] = 55232, [SMALL_STATE(2237)] = 55283, [SMALL_STATE(2238)] = 55342, [SMALL_STATE(2239)] = 55393, [SMALL_STATE(2240)] = 55440, [SMALL_STATE(2241)] = 55487, [SMALL_STATE(2242)] = 55540, [SMALL_STATE(2243)] = 55587, [SMALL_STATE(2244)] = 55634, [SMALL_STATE(2245)] = 55681, [SMALL_STATE(2246)] = 55732, [SMALL_STATE(2247)] = 55779, [SMALL_STATE(2248)] = 55826, [SMALL_STATE(2249)] = 55873, [SMALL_STATE(2250)] = 55920, [SMALL_STATE(2251)] = 55967, [SMALL_STATE(2252)] = 56014, [SMALL_STATE(2253)] = 56061, [SMALL_STATE(2254)] = 56108, [SMALL_STATE(2255)] = 56155, [SMALL_STATE(2256)] = 56201, [SMALL_STATE(2257)] = 56247, [SMALL_STATE(2258)] = 56301, [SMALL_STATE(2259)] = 56347, [SMALL_STATE(2260)] = 56393, [SMALL_STATE(2261)] = 56439, [SMALL_STATE(2262)] = 56485, [SMALL_STATE(2263)] = 56531, [SMALL_STATE(2264)] = 56577, [SMALL_STATE(2265)] = 56623, [SMALL_STATE(2266)] = 56669, [SMALL_STATE(2267)] = 56715, [SMALL_STATE(2268)] = 56761, [SMALL_STATE(2269)] = 56807, [SMALL_STATE(2270)] = 56853, [SMALL_STATE(2271)] = 56899, [SMALL_STATE(2272)] = 56945, [SMALL_STATE(2273)] = 56991, [SMALL_STATE(2274)] = 57037, [SMALL_STATE(2275)] = 57083, [SMALL_STATE(2276)] = 57169, [SMALL_STATE(2277)] = 57215, [SMALL_STATE(2278)] = 57261, [SMALL_STATE(2279)] = 57307, [SMALL_STATE(2280)] = 57353, [SMALL_STATE(2281)] = 57399, [SMALL_STATE(2282)] = 57445, [SMALL_STATE(2283)] = 57491, [SMALL_STATE(2284)] = 57537, [SMALL_STATE(2285)] = 57583, [SMALL_STATE(2286)] = 57629, [SMALL_STATE(2287)] = 57675, [SMALL_STATE(2288)] = 57721, [SMALL_STATE(2289)] = 57767, [SMALL_STATE(2290)] = 57813, [SMALL_STATE(2291)] = 57859, [SMALL_STATE(2292)] = 57905, [SMALL_STATE(2293)] = 57951, [SMALL_STATE(2294)] = 57997, [SMALL_STATE(2295)] = 58043, [SMALL_STATE(2296)] = 58089, [SMALL_STATE(2297)] = 58135, [SMALL_STATE(2298)] = 58181, [SMALL_STATE(2299)] = 58227, [SMALL_STATE(2300)] = 58273, [SMALL_STATE(2301)] = 58319, [SMALL_STATE(2302)] = 58365, [SMALL_STATE(2303)] = 58419, [SMALL_STATE(2304)] = 58465, [SMALL_STATE(2305)] = 58511, [SMALL_STATE(2306)] = 58557, [SMALL_STATE(2307)] = 58603, [SMALL_STATE(2308)] = 58689, [SMALL_STATE(2309)] = 58735, [SMALL_STATE(2310)] = 58781, [SMALL_STATE(2311)] = 58827, [SMALL_STATE(2312)] = 58873, [SMALL_STATE(2313)] = 58919, [SMALL_STATE(2314)] = 58965, [SMALL_STATE(2315)] = 59011, [SMALL_STATE(2316)] = 59057, [SMALL_STATE(2317)] = 59103, [SMALL_STATE(2318)] = 59189, [SMALL_STATE(2319)] = 59239, [SMALL_STATE(2320)] = 59285, [SMALL_STATE(2321)] = 59331, [SMALL_STATE(2322)] = 59417, [SMALL_STATE(2323)] = 59463, [SMALL_STATE(2324)] = 59509, [SMALL_STATE(2325)] = 59555, [SMALL_STATE(2326)] = 59601, [SMALL_STATE(2327)] = 59647, [SMALL_STATE(2328)] = 59693, [SMALL_STATE(2329)] = 59739, [SMALL_STATE(2330)] = 59799, [SMALL_STATE(2331)] = 59845, [SMALL_STATE(2332)] = 59891, [SMALL_STATE(2333)] = 59936, [SMALL_STATE(2334)] = 59987, [SMALL_STATE(2335)] = 60070, [SMALL_STATE(2336)] = 60121, [SMALL_STATE(2337)] = 60174, [SMALL_STATE(2338)] = 60257, [SMALL_STATE(2339)] = 60340, [SMALL_STATE(2340)] = 60391, [SMALL_STATE(2341)] = 60474, [SMALL_STATE(2342)] = 60519, [SMALL_STATE(2343)] = 60602, [SMALL_STATE(2344)] = 60647, [SMALL_STATE(2345)] = 60730, [SMALL_STATE(2346)] = 60813, [SMALL_STATE(2347)] = 60874, [SMALL_STATE(2348)] = 60925, [SMALL_STATE(2349)] = 61008, [SMALL_STATE(2350)] = 61053, [SMALL_STATE(2351)] = 61133, [SMALL_STATE(2352)] = 61189, [SMALL_STATE(2353)] = 61245, [SMALL_STATE(2354)] = 61325, [SMALL_STATE(2355)] = 61379, [SMALL_STATE(2356)] = 61435, [SMALL_STATE(2357)] = 61515, [SMALL_STATE(2358)] = 61595, [SMALL_STATE(2359)] = 61675, [SMALL_STATE(2360)] = 61719, [SMALL_STATE(2361)] = 61799, [SMALL_STATE(2362)] = 61855, [SMALL_STATE(2363)] = 61935, [SMALL_STATE(2364)] = 61987, [SMALL_STATE(2365)] = 62067, [SMALL_STATE(2366)] = 62147, [SMALL_STATE(2367)] = 62227, [SMALL_STATE(2368)] = 62307, [SMALL_STATE(2369)] = 62357, [SMALL_STATE(2370)] = 62437, [SMALL_STATE(2371)] = 62489, [SMALL_STATE(2372)] = 62535, [SMALL_STATE(2373)] = 62615, [SMALL_STATE(2374)] = 62695, [SMALL_STATE(2375)] = 62739, [SMALL_STATE(2376)] = 62819, [SMALL_STATE(2377)] = 62899, [SMALL_STATE(2378)] = 62979, [SMALL_STATE(2379)] = 63023, [SMALL_STATE(2380)] = 63103, [SMALL_STATE(2381)] = 63183, [SMALL_STATE(2382)] = 63239, [SMALL_STATE(2383)] = 63295, [SMALL_STATE(2384)] = 63375, [SMALL_STATE(2385)] = 63431, [SMALL_STATE(2386)] = 63475, [SMALL_STATE(2387)] = 63519, [SMALL_STATE(2388)] = 63575, [SMALL_STATE(2389)] = 63631, [SMALL_STATE(2390)] = 63674, [SMALL_STATE(2391)] = 63717, [SMALL_STATE(2392)] = 63792, [SMALL_STATE(2393)] = 63867, [SMALL_STATE(2394)] = 63910, [SMALL_STATE(2395)] = 63957, [SMALL_STATE(2396)] = 64032, [SMALL_STATE(2397)] = 64087, [SMALL_STATE(2398)] = 64142, [SMALL_STATE(2399)] = 64197, [SMALL_STATE(2400)] = 64272, [SMALL_STATE(2401)] = 64351, [SMALL_STATE(2402)] = 64406, [SMALL_STATE(2403)] = 64465, [SMALL_STATE(2404)] = 64508, [SMALL_STATE(2405)] = 64551, [SMALL_STATE(2406)] = 64610, [SMALL_STATE(2407)] = 64669, [SMALL_STATE(2408)] = 64748, [SMALL_STATE(2409)] = 64823, [SMALL_STATE(2410)] = 64898, [SMALL_STATE(2411)] = 64953, [SMALL_STATE(2412)] = 65012, [SMALL_STATE(2413)] = 65055, [SMALL_STATE(2414)] = 65104, [SMALL_STATE(2415)] = 65183, [SMALL_STATE(2416)] = 65226, [SMALL_STATE(2417)] = 65275, [SMALL_STATE(2418)] = 65354, [SMALL_STATE(2419)] = 65413, [SMALL_STATE(2420)] = 65492, [SMALL_STATE(2421)] = 65535, [SMALL_STATE(2422)] = 65610, [SMALL_STATE(2423)] = 65653, [SMALL_STATE(2424)] = 65696, [SMALL_STATE(2425)] = 65739, [SMALL_STATE(2426)] = 65790, [SMALL_STATE(2427)] = 65833, [SMALL_STATE(2428)] = 65876, [SMALL_STATE(2429)] = 65931, [SMALL_STATE(2430)] = 65974, [SMALL_STATE(2431)] = 66017, [SMALL_STATE(2432)] = 66060, [SMALL_STATE(2433)] = 66103, [SMALL_STATE(2434)] = 66146, [SMALL_STATE(2435)] = 66189, [SMALL_STATE(2436)] = 66232, [SMALL_STATE(2437)] = 66311, [SMALL_STATE(2438)] = 66354, [SMALL_STATE(2439)] = 66397, [SMALL_STATE(2440)] = 66440, [SMALL_STATE(2441)] = 66483, [SMALL_STATE(2442)] = 66526, [SMALL_STATE(2443)] = 66569, [SMALL_STATE(2444)] = 66612, [SMALL_STATE(2445)] = 66655, [SMALL_STATE(2446)] = 66698, [SMALL_STATE(2447)] = 66741, [SMALL_STATE(2448)] = 66784, [SMALL_STATE(2449)] = 66827, [SMALL_STATE(2450)] = 66870, [SMALL_STATE(2451)] = 66913, [SMALL_STATE(2452)] = 66988, [SMALL_STATE(2453)] = 67043, [SMALL_STATE(2454)] = 67094, [SMALL_STATE(2455)] = 67153, [SMALL_STATE(2456)] = 67196, [SMALL_STATE(2457)] = 67271, [SMALL_STATE(2458)] = 67314, [SMALL_STATE(2459)] = 67357, [SMALL_STATE(2460)] = 67400, [SMALL_STATE(2461)] = 67479, [SMALL_STATE(2462)] = 67558, [SMALL_STATE(2463)] = 67601, [SMALL_STATE(2464)] = 67644, [SMALL_STATE(2465)] = 67687, [SMALL_STATE(2466)] = 67730, [SMALL_STATE(2467)] = 67773, [SMALL_STATE(2468)] = 67816, [SMALL_STATE(2469)] = 67859, [SMALL_STATE(2470)] = 67902, [SMALL_STATE(2471)] = 67945, [SMALL_STATE(2472)] = 67988, [SMALL_STATE(2473)] = 68063, [SMALL_STATE(2474)] = 68118, [SMALL_STATE(2475)] = 68173, [SMALL_STATE(2476)] = 68248, [SMALL_STATE(2477)] = 68327, [SMALL_STATE(2478)] = 68406, [SMALL_STATE(2479)] = 68449, [SMALL_STATE(2480)] = 68492, [SMALL_STATE(2481)] = 68535, [SMALL_STATE(2482)] = 68610, [SMALL_STATE(2483)] = 68653, [SMALL_STATE(2484)] = 68696, [SMALL_STATE(2485)] = 68739, [SMALL_STATE(2486)] = 68782, [SMALL_STATE(2487)] = 68825, [SMALL_STATE(2488)] = 68872, [SMALL_STATE(2489)] = 68915, [SMALL_STATE(2490)] = 68958, [SMALL_STATE(2491)] = 69001, [SMALL_STATE(2492)] = 69044, [SMALL_STATE(2493)] = 69087, [SMALL_STATE(2494)] = 69162, [SMALL_STATE(2495)] = 69205, [SMALL_STATE(2496)] = 69248, [SMALL_STATE(2497)] = 69291, [SMALL_STATE(2498)] = 69338, [SMALL_STATE(2499)] = 69381, [SMALL_STATE(2500)] = 69424, [SMALL_STATE(2501)] = 69483, [SMALL_STATE(2502)] = 69526, [SMALL_STATE(2503)] = 69601, [SMALL_STATE(2504)] = 69644, [SMALL_STATE(2505)] = 69719, [SMALL_STATE(2506)] = 69768, [SMALL_STATE(2507)] = 69820, [SMALL_STATE(2508)] = 69872, [SMALL_STATE(2509)] = 69928, [SMALL_STATE(2510)] = 69972, [SMALL_STATE(2511)] = 70028, [SMALL_STATE(2512)] = 70084, [SMALL_STATE(2513)] = 70140, [SMALL_STATE(2514)] = 70192, [SMALL_STATE(2515)] = 70248, [SMALL_STATE(2516)] = 70304, [SMALL_STATE(2517)] = 70348, [SMALL_STATE(2518)] = 70404, [SMALL_STATE(2519)] = 70450, [SMALL_STATE(2520)] = 70498, [SMALL_STATE(2521)] = 70554, [SMALL_STATE(2522)] = 70610, [SMALL_STATE(2523)] = 70666, [SMALL_STATE(2524)] = 70710, [SMALL_STATE(2525)] = 70766, [SMALL_STATE(2526)] = 70822, [SMALL_STATE(2527)] = 70878, [SMALL_STATE(2528)] = 70934, [SMALL_STATE(2529)] = 70982, [SMALL_STATE(2530)] = 71034, [SMALL_STATE(2531)] = 71078, [SMALL_STATE(2532)] = 71122, [SMALL_STATE(2533)] = 71163, [SMALL_STATE(2534)] = 71204, [SMALL_STATE(2535)] = 71245, [SMALL_STATE(2536)] = 71314, [SMALL_STATE(2537)] = 71355, [SMALL_STATE(2538)] = 71396, [SMALL_STATE(2539)] = 71437, [SMALL_STATE(2540)] = 71478, [SMALL_STATE(2541)] = 71547, [SMALL_STATE(2542)] = 71616, [SMALL_STATE(2543)] = 71657, [SMALL_STATE(2544)] = 71698, [SMALL_STATE(2545)] = 71739, [SMALL_STATE(2546)] = 71780, [SMALL_STATE(2547)] = 71831, [SMALL_STATE(2548)] = 71872, [SMALL_STATE(2549)] = 71913, [SMALL_STATE(2550)] = 71982, [SMALL_STATE(2551)] = 72023, [SMALL_STATE(2552)] = 72064, [SMALL_STATE(2553)] = 72105, [SMALL_STATE(2554)] = 72146, [SMALL_STATE(2555)] = 72187, [SMALL_STATE(2556)] = 72228, [SMALL_STATE(2557)] = 72269, [SMALL_STATE(2558)] = 72338, [SMALL_STATE(2559)] = 72379, [SMALL_STATE(2560)] = 72430, [SMALL_STATE(2561)] = 72477, [SMALL_STATE(2562)] = 72518, [SMALL_STATE(2563)] = 72559, [SMALL_STATE(2564)] = 72600, [SMALL_STATE(2565)] = 72641, [SMALL_STATE(2566)] = 72682, [SMALL_STATE(2567)] = 72723, [SMALL_STATE(2568)] = 72764, [SMALL_STATE(2569)] = 72805, [SMALL_STATE(2570)] = 72856, [SMALL_STATE(2571)] = 72897, [SMALL_STATE(2572)] = 72966, [SMALL_STATE(2573)] = 73035, [SMALL_STATE(2574)] = 73076, [SMALL_STATE(2575)] = 73117, [SMALL_STATE(2576)] = 73160, [SMALL_STATE(2577)] = 73229, [SMALL_STATE(2578)] = 73270, [SMALL_STATE(2579)] = 73311, [SMALL_STATE(2580)] = 73358, [SMALL_STATE(2581)] = 73399, [SMALL_STATE(2582)] = 73440, [SMALL_STATE(2583)] = 73481, [SMALL_STATE(2584)] = 73522, [SMALL_STATE(2585)] = 73563, [SMALL_STATE(2586)] = 73604, [SMALL_STATE(2587)] = 73645, [SMALL_STATE(2588)] = 73686, [SMALL_STATE(2589)] = 73727, [SMALL_STATE(2590)] = 73768, [SMALL_STATE(2591)] = 73809, [SMALL_STATE(2592)] = 73850, [SMALL_STATE(2593)] = 73891, [SMALL_STATE(2594)] = 73932, [SMALL_STATE(2595)] = 73973, [SMALL_STATE(2596)] = 74014, [SMALL_STATE(2597)] = 74055, [SMALL_STATE(2598)] = 74096, [SMALL_STATE(2599)] = 74137, [SMALL_STATE(2600)] = 74178, [SMALL_STATE(2601)] = 74219, [SMALL_STATE(2602)] = 74260, [SMALL_STATE(2603)] = 74311, [SMALL_STATE(2604)] = 74352, [SMALL_STATE(2605)] = 74393, [SMALL_STATE(2606)] = 74434, [SMALL_STATE(2607)] = 74481, [SMALL_STATE(2608)] = 74522, [SMALL_STATE(2609)] = 74563, [SMALL_STATE(2610)] = 74610, [SMALL_STATE(2611)] = 74651, [SMALL_STATE(2612)] = 74692, [SMALL_STATE(2613)] = 74733, [SMALL_STATE(2614)] = 74774, [SMALL_STATE(2615)] = 74824, [SMALL_STATE(2616)] = 74864, [SMALL_STATE(2617)] = 74904, [SMALL_STATE(2618)] = 74954, [SMALL_STATE(2619)] = 74994, [SMALL_STATE(2620)] = 75034, [SMALL_STATE(2621)] = 75084, [SMALL_STATE(2622)] = 75130, [SMALL_STATE(2623)] = 75170, [SMALL_STATE(2624)] = 75210, [SMALL_STATE(2625)] = 75260, [SMALL_STATE(2626)] = 75304, [SMALL_STATE(2627)] = 75344, [SMALL_STATE(2628)] = 75394, [SMALL_STATE(2629)] = 75440, [SMALL_STATE(2630)] = 75486, [SMALL_STATE(2631)] = 75526, [SMALL_STATE(2632)] = 75566, [SMALL_STATE(2633)] = 75612, [SMALL_STATE(2634)] = 75662, [SMALL_STATE(2635)] = 75702, [SMALL_STATE(2636)] = 75742, [SMALL_STATE(2637)] = 75788, [SMALL_STATE(2638)] = 75828, [SMALL_STATE(2639)] = 75868, [SMALL_STATE(2640)] = 75920, [SMALL_STATE(2641)] = 75960, [SMALL_STATE(2642)] = 76008, [SMALL_STATE(2643)] = 76086, [SMALL_STATE(2644)] = 76126, [SMALL_STATE(2645)] = 76166, [SMALL_STATE(2646)] = 76206, [SMALL_STATE(2647)] = 76248, [SMALL_STATE(2648)] = 76298, [SMALL_STATE(2649)] = 76338, [SMALL_STATE(2650)] = 76388, [SMALL_STATE(2651)] = 76428, [SMALL_STATE(2652)] = 76468, [SMALL_STATE(2653)] = 76508, [SMALL_STATE(2654)] = 76548, [SMALL_STATE(2655)] = 76588, [SMALL_STATE(2656)] = 76640, [SMALL_STATE(2657)] = 76690, [SMALL_STATE(2658)] = 76730, [SMALL_STATE(2659)] = 76774, [SMALL_STATE(2660)] = 76820, [SMALL_STATE(2661)] = 76872, [SMALL_STATE(2662)] = 76912, [SMALL_STATE(2663)] = 76955, [SMALL_STATE(2664)] = 77012, [SMALL_STATE(2665)] = 77085, [SMALL_STATE(2666)] = 77140, [SMALL_STATE(2667)] = 77187, [SMALL_STATE(2668)] = 77234, [SMALL_STATE(2669)] = 77311, [SMALL_STATE(2670)] = 77374, [SMALL_STATE(2671)] = 77419, [SMALL_STATE(2672)] = 77492, [SMALL_STATE(2673)] = 77537, [SMALL_STATE(2674)] = 77582, [SMALL_STATE(2675)] = 77647, [SMALL_STATE(2676)] = 77692, [SMALL_STATE(2677)] = 77763, [SMALL_STATE(2678)] = 77808, [SMALL_STATE(2679)] = 77883, [SMALL_STATE(2680)] = 77942, [SMALL_STATE(2681)] = 78009, [SMALL_STATE(2682)] = 78082, [SMALL_STATE(2683)] = 78141, [SMALL_STATE(2684)] = 78214, [SMALL_STATE(2685)] = 78275, [SMALL_STATE(2686)] = 78344, [SMALL_STATE(2687)] = 78405, [SMALL_STATE(2688)] = 78452, [SMALL_STATE(2689)] = 78535, [SMALL_STATE(2690)] = 78594, [SMALL_STATE(2691)] = 78653, [SMALL_STATE(2692)] = 78698, [SMALL_STATE(2693)] = 78745, [SMALL_STATE(2694)] = 78790, [SMALL_STATE(2695)] = 78859, [SMALL_STATE(2696)] = 78933, [SMALL_STATE(2697)] = 79015, [SMALL_STATE(2698)] = 79089, [SMALL_STATE(2699)] = 79163, [SMALL_STATE(2700)] = 79201, [SMALL_STATE(2701)] = 79283, [SMALL_STATE(2702)] = 79361, [SMALL_STATE(2703)] = 79401, [SMALL_STATE(2704)] = 79441, [SMALL_STATE(2705)] = 79515, [SMALL_STATE(2706)] = 79589, [SMALL_STATE(2707)] = 79669, [SMALL_STATE(2708)] = 79749, [SMALL_STATE(2709)] = 79829, [SMALL_STATE(2710)] = 79907, [SMALL_STATE(2711)] = 79987, [SMALL_STATE(2712)] = 80069, [SMALL_STATE(2713)] = 80143, [SMALL_STATE(2714)] = 80183, [SMALL_STATE(2715)] = 80265, [SMALL_STATE(2716)] = 80323, [SMALL_STATE(2717)] = 80403, [SMALL_STATE(2718)] = 80483, [SMALL_STATE(2719)] = 80563, [SMALL_STATE(2720)] = 80645, [SMALL_STATE(2721)] = 80727, [SMALL_STATE(2722)] = 80785, [SMALL_STATE(2723)] = 80859, [SMALL_STATE(2724)] = 80939, [SMALL_STATE(2725)] = 81013, [SMALL_STATE(2726)] = 81093, [SMALL_STATE(2727)] = 81167, [SMALL_STATE(2728)] = 81247, [SMALL_STATE(2729)] = 81321, [SMALL_STATE(2730)] = 81395, [SMALL_STATE(2731)] = 81475, [SMALL_STATE(2732)] = 81535, [SMALL_STATE(2733)] = 81609, [SMALL_STATE(2734)] = 81691, [SMALL_STATE(2735)] = 81751, [SMALL_STATE(2736)] = 81831, [SMALL_STATE(2737)] = 81913, [SMALL_STATE(2738)] = 81971, [SMALL_STATE(2739)] = 82045, [SMALL_STATE(2740)] = 82125, [SMALL_STATE(2741)] = 82173, [SMALL_STATE(2742)] = 82253, [SMALL_STATE(2743)] = 82295, [SMALL_STATE(2744)] = 82353, [SMALL_STATE(2745)] = 82395, [SMALL_STATE(2746)] = 82477, [SMALL_STATE(2747)] = 82557, [SMALL_STATE(2748)] = 82617, [SMALL_STATE(2749)] = 82665, [SMALL_STATE(2750)] = 82725, [SMALL_STATE(2751)] = 82807, [SMALL_STATE(2752)] = 82881, [SMALL_STATE(2753)] = 82923, [SMALL_STATE(2754)] = 83003, [SMALL_STATE(2755)] = 83083, [SMALL_STATE(2756)] = 83130, [SMALL_STATE(2757)] = 83205, [SMALL_STATE(2758)] = 83282, [SMALL_STATE(2759)] = 83359, [SMALL_STATE(2760)] = 83436, [SMALL_STATE(2761)] = 83503, [SMALL_STATE(2762)] = 83580, [SMALL_STATE(2763)] = 83657, [SMALL_STATE(2764)] = 83710, [SMALL_STATE(2765)] = 83787, [SMALL_STATE(2766)] = 83864, [SMALL_STATE(2767)] = 83939, [SMALL_STATE(2768)] = 84016, [SMALL_STATE(2769)] = 84071, [SMALL_STATE(2770)] = 84128, [SMALL_STATE(2771)] = 84205, [SMALL_STATE(2772)] = 84250, [SMALL_STATE(2773)] = 84327, [SMALL_STATE(2774)] = 84380, [SMALL_STATE(2775)] = 84457, [SMALL_STATE(2776)] = 84532, [SMALL_STATE(2777)] = 84585, [SMALL_STATE(2778)] = 84652, [SMALL_STATE(2779)] = 84701, [SMALL_STATE(2780)] = 84770, [SMALL_STATE(2781)] = 84847, [SMALL_STATE(2782)] = 84918, [SMALL_STATE(2783)] = 84987, [SMALL_STATE(2784)] = 85064, [SMALL_STATE(2785)] = 85141, [SMALL_STATE(2786)] = 85218, [SMALL_STATE(2787)] = 85295, [SMALL_STATE(2788)] = 85372, [SMALL_STATE(2789)] = 85441, [SMALL_STATE(2790)] = 85518, [SMALL_STATE(2791)] = 85555, [SMALL_STATE(2792)] = 85632, [SMALL_STATE(2793)] = 85709, [SMALL_STATE(2794)] = 85786, [SMALL_STATE(2795)] = 85863, [SMALL_STATE(2796)] = 85940, [SMALL_STATE(2797)] = 86015, [SMALL_STATE(2798)] = 86082, [SMALL_STATE(2799)] = 86159, [SMALL_STATE(2800)] = 86236, [SMALL_STATE(2801)] = 86313, [SMALL_STATE(2802)] = 86384, [SMALL_STATE(2803)] = 86457, [SMALL_STATE(2804)] = 86504, [SMALL_STATE(2805)] = 86541, [SMALL_STATE(2806)] = 86618, [SMALL_STATE(2807)] = 86695, [SMALL_STATE(2808)] = 86772, [SMALL_STATE(2809)] = 86849, [SMALL_STATE(2810)] = 86926, [SMALL_STATE(2811)] = 86989, [SMALL_STATE(2812)] = 87066, [SMALL_STATE(2813)] = 87143, [SMALL_STATE(2814)] = 87196, [SMALL_STATE(2815)] = 87233, [SMALL_STATE(2816)] = 87298, [SMALL_STATE(2817)] = 87375, [SMALL_STATE(2818)] = 87414, [SMALL_STATE(2819)] = 87491, [SMALL_STATE(2820)] = 87550, [SMALL_STATE(2821)] = 87627, [SMALL_STATE(2822)] = 87700, [SMALL_STATE(2823)] = 87759, [SMALL_STATE(2824)] = 87834, [SMALL_STATE(2825)] = 87909, [SMALL_STATE(2826)] = 87986, [SMALL_STATE(2827)] = 88063, [SMALL_STATE(2828)] = 88138, [SMALL_STATE(2829)] = 88193, [SMALL_STATE(2830)] = 88230, [SMALL_STATE(2831)] = 88307, [SMALL_STATE(2832)] = 88378, [SMALL_STATE(2833)] = 88455, [SMALL_STATE(2834)] = 88532, [SMALL_STATE(2835)] = 88603, [SMALL_STATE(2836)] = 88680, [SMALL_STATE(2837)] = 88757, [SMALL_STATE(2838)] = 88804, [SMALL_STATE(2839)] = 88879, [SMALL_STATE(2840)] = 88936, [SMALL_STATE(2841)] = 88985, [SMALL_STATE(2842)] = 89060, [SMALL_STATE(2843)] = 89133, [SMALL_STATE(2844)] = 89210, [SMALL_STATE(2845)] = 89287, [SMALL_STATE(2846)] = 89358, [SMALL_STATE(2847)] = 89435, [SMALL_STATE(2848)] = 89512, [SMALL_STATE(2849)] = 89573, [SMALL_STATE(2850)] = 89610, [SMALL_STATE(2851)] = 89687, [SMALL_STATE(2852)] = 89752, [SMALL_STATE(2853)] = 89829, [SMALL_STATE(2854)] = 89906, [SMALL_STATE(2855)] = 89983, [SMALL_STATE(2856)] = 90032, [SMALL_STATE(2857)] = 90107, [SMALL_STATE(2858)] = 90184, [SMALL_STATE(2859)] = 90261, [SMALL_STATE(2860)] = 90338, [SMALL_STATE(2861)] = 90415, [SMALL_STATE(2862)] = 90492, [SMALL_STATE(2863)] = 90541, [SMALL_STATE(2864)] = 90590, [SMALL_STATE(2865)] = 90667, [SMALL_STATE(2866)] = 90744, [SMALL_STATE(2867)] = 90821, [SMALL_STATE(2868)] = 90898, [SMALL_STATE(2869)] = 90975, [SMALL_STATE(2870)] = 91052, [SMALL_STATE(2871)] = 91125, [SMALL_STATE(2872)] = 91170, [SMALL_STATE(2873)] = 91247, [SMALL_STATE(2874)] = 91324, [SMALL_STATE(2875)] = 91397, [SMALL_STATE(2876)] = 91474, [SMALL_STATE(2877)] = 91521, [SMALL_STATE(2878)] = 91598, [SMALL_STATE(2879)] = 91675, [SMALL_STATE(2880)] = 91728, [SMALL_STATE(2881)] = 91805, [SMALL_STATE(2882)] = 91882, [SMALL_STATE(2883)] = 91945, [SMALL_STATE(2884)] = 92019, [SMALL_STATE(2885)] = 92059, [SMALL_STATE(2886)] = 92095, [SMALL_STATE(2887)] = 92163, [SMALL_STATE(2888)] = 92217, [SMALL_STATE(2889)] = 92285, [SMALL_STATE(2890)] = 92359, [SMALL_STATE(2891)] = 92433, [SMALL_STATE(2892)] = 92507, [SMALL_STATE(2893)] = 92575, [SMALL_STATE(2894)] = 92641, [SMALL_STATE(2895)] = 92709, [SMALL_STATE(2896)] = 92777, [SMALL_STATE(2897)] = 92845, [SMALL_STATE(2898)] = 92919, [SMALL_STATE(2899)] = 92993, [SMALL_STATE(2900)] = 93067, [SMALL_STATE(2901)] = 93141, [SMALL_STATE(2902)] = 93215, [SMALL_STATE(2903)] = 93289, [SMALL_STATE(2904)] = 93363, [SMALL_STATE(2905)] = 93431, [SMALL_STATE(2906)] = 93499, [SMALL_STATE(2907)] = 93573, [SMALL_STATE(2908)] = 93639, [SMALL_STATE(2909)] = 93713, [SMALL_STATE(2910)] = 93781, [SMALL_STATE(2911)] = 93847, [SMALL_STATE(2912)] = 93921, [SMALL_STATE(2913)] = 93995, [SMALL_STATE(2914)] = 94031, [SMALL_STATE(2915)] = 94099, [SMALL_STATE(2916)] = 94163, [SMALL_STATE(2917)] = 94237, [SMALL_STATE(2918)] = 94303, [SMALL_STATE(2919)] = 94377, [SMALL_STATE(2920)] = 94439, [SMALL_STATE(2921)] = 94499, [SMALL_STATE(2922)] = 94565, [SMALL_STATE(2923)] = 94639, [SMALL_STATE(2924)] = 94691, [SMALL_STATE(2925)] = 94765, [SMALL_STATE(2926)] = 94831, [SMALL_STATE(2927)] = 94897, [SMALL_STATE(2928)] = 94971, [SMALL_STATE(2929)] = 95007, [SMALL_STATE(2930)] = 95061, [SMALL_STATE(2931)] = 95129, [SMALL_STATE(2932)] = 95197, [SMALL_STATE(2933)] = 95271, [SMALL_STATE(2934)] = 95339, [SMALL_STATE(2935)] = 95395, [SMALL_STATE(2936)] = 95463, [SMALL_STATE(2937)] = 95537, [SMALL_STATE(2938)] = 95605, [SMALL_STATE(2939)] = 95661, [SMALL_STATE(2940)] = 95727, [SMALL_STATE(2941)] = 95801, [SMALL_STATE(2942)] = 95875, [SMALL_STATE(2943)] = 95941, [SMALL_STATE(2944)] = 96015, [SMALL_STATE(2945)] = 96083, [SMALL_STATE(2946)] = 96157, [SMALL_STATE(2947)] = 96193, [SMALL_STATE(2948)] = 96267, [SMALL_STATE(2949)] = 96341, [SMALL_STATE(2950)] = 96411, [SMALL_STATE(2951)] = 96447, [SMALL_STATE(2952)] = 96513, [SMALL_STATE(2953)] = 96581, [SMALL_STATE(2954)] = 96647, [SMALL_STATE(2955)] = 96721, [SMALL_STATE(2956)] = 96795, [SMALL_STATE(2957)] = 96847, [SMALL_STATE(2958)] = 96921, [SMALL_STATE(2959)] = 96989, [SMALL_STATE(2960)] = 97057, [SMALL_STATE(2961)] = 97131, [SMALL_STATE(2962)] = 97205, [SMALL_STATE(2963)] = 97251, [SMALL_STATE(2964)] = 97325, [SMALL_STATE(2965)] = 97399, [SMALL_STATE(2966)] = 97447, [SMALL_STATE(2967)] = 97483, [SMALL_STATE(2968)] = 97551, [SMALL_STATE(2969)] = 97619, [SMALL_STATE(2970)] = 97693, [SMALL_STATE(2971)] = 97767, [SMALL_STATE(2972)] = 97841, [SMALL_STATE(2973)] = 97915, [SMALL_STATE(2974)] = 97989, [SMALL_STATE(2975)] = 98063, [SMALL_STATE(2976)] = 98115, [SMALL_STATE(2977)] = 98181, [SMALL_STATE(2978)] = 98255, [SMALL_STATE(2979)] = 98329, [SMALL_STATE(2980)] = 98397, [SMALL_STATE(2981)] = 98471, [SMALL_STATE(2982)] = 98539, [SMALL_STATE(2983)] = 98613, [SMALL_STATE(2984)] = 98667, [SMALL_STATE(2985)] = 98703, [SMALL_STATE(2986)] = 98777, [SMALL_STATE(2987)] = 98847, [SMALL_STATE(2988)] = 98921, [SMALL_STATE(2989)] = 98989, [SMALL_STATE(2990)] = 99063, [SMALL_STATE(2991)] = 99129, [SMALL_STATE(2992)] = 99181, [SMALL_STATE(2993)] = 99249, [SMALL_STATE(2994)] = 99323, [SMALL_STATE(2995)] = 99397, [SMALL_STATE(2996)] = 99471, [SMALL_STATE(2997)] = 99537, [SMALL_STATE(2998)] = 99605, [SMALL_STATE(2999)] = 99651, [SMALL_STATE(3000)] = 99723, [SMALL_STATE(3001)] = 99777, [SMALL_STATE(3002)] = 99851, [SMALL_STATE(3003)] = 99887, [SMALL_STATE(3004)] = 99941, [SMALL_STATE(3005)] = 99997, [SMALL_STATE(3006)] = 100071, [SMALL_STATE(3007)] = 100145, [SMALL_STATE(3008)] = 100219, [SMALL_STATE(3009)] = 100287, [SMALL_STATE(3010)] = 100323, [SMALL_STATE(3011)] = 100359, [SMALL_STATE(3012)] = 100433, [SMALL_STATE(3013)] = 100507, [SMALL_STATE(3014)] = 100543, [SMALL_STATE(3015)] = 100617, [SMALL_STATE(3016)] = 100691, [SMALL_STATE(3017)] = 100727, [SMALL_STATE(3018)] = 100779, [SMALL_STATE(3019)] = 100849, [SMALL_STATE(3020)] = 100923, [SMALL_STATE(3021)] = 100997, [SMALL_STATE(3022)] = 101049, [SMALL_STATE(3023)] = 101123, [SMALL_STATE(3024)] = 101197, [SMALL_STATE(3025)] = 101265, [SMALL_STATE(3026)] = 101339, [SMALL_STATE(3027)] = 101397, [SMALL_STATE(3028)] = 101463, [SMALL_STATE(3029)] = 101499, [SMALL_STATE(3030)] = 101573, [SMALL_STATE(3031)] = 101639, [SMALL_STATE(3032)] = 101713, [SMALL_STATE(3033)] = 101787, [SMALL_STATE(3034)] = 101855, [SMALL_STATE(3035)] = 101907, [SMALL_STATE(3036)] = 101981, [SMALL_STATE(3037)] = 102055, [SMALL_STATE(3038)] = 102123, [SMALL_STATE(3039)] = 102189, [SMALL_STATE(3040)] = 102225, [SMALL_STATE(3041)] = 102293, [SMALL_STATE(3042)] = 102367, [SMALL_STATE(3043)] = 102435, [SMALL_STATE(3044)] = 102509, [SMALL_STATE(3045)] = 102575, [SMALL_STATE(3046)] = 102643, [SMALL_STATE(3047)] = 102679, [SMALL_STATE(3048)] = 102753, [SMALL_STATE(3049)] = 102827, [SMALL_STATE(3050)] = 102863, [SMALL_STATE(3051)] = 102915, [SMALL_STATE(3052)] = 102983, [SMALL_STATE(3053)] = 103019, [SMALL_STATE(3054)] = 103071, [SMALL_STATE(3055)] = 103129, [SMALL_STATE(3056)] = 103203, [SMALL_STATE(3057)] = 103271, [SMALL_STATE(3058)] = 103345, [SMALL_STATE(3059)] = 103419, [SMALL_STATE(3060)] = 103493, [SMALL_STATE(3061)] = 103567, [SMALL_STATE(3062)] = 103641, [SMALL_STATE(3063)] = 103709, [SMALL_STATE(3064)] = 103775, [SMALL_STATE(3065)] = 103841, [SMALL_STATE(3066)] = 103877, [SMALL_STATE(3067)] = 103945, [SMALL_STATE(3068)] = 104019, [SMALL_STATE(3069)] = 104071, [SMALL_STATE(3070)] = 104145, [SMALL_STATE(3071)] = 104213, [SMALL_STATE(3072)] = 104287, [SMALL_STATE(3073)] = 104323, [SMALL_STATE(3074)] = 104397, [SMALL_STATE(3075)] = 104471, [SMALL_STATE(3076)] = 104523, [SMALL_STATE(3077)] = 104559, [SMALL_STATE(3078)] = 104633, [SMALL_STATE(3079)] = 104701, [SMALL_STATE(3080)] = 104737, [SMALL_STATE(3081)] = 104811, [SMALL_STATE(3082)] = 104847, [SMALL_STATE(3083)] = 104883, [SMALL_STATE(3084)] = 104949, [SMALL_STATE(3085)] = 105005, [SMALL_STATE(3086)] = 105073, [SMALL_STATE(3087)] = 105141, [SMALL_STATE(3088)] = 105215, [SMALL_STATE(3089)] = 105251, [SMALL_STATE(3090)] = 105325, [SMALL_STATE(3091)] = 105361, [SMALL_STATE(3092)] = 105435, [SMALL_STATE(3093)] = 105509, [SMALL_STATE(3094)] = 105575, [SMALL_STATE(3095)] = 105649, [SMALL_STATE(3096)] = 105723, [SMALL_STATE(3097)] = 105797, [SMALL_STATE(3098)] = 105871, [SMALL_STATE(3099)] = 105945, [SMALL_STATE(3100)] = 106019, [SMALL_STATE(3101)] = 106093, [SMALL_STATE(3102)] = 106167, [SMALL_STATE(3103)] = 106215, [SMALL_STATE(3104)] = 106289, [SMALL_STATE(3105)] = 106325, [SMALL_STATE(3106)] = 106399, [SMALL_STATE(3107)] = 106435, [SMALL_STATE(3108)] = 106509, [SMALL_STATE(3109)] = 106583, [SMALL_STATE(3110)] = 106637, [SMALL_STATE(3111)] = 106711, [SMALL_STATE(3112)] = 106779, [SMALL_STATE(3113)] = 106815, [SMALL_STATE(3114)] = 106889, [SMALL_STATE(3115)] = 106963, [SMALL_STATE(3116)] = 107031, [SMALL_STATE(3117)] = 107105, [SMALL_STATE(3118)] = 107179, [SMALL_STATE(3119)] = 107247, [SMALL_STATE(3120)] = 107317, [SMALL_STATE(3121)] = 107391, [SMALL_STATE(3122)] = 107459, [SMALL_STATE(3123)] = 107533, [SMALL_STATE(3124)] = 107581, [SMALL_STATE(3125)] = 107655, [SMALL_STATE(3126)] = 107707, [SMALL_STATE(3127)] = 107764, [SMALL_STATE(3128)] = 107817, [SMALL_STATE(3129)] = 107880, [SMALL_STATE(3130)] = 107943, [SMALL_STATE(3131)] = 108006, [SMALL_STATE(3132)] = 108069, [SMALL_STATE(3133)] = 108122, [SMALL_STATE(3134)] = 108157, [SMALL_STATE(3135)] = 108212, [SMALL_STATE(3136)] = 108265, [SMALL_STATE(3137)] = 108328, [SMALL_STATE(3138)] = 108381, [SMALL_STATE(3139)] = 108444, [SMALL_STATE(3140)] = 108507, [SMALL_STATE(3141)] = 108560, [SMALL_STATE(3142)] = 108623, [SMALL_STATE(3143)] = 108686, [SMALL_STATE(3144)] = 108749, [SMALL_STATE(3145)] = 108804, [SMALL_STATE(3146)] = 108857, [SMALL_STATE(3147)] = 108920, [SMALL_STATE(3148)] = 108959, [SMALL_STATE(3149)] = 109022, [SMALL_STATE(3150)] = 109075, [SMALL_STATE(3151)] = 109128, [SMALL_STATE(3152)] = 109181, [SMALL_STATE(3153)] = 109244, [SMALL_STATE(3154)] = 109293, [SMALL_STATE(3155)] = 109350, [SMALL_STATE(3156)] = 109387, [SMALL_STATE(3157)] = 109444, [SMALL_STATE(3158)] = 109497, [SMALL_STATE(3159)] = 109560, [SMALL_STATE(3160)] = 109623, [SMALL_STATE(3161)] = 109660, [SMALL_STATE(3162)] = 109717, [SMALL_STATE(3163)] = 109752, [SMALL_STATE(3164)] = 109791, [SMALL_STATE(3165)] = 109854, [SMALL_STATE(3166)] = 109917, [SMALL_STATE(3167)] = 109974, [SMALL_STATE(3168)] = 110031, [SMALL_STATE(3169)] = 110081, [SMALL_STATE(3170)] = 110133, [SMALL_STATE(3171)] = 110167, [SMALL_STATE(3172)] = 110219, [SMALL_STATE(3173)] = 110253, [SMALL_STATE(3174)] = 110287, [SMALL_STATE(3175)] = 110339, [SMALL_STATE(3176)] = 110391, [SMALL_STATE(3177)] = 110443, [SMALL_STATE(3178)] = 110491, [SMALL_STATE(3179)] = 110543, [SMALL_STATE(3180)] = 110593, [SMALL_STATE(3181)] = 110645, [SMALL_STATE(3182)] = 110695, [SMALL_STATE(3183)] = 110731, [SMALL_STATE(3184)] = 110783, [SMALL_STATE(3185)] = 110820, [SMALL_STATE(3186)] = 110873, [SMALL_STATE(3187)] = 110926, [SMALL_STATE(3188)] = 110965, [SMALL_STATE(3189)] = 111018, [SMALL_STATE(3190)] = 111071, [SMALL_STATE(3191)] = 111112, [SMALL_STATE(3192)] = 111153, [SMALL_STATE(3193)] = 111206, [SMALL_STATE(3194)] = 111255, [SMALL_STATE(3195)] = 111296, [SMALL_STATE(3196)] = 111349, [SMALL_STATE(3197)] = 111398, [SMALL_STATE(3198)] = 111449, [SMALL_STATE(3199)] = 111494, [SMALL_STATE(3200)] = 111545, [SMALL_STATE(3201)] = 111594, [SMALL_STATE(3202)] = 111645, [SMALL_STATE(3203)] = 111695, [SMALL_STATE(3204)] = 111745, [SMALL_STATE(3205)] = 111783, [SMALL_STATE(3206)] = 111815, [SMALL_STATE(3207)] = 111865, [SMALL_STATE(3208)] = 111903, [SMALL_STATE(3209)] = 111953, [SMALL_STATE(3210)] = 111985, [SMALL_STATE(3211)] = 112035, [SMALL_STATE(3212)] = 112073, [SMALL_STATE(3213)] = 112123, [SMALL_STATE(3214)] = 112173, [SMALL_STATE(3215)] = 112223, [SMALL_STATE(3216)] = 112273, [SMALL_STATE(3217)] = 112305, [SMALL_STATE(3218)] = 112341, [SMALL_STATE(3219)] = 112372, [SMALL_STATE(3220)] = 112423, [SMALL_STATE(3221)] = 112474, [SMALL_STATE(3222)] = 112507, [SMALL_STATE(3223)] = 112558, [SMALL_STATE(3224)] = 112589, [SMALL_STATE(3225)] = 112620, [SMALL_STATE(3226)] = 112669, [SMALL_STATE(3227)] = 112720, [SMALL_STATE(3228)] = 112779, [SMALL_STATE(3229)] = 112830, [SMALL_STATE(3230)] = 112861, [SMALL_STATE(3231)] = 112892, [SMALL_STATE(3232)] = 112941, [SMALL_STATE(3233)] = 112990, [SMALL_STATE(3234)] = 113041, [SMALL_STATE(3235)] = 113072, [SMALL_STATE(3236)] = 113103, [SMALL_STATE(3237)] = 113134, [SMALL_STATE(3238)] = 113165, [SMALL_STATE(3239)] = 113196, [SMALL_STATE(3240)] = 113227, [SMALL_STATE(3241)] = 113258, [SMALL_STATE(3242)] = 113289, [SMALL_STATE(3243)] = 113320, [SMALL_STATE(3244)] = 113351, [SMALL_STATE(3245)] = 113382, [SMALL_STATE(3246)] = 113413, [SMALL_STATE(3247)] = 113462, [SMALL_STATE(3248)] = 113493, [SMALL_STATE(3249)] = 113524, [SMALL_STATE(3250)] = 113575, [SMALL_STATE(3251)] = 113606, [SMALL_STATE(3252)] = 113673, [SMALL_STATE(3253)] = 113732, [SMALL_STATE(3254)] = 113767, [SMALL_STATE(3255)] = 113818, [SMALL_STATE(3256)] = 113869, [SMALL_STATE(3257)] = 113920, [SMALL_STATE(3258)] = 113979, [SMALL_STATE(3259)] = 114030, [SMALL_STATE(3260)] = 114061, [SMALL_STATE(3261)] = 114112, [SMALL_STATE(3262)] = 114163, [SMALL_STATE(3263)] = 114214, [SMALL_STATE(3264)] = 114248, [SMALL_STATE(3265)] = 114294, [SMALL_STATE(3266)] = 114328, [SMALL_STATE(3267)] = 114360, [SMALL_STATE(3268)] = 114406, [SMALL_STATE(3269)] = 114452, [SMALL_STATE(3270)] = 114488, [SMALL_STATE(3271)] = 114534, [SMALL_STATE(3272)] = 114580, [SMALL_STATE(3273)] = 114626, [SMALL_STATE(3274)] = 114672, [SMALL_STATE(3275)] = 114708, [SMALL_STATE(3276)] = 114754, [SMALL_STATE(3277)] = 114784, [SMALL_STATE(3278)] = 114814, [SMALL_STATE(3279)] = 114850, [SMALL_STATE(3280)] = 114882, [SMALL_STATE(3281)] = 114928, [SMALL_STATE(3282)] = 114974, [SMALL_STATE(3283)] = 115020, [SMALL_STATE(3284)] = 115052, [SMALL_STATE(3285)] = 115098, [SMALL_STATE(3286)] = 115134, [SMALL_STATE(3287)] = 115170, [SMALL_STATE(3288)] = 115205, [SMALL_STATE(3289)] = 115240, [SMALL_STATE(3290)] = 115283, [SMALL_STATE(3291)] = 115318, [SMALL_STATE(3292)] = 115353, [SMALL_STATE(3293)] = 115388, [SMALL_STATE(3294)] = 115423, [SMALL_STATE(3295)] = 115458, [SMALL_STATE(3296)] = 115493, [SMALL_STATE(3297)] = 115528, [SMALL_STATE(3298)] = 115563, [SMALL_STATE(3299)] = 115598, [SMALL_STATE(3300)] = 115633, [SMALL_STATE(3301)] = 115676, [SMALL_STATE(3302)] = 115711, [SMALL_STATE(3303)] = 115746, [SMALL_STATE(3304)] = 115801, [SMALL_STATE(3305)] = 115834, [SMALL_STATE(3306)] = 115869, [SMALL_STATE(3307)] = 115918, [SMALL_STATE(3308)] = 115953, [SMALL_STATE(3309)] = 115988, [SMALL_STATE(3310)] = 116043, [SMALL_STATE(3311)] = 116092, [SMALL_STATE(3312)] = 116132, [SMALL_STATE(3313)] = 116172, [SMALL_STATE(3314)] = 116200, [SMALL_STATE(3315)] = 116232, [SMALL_STATE(3316)] = 116272, [SMALL_STATE(3317)] = 116306, [SMALL_STATE(3318)] = 116342, [SMALL_STATE(3319)] = 116382, [SMALL_STATE(3320)] = 116424, [SMALL_STATE(3321)] = 116464, [SMALL_STATE(3322)] = 116492, [SMALL_STATE(3323)] = 116536, [SMALL_STATE(3324)] = 116576, [SMALL_STATE(3325)] = 116622, [SMALL_STATE(3326)] = 116668, [SMALL_STATE(3327)] = 116708, [SMALL_STATE(3328)] = 116756, [SMALL_STATE(3329)] = 116784, [SMALL_STATE(3330)] = 116812, [SMALL_STATE(3331)] = 116856, [SMALL_STATE(3332)] = 116884, [SMALL_STATE(3333)] = 116912, [SMALL_STATE(3334)] = 116940, [SMALL_STATE(3335)] = 116968, [SMALL_STATE(3336)] = 116998, [SMALL_STATE(3337)] = 117026, [SMALL_STATE(3338)] = 117054, [SMALL_STATE(3339)] = 117082, [SMALL_STATE(3340)] = 117110, [SMALL_STATE(3341)] = 117138, [SMALL_STATE(3342)] = 117166, [SMALL_STATE(3343)] = 117210, [SMALL_STATE(3344)] = 117250, [SMALL_STATE(3345)] = 117278, [SMALL_STATE(3346)] = 117318, [SMALL_STATE(3347)] = 117358, [SMALL_STATE(3348)] = 117398, [SMALL_STATE(3349)] = 117438, [SMALL_STATE(3350)] = 117478, [SMALL_STATE(3351)] = 117518, [SMALL_STATE(3352)] = 117558, [SMALL_STATE(3353)] = 117598, [SMALL_STATE(3354)] = 117638, [SMALL_STATE(3355)] = 117678, [SMALL_STATE(3356)] = 117718, [SMALL_STATE(3357)] = 117746, [SMALL_STATE(3358)] = 117774, [SMALL_STATE(3359)] = 117802, [SMALL_STATE(3360)] = 117842, [SMALL_STATE(3361)] = 117882, [SMALL_STATE(3362)] = 117922, [SMALL_STATE(3363)] = 117962, [SMALL_STATE(3364)] = 118002, [SMALL_STATE(3365)] = 118042, [SMALL_STATE(3366)] = 118082, [SMALL_STATE(3367)] = 118122, [SMALL_STATE(3368)] = 118162, [SMALL_STATE(3369)] = 118196, [SMALL_STATE(3370)] = 118236, [SMALL_STATE(3371)] = 118276, [SMALL_STATE(3372)] = 118320, [SMALL_STATE(3373)] = 118348, [SMALL_STATE(3374)] = 118392, [SMALL_STATE(3375)] = 118432, [SMALL_STATE(3376)] = 118472, [SMALL_STATE(3377)] = 118512, [SMALL_STATE(3378)] = 118562, [SMALL_STATE(3379)] = 118602, [SMALL_STATE(3380)] = 118642, [SMALL_STATE(3381)] = 118687, [SMALL_STATE(3382)] = 118732, [SMALL_STATE(3383)] = 118789, [SMALL_STATE(3384)] = 118846, [SMALL_STATE(3385)] = 118903, [SMALL_STATE(3386)] = 118960, [SMALL_STATE(3387)] = 119017, [SMALL_STATE(3388)] = 119074, [SMALL_STATE(3389)] = 119131, [SMALL_STATE(3390)] = 119188, [SMALL_STATE(3391)] = 119245, [SMALL_STATE(3392)] = 119302, [SMALL_STATE(3393)] = 119359, [SMALL_STATE(3394)] = 119416, [SMALL_STATE(3395)] = 119473, [SMALL_STATE(3396)] = 119514, [SMALL_STATE(3397)] = 119541, [SMALL_STATE(3398)] = 119568, [SMALL_STATE(3399)] = 119625, [SMALL_STATE(3400)] = 119682, [SMALL_STATE(3401)] = 119727, [SMALL_STATE(3402)] = 119784, [SMALL_STATE(3403)] = 119841, [SMALL_STATE(3404)] = 119898, [SMALL_STATE(3405)] = 119955, [SMALL_STATE(3406)] = 120012, [SMALL_STATE(3407)] = 120069, [SMALL_STATE(3408)] = 120126, [SMALL_STATE(3409)] = 120171, [SMALL_STATE(3410)] = 120228, [SMALL_STATE(3411)] = 120285, [SMALL_STATE(3412)] = 120342, [SMALL_STATE(3413)] = 120387, [SMALL_STATE(3414)] = 120432, [SMALL_STATE(3415)] = 120489, [SMALL_STATE(3416)] = 120546, [SMALL_STATE(3417)] = 120603, [SMALL_STATE(3418)] = 120660, [SMALL_STATE(3419)] = 120717, [SMALL_STATE(3420)] = 120774, [SMALL_STATE(3421)] = 120815, [SMALL_STATE(3422)] = 120872, [SMALL_STATE(3423)] = 120929, [SMALL_STATE(3424)] = 120986, [SMALL_STATE(3425)] = 121043, [SMALL_STATE(3426)] = 121100, [SMALL_STATE(3427)] = 121141, [SMALL_STATE(3428)] = 121168, [SMALL_STATE(3429)] = 121195, [SMALL_STATE(3430)] = 121226, [SMALL_STATE(3431)] = 121259, [SMALL_STATE(3432)] = 121286, [SMALL_STATE(3433)] = 121343, [SMALL_STATE(3434)] = 121400, [SMALL_STATE(3435)] = 121449, [SMALL_STATE(3436)] = 121476, [SMALL_STATE(3437)] = 121503, [SMALL_STATE(3438)] = 121560, [SMALL_STATE(3439)] = 121595, [SMALL_STATE(3440)] = 121632, [SMALL_STATE(3441)] = 121677, [SMALL_STATE(3442)] = 121722, [SMALL_STATE(3443)] = 121779, [SMALL_STATE(3444)] = 121812, [SMALL_STATE(3445)] = 121851, [SMALL_STATE(3446)] = 121884, [SMALL_STATE(3447)] = 121917, [SMALL_STATE(3448)] = 121950, [SMALL_STATE(3449)] = 122007, [SMALL_STATE(3450)] = 122064, [SMALL_STATE(3451)] = 122121, [SMALL_STATE(3452)] = 122178, [SMALL_STATE(3453)] = 122235, [SMALL_STATE(3454)] = 122280, [SMALL_STATE(3455)] = 122329, [SMALL_STATE(3456)] = 122386, [SMALL_STATE(3457)] = 122427, [SMALL_STATE(3458)] = 122484, [SMALL_STATE(3459)] = 122527, [SMALL_STATE(3460)] = 122572, [SMALL_STATE(3461)] = 122605, [SMALL_STATE(3462)] = 122632, [SMALL_STATE(3463)] = 122689, [SMALL_STATE(3464)] = 122718, [SMALL_STATE(3465)] = 122745, [SMALL_STATE(3466)] = 122772, [SMALL_STATE(3467)] = 122806, [SMALL_STATE(3468)] = 122840, [SMALL_STATE(3469)] = 122874, [SMALL_STATE(3470)] = 122908, [SMALL_STATE(3471)] = 122940, [SMALL_STATE(3472)] = 122972, [SMALL_STATE(3473)] = 123004, [SMALL_STATE(3474)] = 123036, [SMALL_STATE(3475)] = 123068, [SMALL_STATE(3476)] = 123100, [SMALL_STATE(3477)] = 123151, [SMALL_STATE(3478)] = 123204, [SMALL_STATE(3479)] = 123257, [SMALL_STATE(3480)] = 123308, [SMALL_STATE(3481)] = 123359, [SMALL_STATE(3482)] = 123410, [SMALL_STATE(3483)] = 123461, [SMALL_STATE(3484)] = 123512, [SMALL_STATE(3485)] = 123563, [SMALL_STATE(3486)] = 123614, [SMALL_STATE(3487)] = 123655, [SMALL_STATE(3488)] = 123706, [SMALL_STATE(3489)] = 123757, [SMALL_STATE(3490)] = 123798, [SMALL_STATE(3491)] = 123849, [SMALL_STATE(3492)] = 123900, [SMALL_STATE(3493)] = 123931, [SMALL_STATE(3494)] = 123982, [SMALL_STATE(3495)] = 124035, [SMALL_STATE(3496)] = 124086, [SMALL_STATE(3497)] = 124137, [SMALL_STATE(3498)] = 124166, [SMALL_STATE(3499)] = 124217, [SMALL_STATE(3500)] = 124268, [SMALL_STATE(3501)] = 124319, [SMALL_STATE(3502)] = 124370, [SMALL_STATE(3503)] = 124421, [SMALL_STATE(3504)] = 124472, [SMALL_STATE(3505)] = 124523, [SMALL_STATE(3506)] = 124564, [SMALL_STATE(3507)] = 124605, [SMALL_STATE(3508)] = 124656, [SMALL_STATE(3509)] = 124707, [SMALL_STATE(3510)] = 124758, [SMALL_STATE(3511)] = 124809, [SMALL_STATE(3512)] = 124860, [SMALL_STATE(3513)] = 124911, [SMALL_STATE(3514)] = 124962, [SMALL_STATE(3515)] = 125013, [SMALL_STATE(3516)] = 125064, [SMALL_STATE(3517)] = 125115, [SMALL_STATE(3518)] = 125166, [SMALL_STATE(3519)] = 125217, [SMALL_STATE(3520)] = 125268, [SMALL_STATE(3521)] = 125319, [SMALL_STATE(3522)] = 125370, [SMALL_STATE(3523)] = 125421, [SMALL_STATE(3524)] = 125472, [SMALL_STATE(3525)] = 125524, [SMALL_STATE(3526)] = 125576, [SMALL_STATE(3527)] = 125604, [SMALL_STATE(3528)] = 125630, [SMALL_STATE(3529)] = 125658, [SMALL_STATE(3530)] = 125710, [SMALL_STATE(3531)] = 125738, [SMALL_STATE(3532)] = 125766, [SMALL_STATE(3533)] = 125811, [SMALL_STATE(3534)] = 125848, [SMALL_STATE(3535)] = 125893, [SMALL_STATE(3536)] = 125938, [SMALL_STATE(3537)] = 125975, [SMALL_STATE(3538)] = 126020, [SMALL_STATE(3539)] = 126065, [SMALL_STATE(3540)] = 126110, [SMALL_STATE(3541)] = 126155, [SMALL_STATE(3542)] = 126200, [SMALL_STATE(3543)] = 126245, [SMALL_STATE(3544)] = 126290, [SMALL_STATE(3545)] = 126335, [SMALL_STATE(3546)] = 126380, [SMALL_STATE(3547)] = 126425, [SMALL_STATE(3548)] = 126462, [SMALL_STATE(3549)] = 126499, [SMALL_STATE(3550)] = 126544, [SMALL_STATE(3551)] = 126589, [SMALL_STATE(3552)] = 126634, [SMALL_STATE(3553)] = 126679, [SMALL_STATE(3554)] = 126724, [SMALL_STATE(3555)] = 126769, [SMALL_STATE(3556)] = 126814, [SMALL_STATE(3557)] = 126859, [SMALL_STATE(3558)] = 126904, [SMALL_STATE(3559)] = 126949, [SMALL_STATE(3560)] = 126994, [SMALL_STATE(3561)] = 127039, [SMALL_STATE(3562)] = 127084, [SMALL_STATE(3563)] = 127129, [SMALL_STATE(3564)] = 127174, [SMALL_STATE(3565)] = 127219, [SMALL_STATE(3566)] = 127264, [SMALL_STATE(3567)] = 127309, [SMALL_STATE(3568)] = 127354, [SMALL_STATE(3569)] = 127399, [SMALL_STATE(3570)] = 127444, [SMALL_STATE(3571)] = 127481, [SMALL_STATE(3572)] = 127518, [SMALL_STATE(3573)] = 127565, [SMALL_STATE(3574)] = 127610, [SMALL_STATE(3575)] = 127647, [SMALL_STATE(3576)] = 127674, [SMALL_STATE(3577)] = 127719, [SMALL_STATE(3578)] = 127764, [SMALL_STATE(3579)] = 127795, [SMALL_STATE(3580)] = 127832, [SMALL_STATE(3581)] = 127877, [SMALL_STATE(3582)] = 127922, [SMALL_STATE(3583)] = 127967, [SMALL_STATE(3584)] = 128012, [SMALL_STATE(3585)] = 128057, [SMALL_STATE(3586)] = 128102, [SMALL_STATE(3587)] = 128147, [SMALL_STATE(3588)] = 128192, [SMALL_STATE(3589)] = 128237, [SMALL_STATE(3590)] = 128282, [SMALL_STATE(3591)] = 128327, [SMALL_STATE(3592)] = 128372, [SMALL_STATE(3593)] = 128417, [SMALL_STATE(3594)] = 128462, [SMALL_STATE(3595)] = 128507, [SMALL_STATE(3596)] = 128552, [SMALL_STATE(3597)] = 128597, [SMALL_STATE(3598)] = 128642, [SMALL_STATE(3599)] = 128687, [SMALL_STATE(3600)] = 128732, [SMALL_STATE(3601)] = 128777, [SMALL_STATE(3602)] = 128814, [SMALL_STATE(3603)] = 128859, [SMALL_STATE(3604)] = 128904, [SMALL_STATE(3605)] = 128949, [SMALL_STATE(3606)] = 128994, [SMALL_STATE(3607)] = 129039, [SMALL_STATE(3608)] = 129084, [SMALL_STATE(3609)] = 129129, [SMALL_STATE(3610)] = 129156, [SMALL_STATE(3611)] = 129201, [SMALL_STATE(3612)] = 129246, [SMALL_STATE(3613)] = 129291, [SMALL_STATE(3614)] = 129336, [SMALL_STATE(3615)] = 129381, [SMALL_STATE(3616)] = 129426, [SMALL_STATE(3617)] = 129471, [SMALL_STATE(3618)] = 129516, [SMALL_STATE(3619)] = 129561, [SMALL_STATE(3620)] = 129606, [SMALL_STATE(3621)] = 129651, [SMALL_STATE(3622)] = 129696, [SMALL_STATE(3623)] = 129741, [SMALL_STATE(3624)] = 129775, [SMALL_STATE(3625)] = 129809, [SMALL_STATE(3626)] = 129849, [SMALL_STATE(3627)] = 129895, [SMALL_STATE(3628)] = 129937, [SMALL_STATE(3629)] = 129979, [SMALL_STATE(3630)] = 130021, [SMALL_STATE(3631)] = 130067, [SMALL_STATE(3632)] = 130113, [SMALL_STATE(3633)] = 130147, [SMALL_STATE(3634)] = 130189, [SMALL_STATE(3635)] = 130235, [SMALL_STATE(3636)] = 130275, [SMALL_STATE(3637)] = 130317, [SMALL_STATE(3638)] = 130363, [SMALL_STATE(3639)] = 130403, [SMALL_STATE(3640)] = 130445, [SMALL_STATE(3641)] = 130473, [SMALL_STATE(3642)] = 130507, [SMALL_STATE(3643)] = 130549, [SMALL_STATE(3644)] = 130577, [SMALL_STATE(3645)] = 130623, [SMALL_STATE(3646)] = 130665, [SMALL_STATE(3647)] = 130711, [SMALL_STATE(3648)] = 130753, [SMALL_STATE(3649)] = 130787, [SMALL_STATE(3650)] = 130829, [SMALL_STATE(3651)] = 130871, [SMALL_STATE(3652)] = 130911, [SMALL_STATE(3653)] = 130945, [SMALL_STATE(3654)] = 130987, [SMALL_STATE(3655)] = 131021, [SMALL_STATE(3656)] = 131067, [SMALL_STATE(3657)] = 131101, [SMALL_STATE(3658)] = 131143, [SMALL_STATE(3659)] = 131177, [SMALL_STATE(3660)] = 131223, [SMALL_STATE(3661)] = 131269, [SMALL_STATE(3662)] = 131310, [SMALL_STATE(3663)] = 131337, [SMALL_STATE(3664)] = 131370, [SMALL_STATE(3665)] = 131409, [SMALL_STATE(3666)] = 131448, [SMALL_STATE(3667)] = 131489, [SMALL_STATE(3668)] = 131522, [SMALL_STATE(3669)] = 131561, [SMALL_STATE(3670)] = 131594, [SMALL_STATE(3671)] = 131629, [SMALL_STATE(3672)] = 131662, [SMALL_STATE(3673)] = 131703, [SMALL_STATE(3674)] = 131736, [SMALL_STATE(3675)] = 131775, [SMALL_STATE(3676)] = 131810, [SMALL_STATE(3677)] = 131843, [SMALL_STATE(3678)] = 131876, [SMALL_STATE(3679)] = 131915, [SMALL_STATE(3680)] = 131948, [SMALL_STATE(3681)] = 131989, [SMALL_STATE(3682)] = 132022, [SMALL_STATE(3683)] = 132057, [SMALL_STATE(3684)] = 132098, [SMALL_STATE(3685)] = 132125, [SMALL_STATE(3686)] = 132150, [SMALL_STATE(3687)] = 132183, [SMALL_STATE(3688)] = 132216, [SMALL_STATE(3689)] = 132252, [SMALL_STATE(3690)] = 132288, [SMALL_STATE(3691)] = 132308, [SMALL_STATE(3692)] = 132344, [SMALL_STATE(3693)] = 132380, [SMALL_STATE(3694)] = 132400, [SMALL_STATE(3695)] = 132436, [SMALL_STATE(3696)] = 132472, [SMALL_STATE(3697)] = 132508, [SMALL_STATE(3698)] = 132544, [SMALL_STATE(3699)] = 132564, [SMALL_STATE(3700)] = 132586, [SMALL_STATE(3701)] = 132606, [SMALL_STATE(3702)] = 132626, [SMALL_STATE(3703)] = 132662, [SMALL_STATE(3704)] = 132698, [SMALL_STATE(3705)] = 132718, [SMALL_STATE(3706)] = 132754, [SMALL_STATE(3707)] = 132790, [SMALL_STATE(3708)] = 132826, [SMALL_STATE(3709)] = 132846, [SMALL_STATE(3710)] = 132868, [SMALL_STATE(3711)] = 132902, [SMALL_STATE(3712)] = 132924, [SMALL_STATE(3713)] = 132944, [SMALL_STATE(3714)] = 132964, [SMALL_STATE(3715)] = 132996, [SMALL_STATE(3716)] = 133032, [SMALL_STATE(3717)] = 133068, [SMALL_STATE(3718)] = 133104, [SMALL_STATE(3719)] = 133140, [SMALL_STATE(3720)] = 133176, [SMALL_STATE(3721)] = 133207, [SMALL_STATE(3722)] = 133240, [SMALL_STATE(3723)] = 133273, [SMALL_STATE(3724)] = 133302, [SMALL_STATE(3725)] = 133331, [SMALL_STATE(3726)] = 133360, [SMALL_STATE(3727)] = 133387, [SMALL_STATE(3728)] = 133420, [SMALL_STATE(3729)] = 133449, [SMALL_STATE(3730)] = 133476, [SMALL_STATE(3731)] = 133505, [SMALL_STATE(3732)] = 133532, [SMALL_STATE(3733)] = 133565, [SMALL_STATE(3734)] = 133598, [SMALL_STATE(3735)] = 133631, [SMALL_STATE(3736)] = 133658, [SMALL_STATE(3737)] = 133687, [SMALL_STATE(3738)] = 133714, [SMALL_STATE(3739)] = 133739, [SMALL_STATE(3740)] = 133766, [SMALL_STATE(3741)] = 133799, [SMALL_STATE(3742)] = 133828, [SMALL_STATE(3743)] = 133855, [SMALL_STATE(3744)] = 133888, [SMALL_STATE(3745)] = 133917, [SMALL_STATE(3746)] = 133942, [SMALL_STATE(3747)] = 133971, [SMALL_STATE(3748)] = 134000, [SMALL_STATE(3749)] = 134025, [SMALL_STATE(3750)] = 134052, [SMALL_STATE(3751)] = 134079, [SMALL_STATE(3752)] = 134112, [SMALL_STATE(3753)] = 134141, [SMALL_STATE(3754)] = 134162, [SMALL_STATE(3755)] = 134193, [SMALL_STATE(3756)] = 134220, [SMALL_STATE(3757)] = 134241, [SMALL_STATE(3758)] = 134270, [SMALL_STATE(3759)] = 134303, [SMALL_STATE(3760)] = 134334, [SMALL_STATE(3761)] = 134367, [SMALL_STATE(3762)] = 134390, [SMALL_STATE(3763)] = 134421, [SMALL_STATE(3764)] = 134454, [SMALL_STATE(3765)] = 134485, [SMALL_STATE(3766)] = 134516, [SMALL_STATE(3767)] = 134545, [SMALL_STATE(3768)] = 134576, [SMALL_STATE(3769)] = 134607, [SMALL_STATE(3770)] = 134640, [SMALL_STATE(3771)] = 134671, [SMALL_STATE(3772)] = 134700, [SMALL_STATE(3773)] = 134731, [SMALL_STATE(3774)] = 134758, [SMALL_STATE(3775)] = 134787, [SMALL_STATE(3776)] = 134806, [SMALL_STATE(3777)] = 134835, [SMALL_STATE(3778)] = 134864, [SMALL_STATE(3779)] = 134895, [SMALL_STATE(3780)] = 134928, [SMALL_STATE(3781)] = 134951, [SMALL_STATE(3782)] = 134980, [SMALL_STATE(3783)] = 134998, [SMALL_STATE(3784)] = 135030, [SMALL_STATE(3785)] = 135060, [SMALL_STATE(3786)] = 135092, [SMALL_STATE(3787)] = 135122, [SMALL_STATE(3788)] = 135154, [SMALL_STATE(3789)] = 135186, [SMALL_STATE(3790)] = 135216, [SMALL_STATE(3791)] = 135234, [SMALL_STATE(3792)] = 135266, [SMALL_STATE(3793)] = 135298, [SMALL_STATE(3794)] = 135330, [SMALL_STATE(3795)] = 135356, [SMALL_STATE(3796)] = 135388, [SMALL_STATE(3797)] = 135420, [SMALL_STATE(3798)] = 135452, [SMALL_STATE(3799)] = 135478, [SMALL_STATE(3800)] = 135510, [SMALL_STATE(3801)] = 135536, [SMALL_STATE(3802)] = 135558, [SMALL_STATE(3803)] = 135576, [SMALL_STATE(3804)] = 135602, [SMALL_STATE(3805)] = 135620, [SMALL_STATE(3806)] = 135646, [SMALL_STATE(3807)] = 135664, [SMALL_STATE(3808)] = 135682, [SMALL_STATE(3809)] = 135714, [SMALL_STATE(3810)] = 135746, [SMALL_STATE(3811)] = 135764, [SMALL_STATE(3812)] = 135794, [SMALL_STATE(3813)] = 135812, [SMALL_STATE(3814)] = 135830, [SMALL_STATE(3815)] = 135860, [SMALL_STATE(3816)] = 135878, [SMALL_STATE(3817)] = 135900, [SMALL_STATE(3818)] = 135918, [SMALL_STATE(3819)] = 135950, [SMALL_STATE(3820)] = 135976, [SMALL_STATE(3821)] = 135998, [SMALL_STATE(3822)] = 136028, [SMALL_STATE(3823)] = 136054, [SMALL_STATE(3824)] = 136072, [SMALL_STATE(3825)] = 136098, [SMALL_STATE(3826)] = 136124, [SMALL_STATE(3827)] = 136142, [SMALL_STATE(3828)] = 136174, [SMALL_STATE(3829)] = 136200, [SMALL_STATE(3830)] = 136218, [SMALL_STATE(3831)] = 136250, [SMALL_STATE(3832)] = 136268, [SMALL_STATE(3833)] = 136298, [SMALL_STATE(3834)] = 136328, [SMALL_STATE(3835)] = 136360, [SMALL_STATE(3836)] = 136382, [SMALL_STATE(3837)] = 136400, [SMALL_STATE(3838)] = 136418, [SMALL_STATE(3839)] = 136450, [SMALL_STATE(3840)] = 136465, [SMALL_STATE(3841)] = 136494, [SMALL_STATE(3842)] = 136515, [SMALL_STATE(3843)] = 136530, [SMALL_STATE(3844)] = 136547, [SMALL_STATE(3845)] = 136576, [SMALL_STATE(3846)] = 136593, [SMALL_STATE(3847)] = 136608, [SMALL_STATE(3848)] = 136629, [SMALL_STATE(3849)] = 136646, [SMALL_STATE(3850)] = 136663, [SMALL_STATE(3851)] = 136692, [SMALL_STATE(3852)] = 136707, [SMALL_STATE(3853)] = 136732, [SMALL_STATE(3854)] = 136757, [SMALL_STATE(3855)] = 136772, [SMALL_STATE(3856)] = 136801, [SMALL_STATE(3857)] = 136830, [SMALL_STATE(3858)] = 136851, [SMALL_STATE(3859)] = 136866, [SMALL_STATE(3860)] = 136881, [SMALL_STATE(3861)] = 136896, [SMALL_STATE(3862)] = 136921, [SMALL_STATE(3863)] = 136936, [SMALL_STATE(3864)] = 136957, [SMALL_STATE(3865)] = 136978, [SMALL_STATE(3866)] = 136993, [SMALL_STATE(3867)] = 137020, [SMALL_STATE(3868)] = 137039, [SMALL_STATE(3869)] = 137068, [SMALL_STATE(3870)] = 137087, [SMALL_STATE(3871)] = 137116, [SMALL_STATE(3872)] = 137137, [SMALL_STATE(3873)] = 137158, [SMALL_STATE(3874)] = 137185, [SMALL_STATE(3875)] = 137206, [SMALL_STATE(3876)] = 137227, [SMALL_STATE(3877)] = 137244, [SMALL_STATE(3878)] = 137273, [SMALL_STATE(3879)] = 137300, [SMALL_STATE(3880)] = 137329, [SMALL_STATE(3881)] = 137358, [SMALL_STATE(3882)] = 137381, [SMALL_STATE(3883)] = 137404, [SMALL_STATE(3884)] = 137433, [SMALL_STATE(3885)] = 137452, [SMALL_STATE(3886)] = 137479, [SMALL_STATE(3887)] = 137500, [SMALL_STATE(3888)] = 137529, [SMALL_STATE(3889)] = 137544, [SMALL_STATE(3890)] = 137559, [SMALL_STATE(3891)] = 137574, [SMALL_STATE(3892)] = 137603, [SMALL_STATE(3893)] = 137618, [SMALL_STATE(3894)] = 137647, [SMALL_STATE(3895)] = 137676, [SMALL_STATE(3896)] = 137705, [SMALL_STATE(3897)] = 137730, [SMALL_STATE(3898)] = 137747, [SMALL_STATE(3899)] = 137764, [SMALL_STATE(3900)] = 137793, [SMALL_STATE(3901)] = 137814, [SMALL_STATE(3902)] = 137830, [SMALL_STATE(3903)] = 137846, [SMALL_STATE(3904)] = 137874, [SMALL_STATE(3905)] = 137900, [SMALL_STATE(3906)] = 137924, [SMALL_STATE(3907)] = 137944, [SMALL_STATE(3908)] = 137960, [SMALL_STATE(3909)] = 137984, [SMALL_STATE(3910)] = 138000, [SMALL_STATE(3911)] = 138016, [SMALL_STATE(3912)] = 138032, [SMALL_STATE(3913)] = 138054, [SMALL_STATE(3914)] = 138080, [SMALL_STATE(3915)] = 138100, [SMALL_STATE(3916)] = 138116, [SMALL_STATE(3917)] = 138144, [SMALL_STATE(3918)] = 138170, [SMALL_STATE(3919)] = 138186, [SMALL_STATE(3920)] = 138202, [SMALL_STATE(3921)] = 138218, [SMALL_STATE(3922)] = 138244, [SMALL_STATE(3923)] = 138270, [SMALL_STATE(3924)] = 138286, [SMALL_STATE(3925)] = 138302, [SMALL_STATE(3926)] = 138318, [SMALL_STATE(3927)] = 138334, [SMALL_STATE(3928)] = 138350, [SMALL_STATE(3929)] = 138368, [SMALL_STATE(3930)] = 138392, [SMALL_STATE(3931)] = 138408, [SMALL_STATE(3932)] = 138430, [SMALL_STATE(3933)] = 138446, [SMALL_STATE(3934)] = 138462, [SMALL_STATE(3935)] = 138478, [SMALL_STATE(3936)] = 138494, [SMALL_STATE(3937)] = 138514, [SMALL_STATE(3938)] = 138530, [SMALL_STATE(3939)] = 138550, [SMALL_STATE(3940)] = 138566, [SMALL_STATE(3941)] = 138582, [SMALL_STATE(3942)] = 138598, [SMALL_STATE(3943)] = 138614, [SMALL_STATE(3944)] = 138630, [SMALL_STATE(3945)] = 138646, [SMALL_STATE(3946)] = 138672, [SMALL_STATE(3947)] = 138688, [SMALL_STATE(3948)] = 138704, [SMALL_STATE(3949)] = 138730, [SMALL_STATE(3950)] = 138746, [SMALL_STATE(3951)] = 138762, [SMALL_STATE(3952)] = 138788, [SMALL_STATE(3953)] = 138804, [SMALL_STATE(3954)] = 138828, [SMALL_STATE(3955)] = 138854, [SMALL_STATE(3956)] = 138870, [SMALL_STATE(3957)] = 138896, [SMALL_STATE(3958)] = 138912, [SMALL_STATE(3959)] = 138932, [SMALL_STATE(3960)] = 138948, [SMALL_STATE(3961)] = 138974, [SMALL_STATE(3962)] = 138990, [SMALL_STATE(3963)] = 139014, [SMALL_STATE(3964)] = 139030, [SMALL_STATE(3965)] = 139046, [SMALL_STATE(3966)] = 139062, [SMALL_STATE(3967)] = 139088, [SMALL_STATE(3968)] = 139104, [SMALL_STATE(3969)] = 139120, [SMALL_STATE(3970)] = 139136, [SMALL_STATE(3971)] = 139152, [SMALL_STATE(3972)] = 139168, [SMALL_STATE(3973)] = 139192, [SMALL_STATE(3974)] = 139218, [SMALL_STATE(3975)] = 139234, [SMALL_STATE(3976)] = 139262, [SMALL_STATE(3977)] = 139288, [SMALL_STATE(3978)] = 139308, [SMALL_STATE(3979)] = 139324, [SMALL_STATE(3980)] = 139340, [SMALL_STATE(3981)] = 139356, [SMALL_STATE(3982)] = 139380, [SMALL_STATE(3983)] = 139396, [SMALL_STATE(3984)] = 139412, [SMALL_STATE(3985)] = 139428, [SMALL_STATE(3986)] = 139444, [SMALL_STATE(3987)] = 139460, [SMALL_STATE(3988)] = 139476, [SMALL_STATE(3989)] = 139492, [SMALL_STATE(3990)] = 139508, [SMALL_STATE(3991)] = 139524, [SMALL_STATE(3992)] = 139540, [SMALL_STATE(3993)] = 139556, [SMALL_STATE(3994)] = 139572, [SMALL_STATE(3995)] = 139592, [SMALL_STATE(3996)] = 139618, [SMALL_STATE(3997)] = 139634, [SMALL_STATE(3998)] = 139650, [SMALL_STATE(3999)] = 139666, [SMALL_STATE(4000)] = 139690, [SMALL_STATE(4001)] = 139710, [SMALL_STATE(4002)] = 139726, [SMALL_STATE(4003)] = 139742, [SMALL_STATE(4004)] = 139758, [SMALL_STATE(4005)] = 139774, [SMALL_STATE(4006)] = 139800, [SMALL_STATE(4007)] = 139816, [SMALL_STATE(4008)] = 139837, [SMALL_STATE(4009)] = 139860, [SMALL_STATE(4010)] = 139883, [SMALL_STATE(4011)] = 139906, [SMALL_STATE(4012)] = 139925, [SMALL_STATE(4013)] = 139948, [SMALL_STATE(4014)] = 139967, [SMALL_STATE(4015)] = 139992, [SMALL_STATE(4016)] = 140017, [SMALL_STATE(4017)] = 140042, [SMALL_STATE(4018)] = 140065, [SMALL_STATE(4019)] = 140084, [SMALL_STATE(4020)] = 140109, [SMALL_STATE(4021)] = 140130, [SMALL_STATE(4022)] = 140153, [SMALL_STATE(4023)] = 140176, [SMALL_STATE(4024)] = 140201, [SMALL_STATE(4025)] = 140224, [SMALL_STATE(4026)] = 140247, [SMALL_STATE(4027)] = 140270, [SMALL_STATE(4028)] = 140293, [SMALL_STATE(4029)] = 140312, [SMALL_STATE(4030)] = 140337, [SMALL_STATE(4031)] = 140356, [SMALL_STATE(4032)] = 140379, [SMALL_STATE(4033)] = 140398, [SMALL_STATE(4034)] = 140423, [SMALL_STATE(4035)] = 140446, [SMALL_STATE(4036)] = 140471, [SMALL_STATE(4037)] = 140494, [SMALL_STATE(4038)] = 140517, [SMALL_STATE(4039)] = 140540, [SMALL_STATE(4040)] = 140563, [SMALL_STATE(4041)] = 140586, [SMALL_STATE(4042)] = 140611, [SMALL_STATE(4043)] = 140636, [SMALL_STATE(4044)] = 140659, [SMALL_STATE(4045)] = 140682, [SMALL_STATE(4046)] = 140705, [SMALL_STATE(4047)] = 140728, [SMALL_STATE(4048)] = 140751, [SMALL_STATE(4049)] = 140776, [SMALL_STATE(4050)] = 140801, [SMALL_STATE(4051)] = 140824, [SMALL_STATE(4052)] = 140847, [SMALL_STATE(4053)] = 140866, [SMALL_STATE(4054)] = 140889, [SMALL_STATE(4055)] = 140912, [SMALL_STATE(4056)] = 140935, [SMALL_STATE(4057)] = 140958, [SMALL_STATE(4058)] = 140981, [SMALL_STATE(4059)] = 141004, [SMALL_STATE(4060)] = 141027, [SMALL_STATE(4061)] = 141050, [SMALL_STATE(4062)] = 141068, [SMALL_STATE(4063)] = 141082, [SMALL_STATE(4064)] = 141096, [SMALL_STATE(4065)] = 141114, [SMALL_STATE(4066)] = 141128, [SMALL_STATE(4067)] = 141146, [SMALL_STATE(4068)] = 141164, [SMALL_STATE(4069)] = 141182, [SMALL_STATE(4070)] = 141196, [SMALL_STATE(4071)] = 141210, [SMALL_STATE(4072)] = 141228, [SMALL_STATE(4073)] = 141246, [SMALL_STATE(4074)] = 141264, [SMALL_STATE(4075)] = 141284, [SMALL_STATE(4076)] = 141302, [SMALL_STATE(4077)] = 141320, [SMALL_STATE(4078)] = 141338, [SMALL_STATE(4079)] = 141356, [SMALL_STATE(4080)] = 141370, [SMALL_STATE(4081)] = 141388, [SMALL_STATE(4082)] = 141406, [SMALL_STATE(4083)] = 141424, [SMALL_STATE(4084)] = 141442, [SMALL_STATE(4085)] = 141460, [SMALL_STATE(4086)] = 141474, [SMALL_STATE(4087)] = 141492, [SMALL_STATE(4088)] = 141506, [SMALL_STATE(4089)] = 141520, [SMALL_STATE(4090)] = 141534, [SMALL_STATE(4091)] = 141552, [SMALL_STATE(4092)] = 141570, [SMALL_STATE(4093)] = 141588, [SMALL_STATE(4094)] = 141606, [SMALL_STATE(4095)] = 141624, [SMALL_STATE(4096)] = 141638, [SMALL_STATE(4097)] = 141656, [SMALL_STATE(4098)] = 141674, [SMALL_STATE(4099)] = 141692, [SMALL_STATE(4100)] = 141706, [SMALL_STATE(4101)] = 141724, [SMALL_STATE(4102)] = 141742, [SMALL_STATE(4103)] = 141758, [SMALL_STATE(4104)] = 141776, [SMALL_STATE(4105)] = 141794, [SMALL_STATE(4106)] = 141812, [SMALL_STATE(4107)] = 141826, [SMALL_STATE(4108)] = 141839, [SMALL_STATE(4109)] = 141858, [SMALL_STATE(4110)] = 141875, [SMALL_STATE(4111)] = 141892, [SMALL_STATE(4112)] = 141911, [SMALL_STATE(4113)] = 141926, [SMALL_STATE(4114)] = 141941, [SMALL_STATE(4115)] = 141958, [SMALL_STATE(4116)] = 141975, [SMALL_STATE(4117)] = 141992, [SMALL_STATE(4118)] = 142009, [SMALL_STATE(4119)] = 142028, [SMALL_STATE(4120)] = 142045, [SMALL_STATE(4121)] = 142062, [SMALL_STATE(4122)] = 142081, [SMALL_STATE(4123)] = 142098, [SMALL_STATE(4124)] = 142115, [SMALL_STATE(4125)] = 142132, [SMALL_STATE(4126)] = 142149, [SMALL_STATE(4127)] = 142166, [SMALL_STATE(4128)] = 142185, [SMALL_STATE(4129)] = 142204, [SMALL_STATE(4130)] = 142221, [SMALL_STATE(4131)] = 142238, [SMALL_STATE(4132)] = 142257, [SMALL_STATE(4133)] = 142270, [SMALL_STATE(4134)] = 142287, [SMALL_STATE(4135)] = 142304, [SMALL_STATE(4136)] = 142321, [SMALL_STATE(4137)] = 142334, [SMALL_STATE(4138)] = 142351, [SMALL_STATE(4139)] = 142367, [SMALL_STATE(4140)] = 142383, [SMALL_STATE(4141)] = 142399, [SMALL_STATE(4142)] = 142415, [SMALL_STATE(4143)] = 142431, [SMALL_STATE(4144)] = 142447, [SMALL_STATE(4145)] = 142463, [SMALL_STATE(4146)] = 142479, [SMALL_STATE(4147)] = 142493, [SMALL_STATE(4148)] = 142509, [SMALL_STATE(4149)] = 142525, [SMALL_STATE(4150)] = 142541, [SMALL_STATE(4151)] = 142557, [SMALL_STATE(4152)] = 142573, [SMALL_STATE(4153)] = 142587, [SMALL_STATE(4154)] = 142603, [SMALL_STATE(4155)] = 142619, [SMALL_STATE(4156)] = 142635, [SMALL_STATE(4157)] = 142651, [SMALL_STATE(4158)] = 142667, [SMALL_STATE(4159)] = 142683, [SMALL_STATE(4160)] = 142699, [SMALL_STATE(4161)] = 142715, [SMALL_STATE(4162)] = 142731, [SMALL_STATE(4163)] = 142747, [SMALL_STATE(4164)] = 142763, [SMALL_STATE(4165)] = 142779, [SMALL_STATE(4166)] = 142795, [SMALL_STATE(4167)] = 142811, [SMALL_STATE(4168)] = 142827, [SMALL_STATE(4169)] = 142843, [SMALL_STATE(4170)] = 142859, [SMALL_STATE(4171)] = 142875, [SMALL_STATE(4172)] = 142891, [SMALL_STATE(4173)] = 142907, [SMALL_STATE(4174)] = 142923, [SMALL_STATE(4175)] = 142939, [SMALL_STATE(4176)] = 142955, [SMALL_STATE(4177)] = 142971, [SMALL_STATE(4178)] = 142987, [SMALL_STATE(4179)] = 143003, [SMALL_STATE(4180)] = 143019, [SMALL_STATE(4181)] = 143035, [SMALL_STATE(4182)] = 143051, [SMALL_STATE(4183)] = 143067, [SMALL_STATE(4184)] = 143083, [SMALL_STATE(4185)] = 143099, [SMALL_STATE(4186)] = 143115, [SMALL_STATE(4187)] = 143131, [SMALL_STATE(4188)] = 143147, [SMALL_STATE(4189)] = 143163, [SMALL_STATE(4190)] = 143179, [SMALL_STATE(4191)] = 143195, [SMALL_STATE(4192)] = 143211, [SMALL_STATE(4193)] = 143227, [SMALL_STATE(4194)] = 143243, [SMALL_STATE(4195)] = 143259, [SMALL_STATE(4196)] = 143275, [SMALL_STATE(4197)] = 143291, [SMALL_STATE(4198)] = 143307, [SMALL_STATE(4199)] = 143323, [SMALL_STATE(4200)] = 143339, [SMALL_STATE(4201)] = 143355, [SMALL_STATE(4202)] = 143371, [SMALL_STATE(4203)] = 143387, [SMALL_STATE(4204)] = 143403, [SMALL_STATE(4205)] = 143419, [SMALL_STATE(4206)] = 143435, [SMALL_STATE(4207)] = 143451, [SMALL_STATE(4208)] = 143467, [SMALL_STATE(4209)] = 143481, [SMALL_STATE(4210)] = 143497, [SMALL_STATE(4211)] = 143513, [SMALL_STATE(4212)] = 143529, [SMALL_STATE(4213)] = 143543, [SMALL_STATE(4214)] = 143559, [SMALL_STATE(4215)] = 143575, [SMALL_STATE(4216)] = 143591, [SMALL_STATE(4217)] = 143607, [SMALL_STATE(4218)] = 143623, [SMALL_STATE(4219)] = 143639, [SMALL_STATE(4220)] = 143655, [SMALL_STATE(4221)] = 143671, [SMALL_STATE(4222)] = 143687, [SMALL_STATE(4223)] = 143703, [SMALL_STATE(4224)] = 143719, [SMALL_STATE(4225)] = 143735, [SMALL_STATE(4226)] = 143751, [SMALL_STATE(4227)] = 143767, [SMALL_STATE(4228)] = 143783, [SMALL_STATE(4229)] = 143799, [SMALL_STATE(4230)] = 143815, [SMALL_STATE(4231)] = 143831, [SMALL_STATE(4232)] = 143847, [SMALL_STATE(4233)] = 143863, [SMALL_STATE(4234)] = 143879, [SMALL_STATE(4235)] = 143895, [SMALL_STATE(4236)] = 143911, [SMALL_STATE(4237)] = 143927, [SMALL_STATE(4238)] = 143943, [SMALL_STATE(4239)] = 143959, [SMALL_STATE(4240)] = 143975, [SMALL_STATE(4241)] = 143991, [SMALL_STATE(4242)] = 144007, [SMALL_STATE(4243)] = 144023, [SMALL_STATE(4244)] = 144039, [SMALL_STATE(4245)] = 144055, [SMALL_STATE(4246)] = 144071, [SMALL_STATE(4247)] = 144087, [SMALL_STATE(4248)] = 144103, [SMALL_STATE(4249)] = 144119, [SMALL_STATE(4250)] = 144135, [SMALL_STATE(4251)] = 144151, [SMALL_STATE(4252)] = 144167, [SMALL_STATE(4253)] = 144183, [SMALL_STATE(4254)] = 144199, [SMALL_STATE(4255)] = 144215, [SMALL_STATE(4256)] = 144231, [SMALL_STATE(4257)] = 144247, [SMALL_STATE(4258)] = 144263, [SMALL_STATE(4259)] = 144279, [SMALL_STATE(4260)] = 144295, [SMALL_STATE(4261)] = 144311, [SMALL_STATE(4262)] = 144327, [SMALL_STATE(4263)] = 144343, [SMALL_STATE(4264)] = 144359, [SMALL_STATE(4265)] = 144375, [SMALL_STATE(4266)] = 144391, [SMALL_STATE(4267)] = 144407, [SMALL_STATE(4268)] = 144423, [SMALL_STATE(4269)] = 144439, [SMALL_STATE(4270)] = 144455, [SMALL_STATE(4271)] = 144471, [SMALL_STATE(4272)] = 144487, [SMALL_STATE(4273)] = 144503, [SMALL_STATE(4274)] = 144519, [SMALL_STATE(4275)] = 144535, [SMALL_STATE(4276)] = 144551, [SMALL_STATE(4277)] = 144567, [SMALL_STATE(4278)] = 144583, [SMALL_STATE(4279)] = 144599, [SMALL_STATE(4280)] = 144615, [SMALL_STATE(4281)] = 144631, [SMALL_STATE(4282)] = 144647, [SMALL_STATE(4283)] = 144663, [SMALL_STATE(4284)] = 144679, [SMALL_STATE(4285)] = 144695, [SMALL_STATE(4286)] = 144711, [SMALL_STATE(4287)] = 144727, [SMALL_STATE(4288)] = 144743, [SMALL_STATE(4289)] = 144759, [SMALL_STATE(4290)] = 144775, [SMALL_STATE(4291)] = 144791, [SMALL_STATE(4292)] = 144807, [SMALL_STATE(4293)] = 144823, [SMALL_STATE(4294)] = 144839, [SMALL_STATE(4295)] = 144855, [SMALL_STATE(4296)] = 144871, [SMALL_STATE(4297)] = 144887, [SMALL_STATE(4298)] = 144903, [SMALL_STATE(4299)] = 144919, [SMALL_STATE(4300)] = 144935, [SMALL_STATE(4301)] = 144951, [SMALL_STATE(4302)] = 144967, [SMALL_STATE(4303)] = 144983, [SMALL_STATE(4304)] = 144999, [SMALL_STATE(4305)] = 145011, [SMALL_STATE(4306)] = 145027, [SMALL_STATE(4307)] = 145041, [SMALL_STATE(4308)] = 145057, [SMALL_STATE(4309)] = 145073, [SMALL_STATE(4310)] = 145085, [SMALL_STATE(4311)] = 145101, [SMALL_STATE(4312)] = 145117, [SMALL_STATE(4313)] = 145133, [SMALL_STATE(4314)] = 145149, [SMALL_STATE(4315)] = 145165, [SMALL_STATE(4316)] = 145181, [SMALL_STATE(4317)] = 145197, [SMALL_STATE(4318)] = 145213, [SMALL_STATE(4319)] = 145229, [SMALL_STATE(4320)] = 145241, [SMALL_STATE(4321)] = 145257, [SMALL_STATE(4322)] = 145273, [SMALL_STATE(4323)] = 145289, [SMALL_STATE(4324)] = 145305, [SMALL_STATE(4325)] = 145319, [SMALL_STATE(4326)] = 145335, [SMALL_STATE(4327)] = 145351, [SMALL_STATE(4328)] = 145367, [SMALL_STATE(4329)] = 145383, [SMALL_STATE(4330)] = 145399, [SMALL_STATE(4331)] = 145415, [SMALL_STATE(4332)] = 145431, [SMALL_STATE(4333)] = 145447, [SMALL_STATE(4334)] = 145463, [SMALL_STATE(4335)] = 145477, [SMALL_STATE(4336)] = 145493, [SMALL_STATE(4337)] = 145507, [SMALL_STATE(4338)] = 145523, [SMALL_STATE(4339)] = 145539, [SMALL_STATE(4340)] = 145555, [SMALL_STATE(4341)] = 145571, [SMALL_STATE(4342)] = 145587, [SMALL_STATE(4343)] = 145603, [SMALL_STATE(4344)] = 145619, [SMALL_STATE(4345)] = 145635, [SMALL_STATE(4346)] = 145651, [SMALL_STATE(4347)] = 145667, [SMALL_STATE(4348)] = 145683, [SMALL_STATE(4349)] = 145699, [SMALL_STATE(4350)] = 145715, [SMALL_STATE(4351)] = 145731, [SMALL_STATE(4352)] = 145741, [SMALL_STATE(4353)] = 145757, [SMALL_STATE(4354)] = 145767, [SMALL_STATE(4355)] = 145777, [SMALL_STATE(4356)] = 145793, [SMALL_STATE(4357)] = 145809, [SMALL_STATE(4358)] = 145819, [SMALL_STATE(4359)] = 145835, [SMALL_STATE(4360)] = 145845, [SMALL_STATE(4361)] = 145855, [SMALL_STATE(4362)] = 145865, [SMALL_STATE(4363)] = 145881, [SMALL_STATE(4364)] = 145897, [SMALL_STATE(4365)] = 145911, [SMALL_STATE(4366)] = 145927, [SMALL_STATE(4367)] = 145943, [SMALL_STATE(4368)] = 145959, [SMALL_STATE(4369)] = 145975, [SMALL_STATE(4370)] = 145991, [SMALL_STATE(4371)] = 146007, [SMALL_STATE(4372)] = 146020, [SMALL_STATE(4373)] = 146033, [SMALL_STATE(4374)] = 146046, [SMALL_STATE(4375)] = 146059, [SMALL_STATE(4376)] = 146072, [SMALL_STATE(4377)] = 146085, [SMALL_STATE(4378)] = 146098, [SMALL_STATE(4379)] = 146111, [SMALL_STATE(4380)] = 146124, [SMALL_STATE(4381)] = 146137, [SMALL_STATE(4382)] = 146150, [SMALL_STATE(4383)] = 146163, [SMALL_STATE(4384)] = 146176, [SMALL_STATE(4385)] = 146189, [SMALL_STATE(4386)] = 146202, [SMALL_STATE(4387)] = 146215, [SMALL_STATE(4388)] = 146228, [SMALL_STATE(4389)] = 146241, [SMALL_STATE(4390)] = 146254, [SMALL_STATE(4391)] = 146267, [SMALL_STATE(4392)] = 146280, [SMALL_STATE(4393)] = 146293, [SMALL_STATE(4394)] = 146306, [SMALL_STATE(4395)] = 146319, [SMALL_STATE(4396)] = 146330, [SMALL_STATE(4397)] = 146343, [SMALL_STATE(4398)] = 146352, [SMALL_STATE(4399)] = 146365, [SMALL_STATE(4400)] = 146378, [SMALL_STATE(4401)] = 146391, [SMALL_STATE(4402)] = 146404, [SMALL_STATE(4403)] = 146417, [SMALL_STATE(4404)] = 146428, [SMALL_STATE(4405)] = 146437, [SMALL_STATE(4406)] = 146450, [SMALL_STATE(4407)] = 146463, [SMALL_STATE(4408)] = 146476, [SMALL_STATE(4409)] = 146489, [SMALL_STATE(4410)] = 146502, [SMALL_STATE(4411)] = 146515, [SMALL_STATE(4412)] = 146528, [SMALL_STATE(4413)] = 146541, [SMALL_STATE(4414)] = 146554, [SMALL_STATE(4415)] = 146567, [SMALL_STATE(4416)] = 146578, [SMALL_STATE(4417)] = 146591, [SMALL_STATE(4418)] = 146602, [SMALL_STATE(4419)] = 146615, [SMALL_STATE(4420)] = 146628, [SMALL_STATE(4421)] = 146641, [SMALL_STATE(4422)] = 146654, [SMALL_STATE(4423)] = 146667, [SMALL_STATE(4424)] = 146680, [SMALL_STATE(4425)] = 146689, [SMALL_STATE(4426)] = 146698, [SMALL_STATE(4427)] = 146711, [SMALL_STATE(4428)] = 146724, [SMALL_STATE(4429)] = 146737, [SMALL_STATE(4430)] = 146748, [SMALL_STATE(4431)] = 146761, [SMALL_STATE(4432)] = 146772, [SMALL_STATE(4433)] = 146785, [SMALL_STATE(4434)] = 146798, [SMALL_STATE(4435)] = 146811, [SMALL_STATE(4436)] = 146824, [SMALL_STATE(4437)] = 146837, [SMALL_STATE(4438)] = 146850, [SMALL_STATE(4439)] = 146863, [SMALL_STATE(4440)] = 146876, [SMALL_STATE(4441)] = 146887, [SMALL_STATE(4442)] = 146900, [SMALL_STATE(4443)] = 146913, [SMALL_STATE(4444)] = 146926, [SMALL_STATE(4445)] = 146939, [SMALL_STATE(4446)] = 146952, [SMALL_STATE(4447)] = 146965, [SMALL_STATE(4448)] = 146978, [SMALL_STATE(4449)] = 146991, [SMALL_STATE(4450)] = 147004, [SMALL_STATE(4451)] = 147017, [SMALL_STATE(4452)] = 147030, [SMALL_STATE(4453)] = 147043, [SMALL_STATE(4454)] = 147056, [SMALL_STATE(4455)] = 147069, [SMALL_STATE(4456)] = 147082, [SMALL_STATE(4457)] = 147095, [SMALL_STATE(4458)] = 147108, [SMALL_STATE(4459)] = 147121, [SMALL_STATE(4460)] = 147134, [SMALL_STATE(4461)] = 147147, [SMALL_STATE(4462)] = 147160, [SMALL_STATE(4463)] = 147173, [SMALL_STATE(4464)] = 147186, [SMALL_STATE(4465)] = 147199, [SMALL_STATE(4466)] = 147212, [SMALL_STATE(4467)] = 147225, [SMALL_STATE(4468)] = 147238, [SMALL_STATE(4469)] = 147251, [SMALL_STATE(4470)] = 147264, [SMALL_STATE(4471)] = 147277, [SMALL_STATE(4472)] = 147290, [SMALL_STATE(4473)] = 147303, [SMALL_STATE(4474)] = 147316, [SMALL_STATE(4475)] = 147329, [SMALL_STATE(4476)] = 147342, [SMALL_STATE(4477)] = 147355, [SMALL_STATE(4478)] = 147368, [SMALL_STATE(4479)] = 147381, [SMALL_STATE(4480)] = 147394, [SMALL_STATE(4481)] = 147407, [SMALL_STATE(4482)] = 147420, [SMALL_STATE(4483)] = 147433, [SMALL_STATE(4484)] = 147446, [SMALL_STATE(4485)] = 147459, [SMALL_STATE(4486)] = 147472, [SMALL_STATE(4487)] = 147485, [SMALL_STATE(4488)] = 147498, [SMALL_STATE(4489)] = 147511, [SMALL_STATE(4490)] = 147522, [SMALL_STATE(4491)] = 147535, [SMALL_STATE(4492)] = 147548, [SMALL_STATE(4493)] = 147561, [SMALL_STATE(4494)] = 147574, [SMALL_STATE(4495)] = 147587, [SMALL_STATE(4496)] = 147600, [SMALL_STATE(4497)] = 147611, [SMALL_STATE(4498)] = 147624, [SMALL_STATE(4499)] = 147637, [SMALL_STATE(4500)] = 147650, [SMALL_STATE(4501)] = 147663, [SMALL_STATE(4502)] = 147676, [SMALL_STATE(4503)] = 147689, [SMALL_STATE(4504)] = 147702, [SMALL_STATE(4505)] = 147715, [SMALL_STATE(4506)] = 147728, [SMALL_STATE(4507)] = 147741, [SMALL_STATE(4508)] = 147754, [SMALL_STATE(4509)] = 147767, [SMALL_STATE(4510)] = 147780, [SMALL_STATE(4511)] = 147793, [SMALL_STATE(4512)] = 147806, [SMALL_STATE(4513)] = 147819, [SMALL_STATE(4514)] = 147832, [SMALL_STATE(4515)] = 147843, [SMALL_STATE(4516)] = 147856, [SMALL_STATE(4517)] = 147869, [SMALL_STATE(4518)] = 147882, [SMALL_STATE(4519)] = 147893, [SMALL_STATE(4520)] = 147906, [SMALL_STATE(4521)] = 147919, [SMALL_STATE(4522)] = 147930, [SMALL_STATE(4523)] = 147943, [SMALL_STATE(4524)] = 147956, [SMALL_STATE(4525)] = 147969, [SMALL_STATE(4526)] = 147982, [SMALL_STATE(4527)] = 147995, [SMALL_STATE(4528)] = 148008, [SMALL_STATE(4529)] = 148021, [SMALL_STATE(4530)] = 148034, [SMALL_STATE(4531)] = 148047, [SMALL_STATE(4532)] = 148060, [SMALL_STATE(4533)] = 148073, [SMALL_STATE(4534)] = 148086, [SMALL_STATE(4535)] = 148095, [SMALL_STATE(4536)] = 148104, [SMALL_STATE(4537)] = 148113, [SMALL_STATE(4538)] = 148126, [SMALL_STATE(4539)] = 148139, [SMALL_STATE(4540)] = 148152, [SMALL_STATE(4541)] = 148165, [SMALL_STATE(4542)] = 148178, [SMALL_STATE(4543)] = 148191, [SMALL_STATE(4544)] = 148204, [SMALL_STATE(4545)] = 148217, [SMALL_STATE(4546)] = 148226, [SMALL_STATE(4547)] = 148239, [SMALL_STATE(4548)] = 148252, [SMALL_STATE(4549)] = 148265, [SMALL_STATE(4550)] = 148278, [SMALL_STATE(4551)] = 148291, [SMALL_STATE(4552)] = 148304, [SMALL_STATE(4553)] = 148317, [SMALL_STATE(4554)] = 148330, [SMALL_STATE(4555)] = 148339, [SMALL_STATE(4556)] = 148350, [SMALL_STATE(4557)] = 148363, [SMALL_STATE(4558)] = 148376, [SMALL_STATE(4559)] = 148389, [SMALL_STATE(4560)] = 148402, [SMALL_STATE(4561)] = 148415, [SMALL_STATE(4562)] = 148428, [SMALL_STATE(4563)] = 148441, [SMALL_STATE(4564)] = 148454, [SMALL_STATE(4565)] = 148467, [SMALL_STATE(4566)] = 148480, [SMALL_STATE(4567)] = 148493, [SMALL_STATE(4568)] = 148506, [SMALL_STATE(4569)] = 148519, [SMALL_STATE(4570)] = 148532, [SMALL_STATE(4571)] = 148545, [SMALL_STATE(4572)] = 148558, [SMALL_STATE(4573)] = 148569, [SMALL_STATE(4574)] = 148582, [SMALL_STATE(4575)] = 148595, [SMALL_STATE(4576)] = 148608, [SMALL_STATE(4577)] = 148621, [SMALL_STATE(4578)] = 148630, [SMALL_STATE(4579)] = 148643, [SMALL_STATE(4580)] = 148656, [SMALL_STATE(4581)] = 148669, [SMALL_STATE(4582)] = 148682, [SMALL_STATE(4583)] = 148695, [SMALL_STATE(4584)] = 148708, [SMALL_STATE(4585)] = 148721, [SMALL_STATE(4586)] = 148734, [SMALL_STATE(4587)] = 148747, [SMALL_STATE(4588)] = 148760, [SMALL_STATE(4589)] = 148773, [SMALL_STATE(4590)] = 148786, [SMALL_STATE(4591)] = 148795, [SMALL_STATE(4592)] = 148808, [SMALL_STATE(4593)] = 148821, [SMALL_STATE(4594)] = 148834, [SMALL_STATE(4595)] = 148847, [SMALL_STATE(4596)] = 148860, [SMALL_STATE(4597)] = 148873, [SMALL_STATE(4598)] = 148886, [SMALL_STATE(4599)] = 148899, [SMALL_STATE(4600)] = 148908, [SMALL_STATE(4601)] = 148921, [SMALL_STATE(4602)] = 148934, [SMALL_STATE(4603)] = 148947, [SMALL_STATE(4604)] = 148960, [SMALL_STATE(4605)] = 148973, [SMALL_STATE(4606)] = 148986, [SMALL_STATE(4607)] = 148999, [SMALL_STATE(4608)] = 149012, [SMALL_STATE(4609)] = 149025, [SMALL_STATE(4610)] = 149038, [SMALL_STATE(4611)] = 149049, [SMALL_STATE(4612)] = 149062, [SMALL_STATE(4613)] = 149072, [SMALL_STATE(4614)] = 149082, [SMALL_STATE(4615)] = 149092, [SMALL_STATE(4616)] = 149102, [SMALL_STATE(4617)] = 149112, [SMALL_STATE(4618)] = 149122, [SMALL_STATE(4619)] = 149132, [SMALL_STATE(4620)] = 149142, [SMALL_STATE(4621)] = 149152, [SMALL_STATE(4622)] = 149162, [SMALL_STATE(4623)] = 149172, [SMALL_STATE(4624)] = 149182, [SMALL_STATE(4625)] = 149192, [SMALL_STATE(4626)] = 149202, [SMALL_STATE(4627)] = 149212, [SMALL_STATE(4628)] = 149222, [SMALL_STATE(4629)] = 149232, [SMALL_STATE(4630)] = 149242, [SMALL_STATE(4631)] = 149252, [SMALL_STATE(4632)] = 149262, [SMALL_STATE(4633)] = 149272, [SMALL_STATE(4634)] = 149282, [SMALL_STATE(4635)] = 149292, [SMALL_STATE(4636)] = 149302, [SMALL_STATE(4637)] = 149312, [SMALL_STATE(4638)] = 149322, [SMALL_STATE(4639)] = 149332, [SMALL_STATE(4640)] = 149342, [SMALL_STATE(4641)] = 149352, [SMALL_STATE(4642)] = 149362, [SMALL_STATE(4643)] = 149372, [SMALL_STATE(4644)] = 149382, [SMALL_STATE(4645)] = 149392, [SMALL_STATE(4646)] = 149402, [SMALL_STATE(4647)] = 149412, [SMALL_STATE(4648)] = 149422, [SMALL_STATE(4649)] = 149432, [SMALL_STATE(4650)] = 149442, [SMALL_STATE(4651)] = 149452, [SMALL_STATE(4652)] = 149462, [SMALL_STATE(4653)] = 149472, [SMALL_STATE(4654)] = 149482, [SMALL_STATE(4655)] = 149492, [SMALL_STATE(4656)] = 149502, [SMALL_STATE(4657)] = 149512, [SMALL_STATE(4658)] = 149522, [SMALL_STATE(4659)] = 149532, [SMALL_STATE(4660)] = 149542, [SMALL_STATE(4661)] = 149552, [SMALL_STATE(4662)] = 149562, [SMALL_STATE(4663)] = 149570, [SMALL_STATE(4664)] = 149580, [SMALL_STATE(4665)] = 149588, [SMALL_STATE(4666)] = 149598, [SMALL_STATE(4667)] = 149608, [SMALL_STATE(4668)] = 149618, [SMALL_STATE(4669)] = 149626, [SMALL_STATE(4670)] = 149636, [SMALL_STATE(4671)] = 149644, [SMALL_STATE(4672)] = 149654, [SMALL_STATE(4673)] = 149664, [SMALL_STATE(4674)] = 149672, [SMALL_STATE(4675)] = 149682, [SMALL_STATE(4676)] = 149692, [SMALL_STATE(4677)] = 149702, [SMALL_STATE(4678)] = 149710, [SMALL_STATE(4679)] = 149718, [SMALL_STATE(4680)] = 149726, [SMALL_STATE(4681)] = 149734, [SMALL_STATE(4682)] = 149742, [SMALL_STATE(4683)] = 149752, [SMALL_STATE(4684)] = 149760, [SMALL_STATE(4685)] = 149770, [SMALL_STATE(4686)] = 149780, [SMALL_STATE(4687)] = 149788, [SMALL_STATE(4688)] = 149796, [SMALL_STATE(4689)] = 149806, [SMALL_STATE(4690)] = 149814, [SMALL_STATE(4691)] = 149824, [SMALL_STATE(4692)] = 149834, [SMALL_STATE(4693)] = 149842, [SMALL_STATE(4694)] = 149850, [SMALL_STATE(4695)] = 149860, [SMALL_STATE(4696)] = 149870, [SMALL_STATE(4697)] = 149880, [SMALL_STATE(4698)] = 149888, [SMALL_STATE(4699)] = 149898, [SMALL_STATE(4700)] = 149908, [SMALL_STATE(4701)] = 149916, [SMALL_STATE(4702)] = 149926, [SMALL_STATE(4703)] = 149936, [SMALL_STATE(4704)] = 149946, [SMALL_STATE(4705)] = 149956, [SMALL_STATE(4706)] = 149964, [SMALL_STATE(4707)] = 149974, [SMALL_STATE(4708)] = 149984, [SMALL_STATE(4709)] = 149994, [SMALL_STATE(4710)] = 150004, [SMALL_STATE(4711)] = 150014, [SMALL_STATE(4712)] = 150024, [SMALL_STATE(4713)] = 150034, [SMALL_STATE(4714)] = 150042, [SMALL_STATE(4715)] = 150052, [SMALL_STATE(4716)] = 150060, [SMALL_STATE(4717)] = 150068, [SMALL_STATE(4718)] = 150078, [SMALL_STATE(4719)] = 150088, [SMALL_STATE(4720)] = 150098, [SMALL_STATE(4721)] = 150108, [SMALL_STATE(4722)] = 150118, [SMALL_STATE(4723)] = 150128, [SMALL_STATE(4724)] = 150138, [SMALL_STATE(4725)] = 150146, [SMALL_STATE(4726)] = 150154, [SMALL_STATE(4727)] = 150162, [SMALL_STATE(4728)] = 150170, [SMALL_STATE(4729)] = 150180, [SMALL_STATE(4730)] = 150188, [SMALL_STATE(4731)] = 150198, [SMALL_STATE(4732)] = 150208, [SMALL_STATE(4733)] = 150218, [SMALL_STATE(4734)] = 150228, [SMALL_STATE(4735)] = 150238, [SMALL_STATE(4736)] = 150248, [SMALL_STATE(4737)] = 150258, [SMALL_STATE(4738)] = 150268, [SMALL_STATE(4739)] = 150278, [SMALL_STATE(4740)] = 150288, [SMALL_STATE(4741)] = 150298, [SMALL_STATE(4742)] = 150308, [SMALL_STATE(4743)] = 150318, [SMALL_STATE(4744)] = 150328, [SMALL_STATE(4745)] = 150336, [SMALL_STATE(4746)] = 150346, [SMALL_STATE(4747)] = 150354, [SMALL_STATE(4748)] = 150364, [SMALL_STATE(4749)] = 150374, [SMALL_STATE(4750)] = 150384, [SMALL_STATE(4751)] = 150392, [SMALL_STATE(4752)] = 150402, [SMALL_STATE(4753)] = 150410, [SMALL_STATE(4754)] = 150420, [SMALL_STATE(4755)] = 150430, [SMALL_STATE(4756)] = 150438, [SMALL_STATE(4757)] = 150448, [SMALL_STATE(4758)] = 150458, [SMALL_STATE(4759)] = 150468, [SMALL_STATE(4760)] = 150478, [SMALL_STATE(4761)] = 150488, [SMALL_STATE(4762)] = 150498, [SMALL_STATE(4763)] = 150508, [SMALL_STATE(4764)] = 150518, [SMALL_STATE(4765)] = 150528, [SMALL_STATE(4766)] = 150538, [SMALL_STATE(4767)] = 150548, [SMALL_STATE(4768)] = 150558, [SMALL_STATE(4769)] = 150568, [SMALL_STATE(4770)] = 150578, [SMALL_STATE(4771)] = 150588, [SMALL_STATE(4772)] = 150598, [SMALL_STATE(4773)] = 150608, [SMALL_STATE(4774)] = 150618, [SMALL_STATE(4775)] = 150628, [SMALL_STATE(4776)] = 150638, [SMALL_STATE(4777)] = 150648, [SMALL_STATE(4778)] = 150658, [SMALL_STATE(4779)] = 150668, [SMALL_STATE(4780)] = 150678, [SMALL_STATE(4781)] = 150688, [SMALL_STATE(4782)] = 150696, [SMALL_STATE(4783)] = 150706, [SMALL_STATE(4784)] = 150716, [SMALL_STATE(4785)] = 150726, [SMALL_STATE(4786)] = 150736, [SMALL_STATE(4787)] = 150746, [SMALL_STATE(4788)] = 150756, [SMALL_STATE(4789)] = 150766, [SMALL_STATE(4790)] = 150776, [SMALL_STATE(4791)] = 150786, [SMALL_STATE(4792)] = 150796, [SMALL_STATE(4793)] = 150806, [SMALL_STATE(4794)] = 150816, [SMALL_STATE(4795)] = 150826, [SMALL_STATE(4796)] = 150836, [SMALL_STATE(4797)] = 150846, [SMALL_STATE(4798)] = 150854, [SMALL_STATE(4799)] = 150864, [SMALL_STATE(4800)] = 150874, [SMALL_STATE(4801)] = 150884, [SMALL_STATE(4802)] = 150894, [SMALL_STATE(4803)] = 150904, [SMALL_STATE(4804)] = 150914, [SMALL_STATE(4805)] = 150924, [SMALL_STATE(4806)] = 150934, [SMALL_STATE(4807)] = 150942, [SMALL_STATE(4808)] = 150950, [SMALL_STATE(4809)] = 150960, [SMALL_STATE(4810)] = 150970, [SMALL_STATE(4811)] = 150978, [SMALL_STATE(4812)] = 150986, [SMALL_STATE(4813)] = 150994, [SMALL_STATE(4814)] = 151004, [SMALL_STATE(4815)] = 151012, [SMALL_STATE(4816)] = 151022, [SMALL_STATE(4817)] = 151032, [SMALL_STATE(4818)] = 151042, [SMALL_STATE(4819)] = 151052, [SMALL_STATE(4820)] = 151062, [SMALL_STATE(4821)] = 151070, [SMALL_STATE(4822)] = 151080, [SMALL_STATE(4823)] = 151090, [SMALL_STATE(4824)] = 151100, [SMALL_STATE(4825)] = 151110, [SMALL_STATE(4826)] = 151118, [SMALL_STATE(4827)] = 151128, [SMALL_STATE(4828)] = 151136, [SMALL_STATE(4829)] = 151144, [SMALL_STATE(4830)] = 151154, [SMALL_STATE(4831)] = 151164, [SMALL_STATE(4832)] = 151172, [SMALL_STATE(4833)] = 151182, [SMALL_STATE(4834)] = 151192, [SMALL_STATE(4835)] = 151202, [SMALL_STATE(4836)] = 151212, [SMALL_STATE(4837)] = 151220, [SMALL_STATE(4838)] = 151228, [SMALL_STATE(4839)] = 151238, [SMALL_STATE(4840)] = 151248, [SMALL_STATE(4841)] = 151256, [SMALL_STATE(4842)] = 151264, [SMALL_STATE(4843)] = 151272, [SMALL_STATE(4844)] = 151280, [SMALL_STATE(4845)] = 151290, [SMALL_STATE(4846)] = 151298, [SMALL_STATE(4847)] = 151308, [SMALL_STATE(4848)] = 151318, [SMALL_STATE(4849)] = 151326, [SMALL_STATE(4850)] = 151336, [SMALL_STATE(4851)] = 151344, [SMALL_STATE(4852)] = 151354, [SMALL_STATE(4853)] = 151364, [SMALL_STATE(4854)] = 151374, [SMALL_STATE(4855)] = 151384, [SMALL_STATE(4856)] = 151394, [SMALL_STATE(4857)] = 151404, [SMALL_STATE(4858)] = 151414, [SMALL_STATE(4859)] = 151424, [SMALL_STATE(4860)] = 151434, [SMALL_STATE(4861)] = 151444, [SMALL_STATE(4862)] = 151454, [SMALL_STATE(4863)] = 151464, [SMALL_STATE(4864)] = 151474, [SMALL_STATE(4865)] = 151484, [SMALL_STATE(4866)] = 151494, [SMALL_STATE(4867)] = 151502, [SMALL_STATE(4868)] = 151510, [SMALL_STATE(4869)] = 151518, [SMALL_STATE(4870)] = 151528, [SMALL_STATE(4871)] = 151538, [SMALL_STATE(4872)] = 151548, [SMALL_STATE(4873)] = 151558, [SMALL_STATE(4874)] = 151566, [SMALL_STATE(4875)] = 151576, [SMALL_STATE(4876)] = 151584, [SMALL_STATE(4877)] = 151592, [SMALL_STATE(4878)] = 151602, [SMALL_STATE(4879)] = 151610, [SMALL_STATE(4880)] = 151618, [SMALL_STATE(4881)] = 151628, [SMALL_STATE(4882)] = 151638, [SMALL_STATE(4883)] = 151646, [SMALL_STATE(4884)] = 151654, [SMALL_STATE(4885)] = 151664, [SMALL_STATE(4886)] = 151674, [SMALL_STATE(4887)] = 151684, [SMALL_STATE(4888)] = 151694, [SMALL_STATE(4889)] = 151704, [SMALL_STATE(4890)] = 151714, [SMALL_STATE(4891)] = 151724, [SMALL_STATE(4892)] = 151734, [SMALL_STATE(4893)] = 151742, [SMALL_STATE(4894)] = 151750, [SMALL_STATE(4895)] = 151760, [SMALL_STATE(4896)] = 151770, [SMALL_STATE(4897)] = 151778, [SMALL_STATE(4898)] = 151788, [SMALL_STATE(4899)] = 151798, [SMALL_STATE(4900)] = 151806, [SMALL_STATE(4901)] = 151816, [SMALL_STATE(4902)] = 151826, [SMALL_STATE(4903)] = 151834, [SMALL_STATE(4904)] = 151842, [SMALL_STATE(4905)] = 151852, [SMALL_STATE(4906)] = 151862, [SMALL_STATE(4907)] = 151870, [SMALL_STATE(4908)] = 151880, [SMALL_STATE(4909)] = 151888, [SMALL_STATE(4910)] = 151898, [SMALL_STATE(4911)] = 151906, [SMALL_STATE(4912)] = 151916, [SMALL_STATE(4913)] = 151926, [SMALL_STATE(4914)] = 151934, [SMALL_STATE(4915)] = 151944, [SMALL_STATE(4916)] = 151952, [SMALL_STATE(4917)] = 151962, [SMALL_STATE(4918)] = 151972, [SMALL_STATE(4919)] = 151982, [SMALL_STATE(4920)] = 151992, [SMALL_STATE(4921)] = 152000, [SMALL_STATE(4922)] = 152010, [SMALL_STATE(4923)] = 152018, [SMALL_STATE(4924)] = 152026, [SMALL_STATE(4925)] = 152036, [SMALL_STATE(4926)] = 152046, [SMALL_STATE(4927)] = 152056, [SMALL_STATE(4928)] = 152066, [SMALL_STATE(4929)] = 152076, [SMALL_STATE(4930)] = 152086, [SMALL_STATE(4931)] = 152094, [SMALL_STATE(4932)] = 152104, [SMALL_STATE(4933)] = 152114, [SMALL_STATE(4934)] = 152124, [SMALL_STATE(4935)] = 152132, [SMALL_STATE(4936)] = 152140, [SMALL_STATE(4937)] = 152148, [SMALL_STATE(4938)] = 152158, [SMALL_STATE(4939)] = 152166, [SMALL_STATE(4940)] = 152174, [SMALL_STATE(4941)] = 152184, [SMALL_STATE(4942)] = 152194, [SMALL_STATE(4943)] = 152204, [SMALL_STATE(4944)] = 152212, [SMALL_STATE(4945)] = 152220, [SMALL_STATE(4946)] = 152230, [SMALL_STATE(4947)] = 152240, [SMALL_STATE(4948)] = 152250, [SMALL_STATE(4949)] = 152260, [SMALL_STATE(4950)] = 152270, [SMALL_STATE(4951)] = 152280, [SMALL_STATE(4952)] = 152290, [SMALL_STATE(4953)] = 152300, [SMALL_STATE(4954)] = 152310, [SMALL_STATE(4955)] = 152320, [SMALL_STATE(4956)] = 152330, [SMALL_STATE(4957)] = 152340, [SMALL_STATE(4958)] = 152348, [SMALL_STATE(4959)] = 152358, [SMALL_STATE(4960)] = 152368, [SMALL_STATE(4961)] = 152378, [SMALL_STATE(4962)] = 152388, [SMALL_STATE(4963)] = 152398, [SMALL_STATE(4964)] = 152408, [SMALL_STATE(4965)] = 152418, [SMALL_STATE(4966)] = 152426, [SMALL_STATE(4967)] = 152436, [SMALL_STATE(4968)] = 152446, [SMALL_STATE(4969)] = 152454, [SMALL_STATE(4970)] = 152464, [SMALL_STATE(4971)] = 152474, [SMALL_STATE(4972)] = 152484, [SMALL_STATE(4973)] = 152494, [SMALL_STATE(4974)] = 152504, [SMALL_STATE(4975)] = 152512, [SMALL_STATE(4976)] = 152522, [SMALL_STATE(4977)] = 152530, [SMALL_STATE(4978)] = 152540, [SMALL_STATE(4979)] = 152548, [SMALL_STATE(4980)] = 152558, [SMALL_STATE(4981)] = 152568, [SMALL_STATE(4982)] = 152576, [SMALL_STATE(4983)] = 152584, [SMALL_STATE(4984)] = 152592, [SMALL_STATE(4985)] = 152602, [SMALL_STATE(4986)] = 152612, [SMALL_STATE(4987)] = 152622, [SMALL_STATE(4988)] = 152632, [SMALL_STATE(4989)] = 152642, [SMALL_STATE(4990)] = 152650, [SMALL_STATE(4991)] = 152660, [SMALL_STATE(4992)] = 152670, [SMALL_STATE(4993)] = 152680, [SMALL_STATE(4994)] = 152690, [SMALL_STATE(4995)] = 152700, [SMALL_STATE(4996)] = 152710, [SMALL_STATE(4997)] = 152720, [SMALL_STATE(4998)] = 152728, [SMALL_STATE(4999)] = 152738, [SMALL_STATE(5000)] = 152748, [SMALL_STATE(5001)] = 152758, [SMALL_STATE(5002)] = 152768, [SMALL_STATE(5003)] = 152776, [SMALL_STATE(5004)] = 152786, [SMALL_STATE(5005)] = 152796, [SMALL_STATE(5006)] = 152806, [SMALL_STATE(5007)] = 152814, [SMALL_STATE(5008)] = 152824, [SMALL_STATE(5009)] = 152834, [SMALL_STATE(5010)] = 152844, [SMALL_STATE(5011)] = 152854, [SMALL_STATE(5012)] = 152864, [SMALL_STATE(5013)] = 152874, [SMALL_STATE(5014)] = 152884, [SMALL_STATE(5015)] = 152894, [SMALL_STATE(5016)] = 152904, [SMALL_STATE(5017)] = 152914, [SMALL_STATE(5018)] = 152924, [SMALL_STATE(5019)] = 152934, [SMALL_STATE(5020)] = 152944, [SMALL_STATE(5021)] = 152954, [SMALL_STATE(5022)] = 152962, [SMALL_STATE(5023)] = 152972, [SMALL_STATE(5024)] = 152982, [SMALL_STATE(5025)] = 152990, [SMALL_STATE(5026)] = 153000, [SMALL_STATE(5027)] = 153010, [SMALL_STATE(5028)] = 153020, [SMALL_STATE(5029)] = 153030, [SMALL_STATE(5030)] = 153040, [SMALL_STATE(5031)] = 153050, [SMALL_STATE(5032)] = 153060, [SMALL_STATE(5033)] = 153070, [SMALL_STATE(5034)] = 153080, [SMALL_STATE(5035)] = 153090, [SMALL_STATE(5036)] = 153098, [SMALL_STATE(5037)] = 153106, [SMALL_STATE(5038)] = 153116, [SMALL_STATE(5039)] = 153126, [SMALL_STATE(5040)] = 153136, [SMALL_STATE(5041)] = 153146, [SMALL_STATE(5042)] = 153156, [SMALL_STATE(5043)] = 153166, [SMALL_STATE(5044)] = 153176, [SMALL_STATE(5045)] = 153186, [SMALL_STATE(5046)] = 153196, [SMALL_STATE(5047)] = 153204, [SMALL_STATE(5048)] = 153214, [SMALL_STATE(5049)] = 153222, [SMALL_STATE(5050)] = 153232, [SMALL_STATE(5051)] = 153242, [SMALL_STATE(5052)] = 153252, [SMALL_STATE(5053)] = 153262, [SMALL_STATE(5054)] = 153270, [SMALL_STATE(5055)] = 153280, [SMALL_STATE(5056)] = 153290, [SMALL_STATE(5057)] = 153300, [SMALL_STATE(5058)] = 153310, [SMALL_STATE(5059)] = 153320, [SMALL_STATE(5060)] = 153330, [SMALL_STATE(5061)] = 153337, [SMALL_STATE(5062)] = 153344, [SMALL_STATE(5063)] = 153351, [SMALL_STATE(5064)] = 153358, [SMALL_STATE(5065)] = 153365, [SMALL_STATE(5066)] = 153372, [SMALL_STATE(5067)] = 153379, [SMALL_STATE(5068)] = 153386, [SMALL_STATE(5069)] = 153393, [SMALL_STATE(5070)] = 153400, [SMALL_STATE(5071)] = 153407, [SMALL_STATE(5072)] = 153414, [SMALL_STATE(5073)] = 153421, [SMALL_STATE(5074)] = 153428, [SMALL_STATE(5075)] = 153435, [SMALL_STATE(5076)] = 153442, [SMALL_STATE(5077)] = 153449, [SMALL_STATE(5078)] = 153456, [SMALL_STATE(5079)] = 153463, [SMALL_STATE(5080)] = 153470, [SMALL_STATE(5081)] = 153477, [SMALL_STATE(5082)] = 153484, [SMALL_STATE(5083)] = 153491, [SMALL_STATE(5084)] = 153498, [SMALL_STATE(5085)] = 153505, [SMALL_STATE(5086)] = 153512, [SMALL_STATE(5087)] = 153519, [SMALL_STATE(5088)] = 153526, [SMALL_STATE(5089)] = 153533, [SMALL_STATE(5090)] = 153540, [SMALL_STATE(5091)] = 153547, [SMALL_STATE(5092)] = 153554, [SMALL_STATE(5093)] = 153561, [SMALL_STATE(5094)] = 153568, [SMALL_STATE(5095)] = 153575, [SMALL_STATE(5096)] = 153582, [SMALL_STATE(5097)] = 153589, [SMALL_STATE(5098)] = 153596, [SMALL_STATE(5099)] = 153603, [SMALL_STATE(5100)] = 153610, [SMALL_STATE(5101)] = 153617, [SMALL_STATE(5102)] = 153624, [SMALL_STATE(5103)] = 153631, [SMALL_STATE(5104)] = 153638, [SMALL_STATE(5105)] = 153645, [SMALL_STATE(5106)] = 153652, [SMALL_STATE(5107)] = 153659, [SMALL_STATE(5108)] = 153666, [SMALL_STATE(5109)] = 153673, [SMALL_STATE(5110)] = 153680, [SMALL_STATE(5111)] = 153687, [SMALL_STATE(5112)] = 153694, [SMALL_STATE(5113)] = 153701, [SMALL_STATE(5114)] = 153708, [SMALL_STATE(5115)] = 153715, [SMALL_STATE(5116)] = 153722, [SMALL_STATE(5117)] = 153729, [SMALL_STATE(5118)] = 153736, [SMALL_STATE(5119)] = 153743, [SMALL_STATE(5120)] = 153750, [SMALL_STATE(5121)] = 153757, [SMALL_STATE(5122)] = 153764, [SMALL_STATE(5123)] = 153771, [SMALL_STATE(5124)] = 153778, [SMALL_STATE(5125)] = 153785, [SMALL_STATE(5126)] = 153792, [SMALL_STATE(5127)] = 153799, [SMALL_STATE(5128)] = 153806, [SMALL_STATE(5129)] = 153813, [SMALL_STATE(5130)] = 153820, [SMALL_STATE(5131)] = 153827, [SMALL_STATE(5132)] = 153834, [SMALL_STATE(5133)] = 153841, [SMALL_STATE(5134)] = 153848, [SMALL_STATE(5135)] = 153855, [SMALL_STATE(5136)] = 153862, [SMALL_STATE(5137)] = 153869, [SMALL_STATE(5138)] = 153876, [SMALL_STATE(5139)] = 153883, [SMALL_STATE(5140)] = 153890, [SMALL_STATE(5141)] = 153897, [SMALL_STATE(5142)] = 153904, [SMALL_STATE(5143)] = 153911, [SMALL_STATE(5144)] = 153918, [SMALL_STATE(5145)] = 153925, [SMALL_STATE(5146)] = 153932, [SMALL_STATE(5147)] = 153939, [SMALL_STATE(5148)] = 153946, [SMALL_STATE(5149)] = 153953, [SMALL_STATE(5150)] = 153960, [SMALL_STATE(5151)] = 153967, [SMALL_STATE(5152)] = 153974, [SMALL_STATE(5153)] = 153981, [SMALL_STATE(5154)] = 153988, [SMALL_STATE(5155)] = 153995, [SMALL_STATE(5156)] = 154002, [SMALL_STATE(5157)] = 154009, [SMALL_STATE(5158)] = 154016, [SMALL_STATE(5159)] = 154023, [SMALL_STATE(5160)] = 154030, [SMALL_STATE(5161)] = 154037, [SMALL_STATE(5162)] = 154044, [SMALL_STATE(5163)] = 154051, [SMALL_STATE(5164)] = 154058, [SMALL_STATE(5165)] = 154065, [SMALL_STATE(5166)] = 154072, [SMALL_STATE(5167)] = 154079, [SMALL_STATE(5168)] = 154086, [SMALL_STATE(5169)] = 154093, [SMALL_STATE(5170)] = 154100, [SMALL_STATE(5171)] = 154107, [SMALL_STATE(5172)] = 154114, [SMALL_STATE(5173)] = 154121, [SMALL_STATE(5174)] = 154128, [SMALL_STATE(5175)] = 154135, [SMALL_STATE(5176)] = 154142, [SMALL_STATE(5177)] = 154149, [SMALL_STATE(5178)] = 154156, [SMALL_STATE(5179)] = 154163, [SMALL_STATE(5180)] = 154170, [SMALL_STATE(5181)] = 154177, [SMALL_STATE(5182)] = 154184, [SMALL_STATE(5183)] = 154191, [SMALL_STATE(5184)] = 154198, [SMALL_STATE(5185)] = 154205, [SMALL_STATE(5186)] = 154212, [SMALL_STATE(5187)] = 154219, [SMALL_STATE(5188)] = 154226, [SMALL_STATE(5189)] = 154233, [SMALL_STATE(5190)] = 154240, [SMALL_STATE(5191)] = 154247, [SMALL_STATE(5192)] = 154254, [SMALL_STATE(5193)] = 154261, [SMALL_STATE(5194)] = 154268, [SMALL_STATE(5195)] = 154275, [SMALL_STATE(5196)] = 154282, [SMALL_STATE(5197)] = 154289, [SMALL_STATE(5198)] = 154296, [SMALL_STATE(5199)] = 154303, [SMALL_STATE(5200)] = 154310, [SMALL_STATE(5201)] = 154317, [SMALL_STATE(5202)] = 154324, [SMALL_STATE(5203)] = 154331, [SMALL_STATE(5204)] = 154338, [SMALL_STATE(5205)] = 154345, [SMALL_STATE(5206)] = 154352, [SMALL_STATE(5207)] = 154359, [SMALL_STATE(5208)] = 154366, [SMALL_STATE(5209)] = 154373, [SMALL_STATE(5210)] = 154380, [SMALL_STATE(5211)] = 154387, [SMALL_STATE(5212)] = 154394, [SMALL_STATE(5213)] = 154401, [SMALL_STATE(5214)] = 154408, [SMALL_STATE(5215)] = 154415, [SMALL_STATE(5216)] = 154422, [SMALL_STATE(5217)] = 154429, [SMALL_STATE(5218)] = 154436, [SMALL_STATE(5219)] = 154443, [SMALL_STATE(5220)] = 154450, [SMALL_STATE(5221)] = 154457, [SMALL_STATE(5222)] = 154464, [SMALL_STATE(5223)] = 154471, [SMALL_STATE(5224)] = 154478, [SMALL_STATE(5225)] = 154485, [SMALL_STATE(5226)] = 154492, [SMALL_STATE(5227)] = 154499, [SMALL_STATE(5228)] = 154506, [SMALL_STATE(5229)] = 154513, [SMALL_STATE(5230)] = 154520, [SMALL_STATE(5231)] = 154527, [SMALL_STATE(5232)] = 154534, [SMALL_STATE(5233)] = 154541, [SMALL_STATE(5234)] = 154548, [SMALL_STATE(5235)] = 154555, [SMALL_STATE(5236)] = 154562, [SMALL_STATE(5237)] = 154569, [SMALL_STATE(5238)] = 154576, [SMALL_STATE(5239)] = 154583, [SMALL_STATE(5240)] = 154590, [SMALL_STATE(5241)] = 154597, [SMALL_STATE(5242)] = 154604, [SMALL_STATE(5243)] = 154611, [SMALL_STATE(5244)] = 154618, [SMALL_STATE(5245)] = 154625, [SMALL_STATE(5246)] = 154632, [SMALL_STATE(5247)] = 154639, [SMALL_STATE(5248)] = 154646, [SMALL_STATE(5249)] = 154653, [SMALL_STATE(5250)] = 154660, [SMALL_STATE(5251)] = 154667, [SMALL_STATE(5252)] = 154674, [SMALL_STATE(5253)] = 154681, [SMALL_STATE(5254)] = 154688, [SMALL_STATE(5255)] = 154695, [SMALL_STATE(5256)] = 154702, [SMALL_STATE(5257)] = 154709, [SMALL_STATE(5258)] = 154716, [SMALL_STATE(5259)] = 154723, [SMALL_STATE(5260)] = 154730, [SMALL_STATE(5261)] = 154737, [SMALL_STATE(5262)] = 154744, [SMALL_STATE(5263)] = 154751, [SMALL_STATE(5264)] = 154758, [SMALL_STATE(5265)] = 154765, [SMALL_STATE(5266)] = 154772, [SMALL_STATE(5267)] = 154779, [SMALL_STATE(5268)] = 154786, [SMALL_STATE(5269)] = 154793, [SMALL_STATE(5270)] = 154800, [SMALL_STATE(5271)] = 154807, [SMALL_STATE(5272)] = 154814, [SMALL_STATE(5273)] = 154821, [SMALL_STATE(5274)] = 154828, [SMALL_STATE(5275)] = 154835, [SMALL_STATE(5276)] = 154842, [SMALL_STATE(5277)] = 154849, [SMALL_STATE(5278)] = 154856, [SMALL_STATE(5279)] = 154863, [SMALL_STATE(5280)] = 154870, [SMALL_STATE(5281)] = 154877, [SMALL_STATE(5282)] = 154884, [SMALL_STATE(5283)] = 154891, [SMALL_STATE(5284)] = 154898, [SMALL_STATE(5285)] = 154905, [SMALL_STATE(5286)] = 154912, [SMALL_STATE(5287)] = 154919, [SMALL_STATE(5288)] = 154926, [SMALL_STATE(5289)] = 154933, [SMALL_STATE(5290)] = 154940, [SMALL_STATE(5291)] = 154947, [SMALL_STATE(5292)] = 154954, [SMALL_STATE(5293)] = 154961, [SMALL_STATE(5294)] = 154968, [SMALL_STATE(5295)] = 154975, [SMALL_STATE(5296)] = 154982, [SMALL_STATE(5297)] = 154989, [SMALL_STATE(5298)] = 154996, [SMALL_STATE(5299)] = 155003, [SMALL_STATE(5300)] = 155010, [SMALL_STATE(5301)] = 155017, [SMALL_STATE(5302)] = 155024, [SMALL_STATE(5303)] = 155031, [SMALL_STATE(5304)] = 155038, [SMALL_STATE(5305)] = 155045, [SMALL_STATE(5306)] = 155052, [SMALL_STATE(5307)] = 155059, [SMALL_STATE(5308)] = 155066, [SMALL_STATE(5309)] = 155073, [SMALL_STATE(5310)] = 155080, [SMALL_STATE(5311)] = 155087, [SMALL_STATE(5312)] = 155094, [SMALL_STATE(5313)] = 155101, [SMALL_STATE(5314)] = 155108, [SMALL_STATE(5315)] = 155115, [SMALL_STATE(5316)] = 155122, [SMALL_STATE(5317)] = 155129, [SMALL_STATE(5318)] = 155136, [SMALL_STATE(5319)] = 155143, [SMALL_STATE(5320)] = 155150, [SMALL_STATE(5321)] = 155157, [SMALL_STATE(5322)] = 155164, [SMALL_STATE(5323)] = 155171, [SMALL_STATE(5324)] = 155178, [SMALL_STATE(5325)] = 155185, [SMALL_STATE(5326)] = 155192, [SMALL_STATE(5327)] = 155199, [SMALL_STATE(5328)] = 155206, [SMALL_STATE(5329)] = 155213, [SMALL_STATE(5330)] = 155220, [SMALL_STATE(5331)] = 155227, [SMALL_STATE(5332)] = 155234, [SMALL_STATE(5333)] = 155241, [SMALL_STATE(5334)] = 155248, [SMALL_STATE(5335)] = 155255, [SMALL_STATE(5336)] = 155262, [SMALL_STATE(5337)] = 155269, [SMALL_STATE(5338)] = 155276, [SMALL_STATE(5339)] = 155283, [SMALL_STATE(5340)] = 155290, [SMALL_STATE(5341)] = 155297, [SMALL_STATE(5342)] = 155304, [SMALL_STATE(5343)] = 155311, [SMALL_STATE(5344)] = 155318, [SMALL_STATE(5345)] = 155325, [SMALL_STATE(5346)] = 155332, [SMALL_STATE(5347)] = 155339, [SMALL_STATE(5348)] = 155346, [SMALL_STATE(5349)] = 155353, [SMALL_STATE(5350)] = 155360, [SMALL_STATE(5351)] = 155367, [SMALL_STATE(5352)] = 155374, [SMALL_STATE(5353)] = 155381, [SMALL_STATE(5354)] = 155388, [SMALL_STATE(5355)] = 155395, [SMALL_STATE(5356)] = 155402, [SMALL_STATE(5357)] = 155409, [SMALL_STATE(5358)] = 155416, [SMALL_STATE(5359)] = 155423, [SMALL_STATE(5360)] = 155430, [SMALL_STATE(5361)] = 155437, [SMALL_STATE(5362)] = 155444, [SMALL_STATE(5363)] = 155451, [SMALL_STATE(5364)] = 155458, [SMALL_STATE(5365)] = 155465, [SMALL_STATE(5366)] = 155472, [SMALL_STATE(5367)] = 155479, [SMALL_STATE(5368)] = 155486, [SMALL_STATE(5369)] = 155493, [SMALL_STATE(5370)] = 155500, [SMALL_STATE(5371)] = 155507, [SMALL_STATE(5372)] = 155514, [SMALL_STATE(5373)] = 155521, [SMALL_STATE(5374)] = 155528, [SMALL_STATE(5375)] = 155535, [SMALL_STATE(5376)] = 155542, [SMALL_STATE(5377)] = 155549, [SMALL_STATE(5378)] = 155556, [SMALL_STATE(5379)] = 155563, [SMALL_STATE(5380)] = 155570, [SMALL_STATE(5381)] = 155577, [SMALL_STATE(5382)] = 155584, [SMALL_STATE(5383)] = 155591, [SMALL_STATE(5384)] = 155598, [SMALL_STATE(5385)] = 155605, [SMALL_STATE(5386)] = 155612, [SMALL_STATE(5387)] = 155619, [SMALL_STATE(5388)] = 155626, [SMALL_STATE(5389)] = 155633, [SMALL_STATE(5390)] = 155640, [SMALL_STATE(5391)] = 155647, [SMALL_STATE(5392)] = 155654, [SMALL_STATE(5393)] = 155661, [SMALL_STATE(5394)] = 155668, [SMALL_STATE(5395)] = 155675, [SMALL_STATE(5396)] = 155682, [SMALL_STATE(5397)] = 155689, [SMALL_STATE(5398)] = 155696, [SMALL_STATE(5399)] = 155703, [SMALL_STATE(5400)] = 155710, [SMALL_STATE(5401)] = 155717, [SMALL_STATE(5402)] = 155724, [SMALL_STATE(5403)] = 155731, [SMALL_STATE(5404)] = 155738, [SMALL_STATE(5405)] = 155745, [SMALL_STATE(5406)] = 155752, [SMALL_STATE(5407)] = 155759, [SMALL_STATE(5408)] = 155766, [SMALL_STATE(5409)] = 155773, [SMALL_STATE(5410)] = 155780, [SMALL_STATE(5411)] = 155787, [SMALL_STATE(5412)] = 155794, [SMALL_STATE(5413)] = 155801, [SMALL_STATE(5414)] = 155808, [SMALL_STATE(5415)] = 155815, [SMALL_STATE(5416)] = 155822, [SMALL_STATE(5417)] = 155829, [SMALL_STATE(5418)] = 155836, [SMALL_STATE(5419)] = 155843, [SMALL_STATE(5420)] = 155850, [SMALL_STATE(5421)] = 155857, [SMALL_STATE(5422)] = 155864, [SMALL_STATE(5423)] = 155871, [SMALL_STATE(5424)] = 155878, [SMALL_STATE(5425)] = 155885, [SMALL_STATE(5426)] = 155892, [SMALL_STATE(5427)] = 155899, [SMALL_STATE(5428)] = 155906, [SMALL_STATE(5429)] = 155913, [SMALL_STATE(5430)] = 155920, [SMALL_STATE(5431)] = 155927, [SMALL_STATE(5432)] = 155934, [SMALL_STATE(5433)] = 155941, [SMALL_STATE(5434)] = 155948, [SMALL_STATE(5435)] = 155955, [SMALL_STATE(5436)] = 155962, [SMALL_STATE(5437)] = 155969, [SMALL_STATE(5438)] = 155976, [SMALL_STATE(5439)] = 155983, [SMALL_STATE(5440)] = 155990, [SMALL_STATE(5441)] = 155997, [SMALL_STATE(5442)] = 156004, [SMALL_STATE(5443)] = 156011, [SMALL_STATE(5444)] = 156018, [SMALL_STATE(5445)] = 156025, [SMALL_STATE(5446)] = 156032, [SMALL_STATE(5447)] = 156039, [SMALL_STATE(5448)] = 156046, [SMALL_STATE(5449)] = 156053, [SMALL_STATE(5450)] = 156060, [SMALL_STATE(5451)] = 156067, [SMALL_STATE(5452)] = 156074, [SMALL_STATE(5453)] = 156081, [SMALL_STATE(5454)] = 156088, [SMALL_STATE(5455)] = 156095, [SMALL_STATE(5456)] = 156102, [SMALL_STATE(5457)] = 156109, [SMALL_STATE(5458)] = 156116, [SMALL_STATE(5459)] = 156123, }; 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_translation_unit, 0), [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1341), [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3841), [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5459), [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3315), [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5457), [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4622), [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135), [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1213), [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1304), [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1213), [27] = {.entry = {.count = 1, .reusable = true}}, SHIFT(841), [29] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3141), [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(856), [33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(535), [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2362), [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1711), [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5454), [41] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4011), [43] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4629), [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5451), [47] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4632), [49] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2699), [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), [53] = {.entry = {.count = 1, .reusable = false}}, SHIFT(994), [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2136), [57] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1645), [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2210), [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2658), [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3716), [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3398), [67] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3422), [69] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3424), [71] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4524), [73] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4666), [75] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1155), [77] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5428), [79] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4669), [81] = {.entry = {.count = 1, .reusable = false}}, SHIFT(182), [83] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5422), [85] = {.entry = {.count = 1, .reusable = false}}, SHIFT(980), [87] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5417), [89] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5414), [91] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5413), [93] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1185), [95] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1088), [97] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2575), [99] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4680), [101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4140), [103] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2661), [105] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5410), [107] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2146), [109] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3155), [111] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2326), [113] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2992), [115] = {.entry = {.count = 1, .reusable = false}}, SHIFT(941), [117] = {.entry = {.count = 1, .reusable = false}}, SHIFT(845), [119] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1262), [121] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1121), [123] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4144), [125] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3954), [127] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5403), [129] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1099), [131] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1206), [133] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4696), [135] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1246), [137] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2729), [139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1975), [141] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1328), [143] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3863), [145] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5331), [147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5146), [149] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3326), [151] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5345), [153] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4838), [155] = {.entry = {.count = 1, .reusable = true}}, SHIFT(593), [157] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2376), [159] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1720), [161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), [163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1387), [165] = {.entry = {.count = 1, .reusable = false}}, SHIFT(996), [167] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4490), [169] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4749), [171] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1205), [173] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5283), [175] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4779), [177] = {.entry = {.count = 1, .reusable = false}}, SHIFT(231), [179] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5404), [181] = {.entry = {.count = 1, .reusable = false}}, SHIFT(976), [183] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5326), [185] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5252), [187] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5338), [189] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5144), [191] = {.entry = {.count = 1, .reusable = false}}, SHIFT(953), [193] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1131), [195] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4174), [197] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3945), [199] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5405), [201] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1095), [203] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1209), [205] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4756), [207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(436), [209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(554), [211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1458), [213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1370), [215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(466), [217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315), [219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(471), [221] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1339), [223] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3871), [225] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5123), [227] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3374), [229] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_elif, 4, .production_id = 59), [231] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5202), [233] = {.entry = {.count = 1, .reusable = false}}, SHIFT(65), [235] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3343), [237] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5042), [239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(283), [241] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2364), [243] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1724), [245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), [247] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4608), [249] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5032), [251] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1220), [253] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5116), [255] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5007), [257] = {.entry = {.count = 1, .reusable = false}}, SHIFT(177), [259] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5434), [261] = {.entry = {.count = 1, .reusable = false}}, SHIFT(981), [263] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5109), [265] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5084), [267] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5060), [269] = {.entry = {.count = 1, .reusable = false}}, SHIFT(962), [271] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1142), [273] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4358), [275] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3976), [277] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5424), [279] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1087), [281] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1222), [283] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5039), [285] = {.entry = {.count = 1, .reusable = false}}, SHIFT(713), [287] = {.entry = {.count = 1, .reusable = false}}, SHIFT(662), [289] = {.entry = {.count = 1, .reusable = false}}, SHIFT(386), [291] = {.entry = {.count = 1, .reusable = false}}, SHIFT(756), [293] = {.entry = {.count = 1, .reusable = false}}, SHIFT(384), [295] = {.entry = {.count = 1, .reusable = false}}, SHIFT(698), [297] = {.entry = {.count = 1, .reusable = false}}, SHIFT(675), [299] = {.entry = {.count = 1, .reusable = false}}, SHIFT(371), [301] = {.entry = {.count = 1, .reusable = false}}, SHIFT(665), [303] = {.entry = {.count = 1, .reusable = false}}, SHIFT(692), [305] = {.entry = {.count = 1, .reusable = false}}, SHIFT(667), [307] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_elif, 3, .production_id = 59), [309] = {.entry = {.count = 1, .reusable = false}}, SHIFT(405), [311] = {.entry = {.count = 1, .reusable = false}}, SHIFT(779), [313] = {.entry = {.count = 1, .reusable = false}}, SHIFT(749), [315] = {.entry = {.count = 1, .reusable = false}}, SHIFT(741), [317] = {.entry = {.count = 1, .reusable = false}}, SHIFT(737), [319] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1339), [322] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(3871), [325] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5123), [328] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(3374), [331] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), [333] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5202), [336] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5042), [339] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(135), [342] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1213), [345] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1304), [348] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1213), [351] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(841), [354] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(3141), [357] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(856), [360] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(283), [363] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(2364), [366] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1724), [369] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5454), [372] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4011), [375] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4629), [378] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5451), [381] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4632), [384] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(2699), [387] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(52), [390] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(994), [393] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(2136), [396] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1645), [399] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(2210), [402] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(2658), [405] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(3716), [408] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(3398), [411] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(3422), [414] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(3424), [417] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4608), [420] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5032), [423] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1220), [426] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5116), [429] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5007), [432] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(177), [435] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5434), [438] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(981), [441] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5109), [444] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5084), [447] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5060), [450] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1185), [453] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1088), [456] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(2575), [459] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4680), [462] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4140), [465] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(2661), [468] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5410), [471] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(2146), [474] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(3155), [477] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(2326), [480] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(2992), [483] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(962), [486] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(845), [489] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1262), [492] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1142), [495] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4358), [498] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(3976), [501] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5424), [504] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1087), [507] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1222), [510] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5039), [513] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1246), [516] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(2729), [519] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1975), [522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), [524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(416), [526] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), [528] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1341), [531] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(3841), [534] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5459), [537] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(3315), [540] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5457), [543] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4622), [546] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(535), [549] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(2362), [552] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1711), [555] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(56), [558] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4524), [561] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4666), [564] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1155), [567] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5428), [570] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4669), [573] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(182), [576] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5422), [579] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(980), [582] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5417), [585] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5414), [588] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5413), [591] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(941), [594] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1121), [597] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4144), [600] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(3954), [603] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5403), [606] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1099), [609] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1206), [612] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4696), [615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(399), [617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1493), [619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1872), [621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1487), [623] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), [625] = {.entry = {.count = 1, .reusable = true}}, SHIFT(761), [627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(858), [629] = {.entry = {.count = 1, .reusable = true}}, SHIFT(859), [631] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1328), [634] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(3863), [637] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5331), [640] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(3326), [643] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5345), [646] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4838), [649] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(593), [652] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(2376), [655] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1720), [658] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(50), [661] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4490), [664] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4749), [667] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1205), [670] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5283), [673] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4779), [676] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(231), [679] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5404), [682] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(976), [685] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5326), [688] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5252), [691] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5338), [694] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(953), [697] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1131), [700] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4174), [703] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(3945), [706] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5405), [709] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1095), [712] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1209), [715] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4756), [718] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3046), [720] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3039), [722] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2219), [724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2216), [726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1416), [728] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1412), [730] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1485), [732] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1484), [734] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2420), [736] = {.entry = {.count = 1, .reusable = true}}, SHIFT(413), [738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(390), [740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(727), [742] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), [744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(404), [746] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_translation_unit, 1), [748] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1350), [750] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3886), [752] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5087), [754] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3379), [756] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_else, 2), [758] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5102), [760] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4613), [762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(431), [764] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2353), [766] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1725), [768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), [770] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4547), [772] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5038), [774] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1284), [776] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5268), [778] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4839), [780] = {.entry = {.count = 1, .reusable = false}}, SHIFT(171), [782] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5443), [784] = {.entry = {.count = 1, .reusable = false}}, SHIFT(977), [786] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5265), [788] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5264), [790] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5091), [792] = {.entry = {.count = 1, .reusable = false}}, SHIFT(959), [794] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1091), [796] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4317), [798] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3956), [800] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5444), [802] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1092), [804] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1291), [806] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5034), [808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(420), [810] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1350), [813] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(3886), [816] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5087), [819] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(3379), [822] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5102), [825] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4613), [828] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(431), [831] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(2353), [834] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1725), [837] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(53), [840] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4547), [843] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5038), [846] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1284), [849] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5268), [852] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4839), [855] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(171), [858] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5443), [861] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(977), [864] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5265), [867] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5264), [870] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5091), [873] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(959), [876] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1091), [879] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(4317), [882] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(3956), [885] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5444), [888] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1092), [891] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(1291), [894] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_translation_unit_repeat1, 2), SHIFT_REPEAT(5034), [897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2503), [899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1870), [901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(780), [903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(673), [905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(377), [907] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382), [909] = {.entry = {.count = 1, .reusable = true}}, SHIFT(803), [911] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_else, 1), [913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(658), [915] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1337), [917] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_statement, 4, .production_id = 10), [919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(822), [921] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1259), [923] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_statement, 4, .production_id = 10), [925] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1259), [927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5031), [929] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1006), [931] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4720), [933] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_statement, 2), [935] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_statement, 2), [937] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1337), [940] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), [942] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(822), [945] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1213), [948] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1213), [951] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1259), [954] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2), [956] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1259), [959] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(283), [962] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(2364), [965] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(2136), [968] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5454), [971] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(4011), [974] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5031), [977] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5451), [980] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(52), [983] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1006), [986] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1645), [989] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(2210), [992] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(2658), [995] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(3716), [998] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(3398), [1001] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(3422), [1004] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(3424), [1007] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(4608), [1010] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5032), [1013] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5007), [1016] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(177), [1019] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5434), [1022] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(981), [1025] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5109), [1028] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5084), [1031] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5060), [1034] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1185), [1037] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1088), [1040] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(2575), [1043] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(4680), [1046] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(4140), [1049] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(2661), [1052] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5410), [1055] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(2146), [1058] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(2326), [1061] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(2992), [1064] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(4720), [1067] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1262), [1070] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1142), [1073] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1087), [1076] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1222), [1079] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5039), [1082] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1246), [1085] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(2729), [1088] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1975), [1091] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_statement, 3), [1093] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_statement, 3), [1095] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_statement, 3, .production_id = 10), [1097] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_statement, 3, .production_id = 10), [1099] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1342), [1102] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(431), [1105] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(2353), [1108] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(53), [1111] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(4547), [1114] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5038), [1117] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(4839), [1120] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(171), [1123] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5443), [1126] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(977), [1129] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5265), [1132] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5264), [1135] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5091), [1138] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1091), [1141] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1092), [1144] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1291), [1147] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5034), [1150] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1349), [1152] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1338), [1155] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(535), [1158] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(2362), [1161] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(56), [1164] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(4524), [1167] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(4666), [1170] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(4669), [1173] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(182), [1176] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5422), [1179] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(980), [1182] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5417), [1185] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5414), [1188] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5413), [1191] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1121), [1194] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1099), [1197] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1206), [1200] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(4696), [1203] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1338), [1205] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1349), [1208] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(593), [1211] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(2376), [1214] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(50), [1217] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(4490), [1220] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(4749), [1223] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(4779), [1226] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(231), [1229] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5404), [1232] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(976), [1235] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5326), [1238] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5252), [1241] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5338), [1244] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1131), [1247] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1095), [1250] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1209), [1253] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(4756), [1256] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1342), [1258] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1344), [1261] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(933), [1264] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(2369), [1267] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(37), [1270] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(4388), [1273] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(4998), [1276] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(4964), [1279] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(281), [1282] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5447), [1285] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(979), [1288] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5164), [1291] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5165), [1294] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(5124), [1297] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1134), [1300] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1133), [1303] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(1307), [1306] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2), SHIFT_REPEAT(4988), [1309] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1344), [1311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(933), [1313] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2369), [1315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), [1317] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4388), [1319] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4998), [1321] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4964), [1323] = {.entry = {.count = 1, .reusable = false}}, SHIFT(281), [1325] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5447), [1327] = {.entry = {.count = 1, .reusable = false}}, SHIFT(979), [1329] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5164), [1331] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5165), [1333] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5124), [1335] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1134), [1337] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1133), [1339] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1307), [1341] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4988), [1343] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1353), [1345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4410), [1347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3283), [1349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4918), [1351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(956), [1353] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3694), [1355] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3394), [1357] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3423), [1359] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3425), [1361] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3056), [1363] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2740), [1365] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5122), [1367] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3323), [1369] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_elif_in_field_declaration_list, 3, .production_id = 59), [1371] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5297), [1373] = {.entry = {.count = 1, .reusable = false}}, SHIFT(122), [1375] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3312), [1377] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4972), [1379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3129), [1381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5334), [1383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1889), [1385] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3141), [1387] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2350), [1389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3525), [1391] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5359), [1393] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2641), [1395] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2577), [1397] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3707), [1399] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3419), [1401] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3404), [1403] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3399), [1405] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5347), [1407] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5335), [1409] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3066), [1411] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4347), [1413] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1352), [1415] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3973), [1417] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5448), [1419] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1598), [1421] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1528), [1423] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1596), [1425] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1531), [1427] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1452), [1429] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1612), [1431] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1584), [1433] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1469), [1435] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1421), [1437] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1423), [1439] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1403), [1441] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1588), [1443] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_elif_in_field_declaration_list, 4, .production_id = 59), [1445] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1333), [1447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2393), [1449] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(2740), [1452] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(5122), [1455] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(3323), [1458] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), [1460] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(5297), [1463] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(4972), [1466] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(3129), [1469] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(5334), [1472] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(1889), [1475] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(3141), [1478] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(3141), [1481] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(2350), [1484] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(2136), [1487] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(5454), [1490] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(3525), [1493] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(4918), [1496] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(5451), [1499] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(4632), [1502] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(5359), [1505] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(1645), [1508] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(2641), [1511] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(2577), [1514] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(3707), [1517] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(3419), [1520] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(3404), [1523] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(3399), [1526] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(5347), [1529] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(2146), [1532] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(3155), [1535] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(5335), [1538] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(3066), [1541] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(4347), [1544] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(845), [1547] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(1352), [1550] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(3973), [1553] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(5448), [1556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1108), [1558] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1112), [1560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1135), [1562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1104), [1564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1139), [1566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1115), [1568] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5103), [1570] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3320), [1572] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5198), [1574] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4995), [1576] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2365), [1578] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3946), [1580] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5197), [1582] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4258), [1584] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1351), [1586] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3917), [1588] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5435), [1590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2013), [1592] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2125), [1594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2314), [1596] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2230), [1598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2485), [1600] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5155), [1602] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3376), [1604] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_else_in_field_declaration_list, 1), [1606] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5162), [1608] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4695), [1610] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2367), [1612] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5233), [1614] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4302), [1616] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1355), [1618] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3995), [1620] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5450), [1622] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_else_in_field_declaration_list, 2), [1624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2330), [1626] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(5155), [1629] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(3376), [1632] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(5162), [1635] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(4695), [1638] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(2367), [1641] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(5233), [1644] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(4302), [1647] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(1355), [1650] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(3995), [1653] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(5450), [1656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2026), [1658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4002), [1660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2584), [1662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1811), [1664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2467), [1666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1752), [1668] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(5103), [1671] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(3320), [1674] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(5198), [1677] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(4995), [1680] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(2365), [1683] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), [1685] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(5197), [1688] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(4258), [1691] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(1351), [1694] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(3917), [1697] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_preproc_if_in_field_declaration_list_repeat1, 2), SHIFT_REPEAT(5435), [1700] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2599), [1702] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1647), [1704] = {.entry = {.count = 1, .reusable = true}}, SHIFT(994), [1706] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1692), [1708] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3685), [1710] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3718), [1712] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3421), [1714] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3418), [1716] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3415), [1718] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5188), [1720] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2128), [1722] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2935), [1724] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1944), [1726] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1861), [1728] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4730), [1730] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 3, .production_id = 8), [1732] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 3, .production_id = 8), [1734] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5057), [1736] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2), [1738] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat1, 2), [1740] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2), SHIFT_REPEAT(5057), [1743] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1845), [1745] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1832), [1747] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1883), [1749] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compound_statement, 3), [1751] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compound_statement, 3), [1753] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2), SHIFT_REPEAT(4832), [1756] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compound_statement, 2), [1758] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compound_statement, 2), [1760] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2), SHIFT_REPEAT(5014), [1763] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_catch_clause, 3, .production_id = 120), [1765] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_catch_clause, 3, .production_id = 120), [1767] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5010), [1769] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2), SHIFT_REPEAT(5010), [1772] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4832), [1774] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5014), [1776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1006), [1778] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, .production_id = 145), [1780] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, .production_id = 145), [1782] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1839), [1784] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1193), [1786] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5092), [1788] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1884), [1790] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4840), [1792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), [1794] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4391), [1796] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4919), [1798] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5037), [1800] = {.entry = {.count = 1, .reusable = false}}, SHIFT(181), [1802] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5423), [1804] = {.entry = {.count = 1, .reusable = false}}, SHIFT(978), [1806] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5095), [1808] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5099), [1810] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5192), [1812] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1118), [1814] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1136), [1816] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1194), [1818] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4926), [1820] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 9, .production_id = 153), [1822] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 9, .production_id = 153), [1824] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, .production_id = 152), [1826] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, .production_id = 152), [1828] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, .production_id = 151), [1830] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, .production_id = 151), [1832] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_range_loop, 8, .production_id = 150), [1834] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_range_loop, 8, .production_id = 150), [1836] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_declaration, 3, .production_id = 48), [1838] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declaration, 3, .production_id = 48), [1840] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_definition, 4, .production_id = 46), [1842] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_definition, 4, .production_id = 46), [1844] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_declaration, 4, .production_id = 84), [1846] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declaration, 4, .production_id = 84), [1848] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_definition, 5, .production_id = 98), [1850] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_definition, 5, .production_id = 98), [1852] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_definition, 5, .production_id = 65), [1854] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_definition, 5, .production_id = 65), [1856] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_definition, 6, .production_id = 129), [1858] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_definition, 6, .production_id = 129), [1860] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_statement, 1), [1862] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 1), [1864] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_statement, 2), [1866] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 2), [1868] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_break_statement, 2), [1870] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_statement, 2), [1872] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_continue_statement, 2), [1874] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continue_statement, 2), [1876] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_throw_statement, 2), [1878] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_throw_statement, 2), [1880] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_co_return_statement, 2), [1882] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_co_return_statement, 2), [1884] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_statement, 2), [1886] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 2), [1888] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 3, .production_id = 37), [1890] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 3, .production_id = 37), [1892] = {.entry = {.count = 1, .reusable = false}}, SHIFT(312), [1894] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_switch_statement, 3, .production_id = 38), [1896] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_switch_statement, 3, .production_id = 38), [1898] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 3, .production_id = 38), [1900] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 3, .production_id = 38), [1902] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_statement, 3), [1904] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 3), [1906] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_goto_statement, 3, .production_id = 39), [1908] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_goto_statement, 3, .production_id = 39), [1910] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_labeled_statement, 3, .production_id = 41), [1912] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_labeled_statement, 3, .production_id = 41), [1914] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_throw_statement, 3), [1916] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_throw_statement, 3), [1918] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_co_return_statement, 3), [1920] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_co_return_statement, 3), [1922] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_co_yield_statement, 3), [1924] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_co_yield_statement, 3), [1926] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 4, .production_id = 77), [1928] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 4, .production_id = 77), [1930] = {.entry = {.count = 1, .reusable = false}}, SHIFT(317), [1932] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attributed_non_case_statement, 2), [1934] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attributed_non_case_statement, 2), [1936] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_initializer_list, 2), [1938] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, .production_id = 111), [1940] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, .production_id = 111), [1942] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_do_statement, 5, .production_id = 112), [1944] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_do_statement, 5, .production_id = 112), [1946] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1691), [1948] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sizeof_expression, 4, .production_id = 32), [1950] = {.entry = {.count = 1, .reusable = true}}, SHIFT(829), [1952] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1147), [1954] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1147), [1956] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sizeof_expression, 4, .production_id = 32), [1958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4018), [1960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(949), [1962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1243), [1964] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1128), [1966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1733), [1968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4922), [1970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4355), [1972] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1907), [1974] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1250), [1976] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1251), [1978] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2704), [1980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1617), [1982] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, .production_id = 136), [1984] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, .production_id = 136), [1986] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6), [1988] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6), [1990] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, .production_id = 137), [1992] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, .production_id = 137), [1994] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, .production_id = 142), [1996] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, .production_id = 142), [1998] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, .production_id = 143), [2000] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, .production_id = 143), [2002] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, .production_id = 144), [2004] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, .production_id = 144), [2006] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, .production_id = 137), [2008] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, .production_id = 137), [2010] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, .production_id = 148), [2012] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, .production_id = 148), [2014] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, .production_id = 149), [2016] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, .production_id = 149), [2018] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_operator_cast_declaration, 4, .production_id = 91), [2020] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_operator_cast_declaration, 4, .production_id = 91), [2022] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_instantiation, 4, .production_id = 44), [2024] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_instantiation, 4, .production_id = 44), [2026] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constructor_or_destructor_declaration, 2, .production_id = 17), [2028] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constructor_or_destructor_declaration, 2, .production_id = 17), [2030] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_static_assert_declaration, 7, .production_id = 146), [2032] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_static_assert_declaration, 7, .production_id = 146), [2034] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_operator_cast_definition, 3, .production_id = 56), [2036] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_operator_cast_definition, 3, .production_id = 56), [2038] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_operator_cast_declaration, 5, .production_id = 127), [2040] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_operator_cast_declaration, 5, .production_id = 127), [2042] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_static_assert_declaration, 5, .production_id = 119), [2044] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_static_assert_declaration, 5, .production_id = 119), [2046] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_declaration, 5, .production_id = 118), [2048] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_declaration, 5, .production_id = 118), [2050] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_namespace_alias_definition, 5, .production_id = 9), [2052] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_namespace_alias_definition, 5, .production_id = 9), [2054] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_ifdef, 5, .production_id = 96), [2056] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_ifdef, 5, .production_id = 96), [2058] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_if, 5, .production_id = 59), [2060] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_if, 5, .production_id = 59), [2062] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_if, 5, .production_id = 95), [2064] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_if, 5, .production_id = 95), [2066] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_function_def, 5, .production_id = 94), [2068] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_function_def, 5, .production_id = 94), [2070] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constructor_or_destructor_definition, 4, .production_id = 5), [2072] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constructor_or_destructor_definition, 4, .production_id = 5), [2074] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constructor_or_destructor_definition, 4, .production_id = 93), [2076] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constructor_or_destructor_definition, 4, .production_id = 93), [2078] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_delete_method_clause, 3), [2080] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_delete_method_clause, 3), [2082] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_default_method_clause, 3), [2084] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_method_clause, 3), [2086] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 4, .production_id = 86), [2088] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 4, .production_id = 86), [2090] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_using_declaration, 4), [2092] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_using_declaration, 4), [2094] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_declaration_list, 3), [2096] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declaration_list, 3), [2098] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_call, 2, .production_id = 3), [2100] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_call, 2, .production_id = 3), [2102] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_ifdef, 4, .production_id = 9), [2104] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_ifdef, 4, .production_id = 9), [2106] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_ifdef, 4, .production_id = 60), [2108] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_ifdef, 4, .production_id = 60), [2110] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_if, 4, .production_id = 59), [2112] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_if, 4, .production_id = 59), [2114] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_function_def, 4, .production_id = 58), [2116] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_function_def, 4, .production_id = 58), [2118] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_def, 4, .production_id = 57), [2120] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_def, 4, .production_id = 57), [2122] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_if, 6, .production_id = 128), [2124] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_if, 6, .production_id = 128), [2126] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 3, .production_id = 49), [2128] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 3, .production_id = 49), [2130] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constructor_or_destructor_definition, 2, .production_id = 16), [2132] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constructor_or_destructor_definition, 2, .production_id = 16), [2134] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constructor_or_destructor_definition, 3, .production_id = 56), [2136] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constructor_or_destructor_definition, 3, .production_id = 56), [2138] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constructor_or_destructor_definition, 3, .production_id = 17), [2140] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constructor_or_destructor_definition, 3, .production_id = 17), [2142] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constructor_or_destructor_definition, 3, .production_id = 51), [2144] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constructor_or_destructor_definition, 3, .production_id = 51), [2146] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constructor_or_destructor_declaration, 3, .production_id = 5), [2148] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constructor_or_destructor_declaration, 3, .production_id = 5), [2150] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_using_declaration, 3), [2152] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_using_declaration, 3), [2154] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_namespace_definition, 3, .production_id = 35), [2156] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_namespace_definition, 3, .production_id = 35), [2158] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_declaration_list, 2), [2160] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declaration_list, 2), [2162] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_declaration, 3, .production_id = 43), [2164] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_declaration, 3, .production_id = 43), [2166] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_instantiation, 3, .production_id = 5), [2168] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_instantiation, 3, .production_id = 5), [2170] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_linkage_specification, 3, .production_id = 31), [2172] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_linkage_specification, 3, .production_id = 31), [2174] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_call, 3, .production_id = 28), [2176] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_call, 3, .production_id = 28), [2178] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_ifdef, 3, .production_id = 9), [2180] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_ifdef, 3, .production_id = 9), [2182] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_def, 3, .production_id = 9), [2184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_def, 3, .production_id = 9), [2186] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_include, 3, .production_id = 27), [2188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_include, 3, .production_id = 27), [2190] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attributed_statement, 2), [2192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attributed_statement, 2), [2194] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_operator_cast_definition, 2, .production_id = 16), [2196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_operator_cast_definition, 2, .production_id = 16), [2198] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_operator_cast_declaration, 2, .production_id = 17), [2200] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_operator_cast_declaration, 2, .production_id = 17), [2202] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__empty_declaration, 2), [2204] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__empty_declaration, 2), [2206] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constructor_or_destructor_definition, 2, .production_id = 17), [2208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constructor_or_destructor_definition, 2, .production_id = 17), [2210] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constructor_or_destructor_definition, 3, .production_id = 5), [2212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constructor_or_destructor_definition, 3, .production_id = 5), [2214] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_namespace_definition, 2, .production_id = 8), [2216] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_namespace_definition, 2, .production_id = 8), [2218] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_operator_cast_declaration, 3, .production_id = 5), [2220] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_operator_cast_declaration, 3, .production_id = 5), [2222] = {.entry = {.count = 1, .reusable = false}}, SHIFT(337), [2224] = {.entry = {.count = 1, .reusable = false}}, SHIFT(295), [2226] = {.entry = {.count = 1, .reusable = false}}, SHIFT(192), [2228] = {.entry = {.count = 1, .reusable = false}}, SHIFT(233), [2230] = {.entry = {.count = 1, .reusable = false}}, SHIFT(309), [2232] = {.entry = {.count = 1, .reusable = false}}, SHIFT(201), [2234] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1938), [2236] = {.entry = {.count = 1, .reusable = true}}, SHIFT(833), [2238] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1149), [2240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1149), [2242] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1153), [2244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4028), [2246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(946), [2248] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4685), [2250] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1236), [2252] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1130), [2254] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2071), [2256] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4997), [2258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4344), [2260] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2184), [2262] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1312), [2264] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1293), [2266] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2726), [2268] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1667), [2270] = {.entry = {.count = 1, .reusable = true}}, SHIFT(832), [2272] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1272), [2274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1272), [2276] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1152), [2278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4032), [2280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1271), [2282] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1123), [2284] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1269), [2286] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1268), [2288] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2732), [2290] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1661), [2292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(836), [2294] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1174), [2296] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1174), [2298] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1153), [2300] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4030), [2302] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1953), [2304] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3609), [2306] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3702), [2308] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3382), [2310] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3383), [2312] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3384), [2314] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1162), [2316] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1132), [2318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2817), [2320] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5036), [2322] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4223), [2324] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3016), [2326] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5371), [2328] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2501), [2330] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2905), [2332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1343), [2334] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1306), [2336] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1302), [2338] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2712), [2340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2336), [2342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2267), [2344] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1642), [2346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2134), [2348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3708), [2350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1935), [2352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1463), [2354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2193), [2356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1366), [2358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3911), [2360] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2876), [2362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3529), [2364] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4182), [2366] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5118), [2368] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1665), [2370] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4349), [2372] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5330), [2374] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5391), [2376] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5399), [2378] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4263), [2380] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5218), [2382] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5356), [2384] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1722), [2386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), [2388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1238), [2390] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3277), [2392] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3276), [2394] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3162), [2396] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4327), [2398] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5379), [2400] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2368), [2402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1948), [2404] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1948), [2406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4014), [2408] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2302), [2410] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3703), [2412] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3451), [2414] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3455), [2416] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3457), [2418] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2914), [2420] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1847), [2422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5426), [2424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3817), [2426] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3817), [2428] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3753), [2430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5296), [2432] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1766), [2434] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1950), [2436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(824), [2438] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1195), [2440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1195), [2442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4052), [2444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1188), [2446] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1090), [2448] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1172), [2450] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1171), [2452] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2751), [2454] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1922), [2456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(958), [2458] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1964), [2460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(840), [2462] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1148), [2464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1148), [2466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1152), [2468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4013), [2470] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1252), [2472] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1137), [2474] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1210), [2476] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1204), [2478] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2724), [2480] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2633), [2482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4522), [2484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3337), [2486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(850), [2488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1632), [2490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2414), [2492] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2414), [2494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3644), [2496] = {.entry = {.count = 1, .reusable = false}}, SHIFT(957), [2498] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__declaration_modifiers, 1), REDUCE(aux_sym_attributed_declarator_repeat1, 1), [2501] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__declaration_modifiers, 1), REDUCE(aux_sym_attributed_declarator_repeat1, 1), [2504] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_attributed_declarator_repeat1, 1), [2506] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_attributed_declarator_repeat1, 1), [2508] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__declaration_modifiers, 1), [2510] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__declaration_modifiers, 1), [2512] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute_declaration, 3), [2514] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_declaration, 3), [2516] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute_declaration, 4), [2518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_declaration, 4), [2520] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4977), [2522] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2), SHIFT_REPEAT(4977), [2525] = {.entry = {.count = 1, .reusable = false}}, SHIFT(240), [2527] = {.entry = {.count = 1, .reusable = false}}, SHIFT(239), [2529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1120), [2531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3240), [2533] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1942), [2535] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2863), [2537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1359), [2539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3637), [2541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5433), [2543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4360), [2545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1009), [2547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1097), [2549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3858), [2551] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1100), [2553] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3859), [2555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1126), [2557] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4063), [2559] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5159), [2561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2231), [2563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1146), [2565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3848), [2567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1141), [2569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3229), [2571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5280), [2573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1885), [2575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2631), [2577] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1119), [2579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3242), [2581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1138), [2583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3892), [2585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1096), [2587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3849), [2589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1144), [2591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3807), [2593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2618), [2595] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1869), [2597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1124), [2599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3865), [2601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5290), [2603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2928), [2605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1106), [2607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4079), [2609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1117), [2611] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3239), [2613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1122), [2615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3826), [2617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4359), [2619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1875), [2621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2212), [2623] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3081), [2625] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1914), [2627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2635), [2629] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4357), [2631] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2966), [2633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2194), [2635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(528), [2637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(491), [2639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4692), [2641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(898), [2643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(459), [2645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(288), [2647] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5267), [2649] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1103), [2651] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1978), [2653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(983), [2655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3226), [2657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3536), [2659] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3536), [2661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4015), [2663] = {.entry = {.count = 1, .reusable = false}}, SHIFT(961), [2665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1036), [2667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1077), [2669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4744), [2671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1848), [2673] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4354), [2675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1083), [2677] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1021), [2679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1080), [2681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1026), [2683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2180), [2685] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5455), [2687] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1127), [2689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1704), [2691] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1853), [2693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4106), [2695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1046), [2697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2885), [2699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1070), [2701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3216), [2703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1035), [2705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1051), [2707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1038), [2709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2790), [2711] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5425), [2713] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1098), [2715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1015), [2717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1058), [2719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1028), [2721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1066), [2723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(331), [2725] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_capture_specifier, 2), [2727] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda_capture_specifier, 2), [2729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359), [2731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(332), [2733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), [2735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272), [2737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(326), [2739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358), [2741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314), [2743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), [2745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), [2747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261), [2749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271), [2751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(244), [2753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238), [2755] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_default_capture, 1), [2757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(321), [2759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), [2761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), [2763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(280), [2765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(328), [2767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), [2769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), [2771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), [2773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), [2775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), [2777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), [2779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(250), [2781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249), [2783] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), [2785] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269), [2787] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), [2789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), [2791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), [2793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), [2795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), [2797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278), [2799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), [2801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), [2803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5307), [2805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(823), [2807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(831), [2809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(487), [2811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(486), [2813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1019), [2815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3332), [2817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(512), [2819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3843), [2821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3888), [2823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1552), [2825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(988), [2827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(430), [2829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3889), [2831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1057), [2833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1436), [2835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1086), [2837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1081), [2839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4065), [2841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1073), [2843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1075), [2845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1042), [2847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1023), [2849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1052), [2851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1040), [2853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1032), [2855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1033), [2857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3243), [2859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4920), [2861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3247), [2863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3259), [2865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(437), [2867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3806), [2869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5203), [2871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(838), [2873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3854), [2875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1018), [2877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4088), [2879] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1519), [2881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(826), [2883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1037), [2885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5352), [2887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(828), [2889] = {.entry = {.count = 1, .reusable = true}}, SHIFT(514), [2891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5320), [2893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(825), [2895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(923), [2897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(922), [2899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1039), [2901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4938), [2903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(830), [2905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3860), [2907] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1025), [2909] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1030), [2911] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3244), [2913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292), [2915] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3224), [2917] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3810), [2919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1020), [2921] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3845), [2923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1005), [2925] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1010), [2927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(990), [2929] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1007), [2931] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1718), [2933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1000), [2935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1008), [2937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(995), [2939] = {.entry = {.count = 1, .reusable = true}}, SHIFT(989), [2941] = {.entry = {.count = 1, .reusable = true}}, SHIFT(998), [2943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(984), [2945] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1001), [2947] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1719), [2949] = {.entry = {.count = 1, .reusable = true}}, SHIFT(987), [2951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1002), [2953] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__type_specifier, 1, .production_id = 1), [2955] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression, 1), [2957] = {.entry = {.count = 3, .reusable = true}}, REDUCE(sym__declarator, 1), REDUCE(sym__type_specifier, 1, .production_id = 1), REDUCE(sym__expression, 1), [2961] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_specifier, 1, .production_id = 1), [2963] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression, 1), [2965] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__type_specifier, 1, .production_id = 1), REDUCE(sym__expression, 1), [2968] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__type_specifier, 1, .production_id = 1), REDUCE(sym__expression, 1), [2971] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__expression, 1), SHIFT(819), [2974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4132), [2976] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__declarator, 1), REDUCE(sym__type_specifier, 1, .production_id = 1), [2979] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__class_name, 1, .production_id = 1), [2981] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym__declarator, 1), REDUCE(sym__type_specifier, 1, .production_id = 1), REDUCE(sym__expression, 1), [2985] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1278), [2987] = {.entry = {.count = 1, .reusable = false}}, SHIFT(195), [2989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1278), [2991] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_qualified_type_identifier, 2, .production_id = 25), [2993] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_qualified_identifier, 2, .production_id = 24), [2995] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_qualified_identifier, 2, .production_id = 24), REDUCE(sym_qualified_type_identifier, 2, .production_id = 25), [2998] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_qualified_type_identifier, 2, .production_id = 25), [3000] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_qualified_identifier, 2, .production_id = 24), [3002] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_qualified_identifier, 2, .production_id = 24), REDUCE(sym_qualified_type_identifier, 2, .production_id = 25), [3005] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_qualified_identifier, 2, .production_id = 24), SHIFT(811), [3008] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_argument_list, 3, .dynamic_precedence = 1), [3010] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_argument_list, 3, .dynamic_precedence = 1), [3012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), [3014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), [3016] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), [3018] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_argument_list, 3, .dynamic_precedence = 2), [3020] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_argument_list, 3, .dynamic_precedence = 2), [3022] = {.entry = {.count = 1, .reusable = false}}, SHIFT(291), [3024] = {.entry = {.count = 1, .reusable = false}}, SHIFT(218), [3026] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_argument_list, 3, .dynamic_precedence = 3), [3028] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_argument_list, 3, .dynamic_precedence = 3), [3030] = {.entry = {.count = 1, .reusable = false}}, SHIFT(167), [3032] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_argument_list, 2), [3034] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_argument_list, 2), [3036] = {.entry = {.count = 1, .reusable = false}}, SHIFT(225), [3038] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), [3040] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_argument_list, 4, .dynamic_precedence = 2), [3042] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_argument_list, 4, .dynamic_precedence = 2), [3044] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_argument_list, 4, .dynamic_precedence = 3), [3046] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_argument_list, 4, .dynamic_precedence = 3), [3048] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_argument_list, 4, .dynamic_precedence = 1), [3050] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_argument_list, 4, .dynamic_precedence = 1), [3052] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2871), [3054] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3411), [3056] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3410), [3058] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3409), [3060] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3401), [3062] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3402), [3064] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3403), [3066] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_type, 2, .production_id = 12), [3068] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_function, 2, .production_id = 13), [3070] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_template_type, 2, .production_id = 12), REDUCE(sym_template_function, 2, .production_id = 13), [3073] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_type, 2, .production_id = 12), [3075] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_function, 2, .production_id = 13), [3077] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_template_type, 2, .production_id = 12), REDUCE(sym_template_function, 2, .production_id = 13), [3080] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3414), [3082] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3416), [3084] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3417), [3086] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3251), [3088] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2642), [3090] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4313), [3092] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1708), [3094] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4668), [3096] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3931), [3098] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2654), [3100] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5179), [3102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3572), [3104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4748), [3106] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5181), [3108] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2623), [3110] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2644), [3112] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_attributed_declarator_repeat1, 2), [3114] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_attributed_declarator_repeat1, 2), [3116] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_attributed_declarator_repeat1, 2), SHIFT_REPEAT(5031), [3119] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration, 4, .production_id = 117), [3121] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration, 4, .production_id = 117), [3123] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration, 6, .production_id = 147), [3125] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration, 6, .production_id = 147), [3127] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_friend_declaration, 2), [3129] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_friend_declaration, 2), [3131] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_access_specifier, 2), [3133] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_access_specifier, 2), [3135] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_if_in_field_declaration_list, 6, .production_id = 128), [3137] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_if_in_field_declaration_list, 6, .production_id = 128), [3139] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration, 5, .production_id = 140), [3141] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration, 5, .production_id = 140), [3143] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration, 5, .production_id = 84), [3145] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration, 5, .production_id = 84), [3147] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration, 5, .production_id = 139), [3149] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration, 5, .production_id = 139), [3151] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_ifdef_in_field_declaration_list, 5, .production_id = 96), [3153] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_ifdef_in_field_declaration_list, 5, .production_id = 96), [3155] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_if_in_field_declaration_list, 5, .production_id = 59), [3157] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_if_in_field_declaration_list, 5, .production_id = 59), [3159] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_if_in_field_declaration_list, 5, .production_id = 95), [3161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_if_in_field_declaration_list, 5, .production_id = 95), [3163] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration, 4, .production_id = 84), [3165] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration, 4, .production_id = 84), [3167] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration, 4, .production_id = 131), [3169] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration, 4, .production_id = 131), [3171] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration, 4, .production_id = 48), [3173] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration, 4, .production_id = 48), [3175] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_friend_declaration, 4), [3177] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_friend_declaration, 4), [3179] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_ifdef_in_field_declaration_list, 4, .production_id = 9), [3181] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_ifdef_in_field_declaration_list, 4, .production_id = 9), [3183] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_ifdef_in_field_declaration_list, 4, .production_id = 60), [3185] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_ifdef_in_field_declaration_list, 4, .production_id = 60), [3187] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_if_in_field_declaration_list, 4, .production_id = 59), [3189] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_if_in_field_declaration_list, 4, .production_id = 59), [3191] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration, 3, .production_id = 104), [3193] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration, 3, .production_id = 104), [3195] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration, 3, .production_id = 42), [3197] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration, 3, .production_id = 42), [3199] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_inline_method_definition, 3, .production_id = 48), [3201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inline_method_definition, 3, .production_id = 48), [3203] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_inline_method_definition, 3, .production_id = 49), [3205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inline_method_definition, 3, .production_id = 49), [3207] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration, 3, .production_id = 48), [3209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration, 3, .production_id = 48), [3211] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_friend_declaration, 3), [3213] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_friend_declaration, 3), [3215] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_ifdef_in_field_declaration_list, 3, .production_id = 9), [3217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_ifdef_in_field_declaration_list, 3, .production_id = 9), [3219] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration, 2, .production_id = 42), [3221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration, 2, .production_id = 42), [3223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), [3225] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), [3227] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(4355), [3230] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(1489), [3233] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3662), [3235] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_pointer_declarator, 1, .dynamic_precedence = 1), [3237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1501), [3239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2366), [3241] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2366), [3243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3672), [3245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(957), [3247] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_condition_clause, 4, .production_id = 109), [3249] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_condition_clause, 4, .production_id = 109), [3251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_concatenated_string, 2), [3253] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_concatenated_string, 2), [3255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1489), [3257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1582), [3259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2357), [3261] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2357), [3263] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1877), [3265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1578), [3267] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_condition_clause, 3, .production_id = 10), [3269] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_condition_clause, 3, .production_id = 10), [3271] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_sized_type_specifier_repeat1, 2), [3273] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_sized_type_specifier_repeat1, 2), [3275] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_sized_type_specifier_repeat1, 2), SHIFT_REPEAT(1626), [3278] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1779), [3280] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sized_type_specifier, 1), [3282] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sized_type_specifier, 1), [3284] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1626), [3286] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1768), [3288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3666), [3290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4035), [3292] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 3), [3294] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 3), [3296] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute_specifier, 4), [3298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_specifier, 4), [3300] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_qualifier, 1), [3302] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_qualifier, 1), [3304] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 2), [3306] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 2), [3308] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__declarator, 1), [3310] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_specifier, 4, .production_id = 75), [3312] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_specifier, 4, .production_id = 75), [3314] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), [3316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3767), [3318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3250), [3320] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_specifier, 2, .production_id = 9), [3322] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_specifier, 2, .production_id = 9), [3324] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_specifier, 4, .production_id = 75), [3326] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_specifier, 4, .production_id = 75), [3328] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_specifier, 4, .production_id = 75), [3330] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_specifier, 4, .production_id = 75), [3332] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_specifier, 2, .production_id = 9), [3334] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_specifier, 2, .production_id = 9), [3336] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_specifier, 2, .production_id = 9), [3338] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_specifier, 2, .production_id = 9), [3340] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_specifier, 3, .production_id = 34), [3342] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_specifier, 3, .production_id = 34), [3344] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_specifier, 3, .production_id = 34), [3346] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_specifier, 3, .production_id = 34), [3348] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_specifier, 3, .production_id = 34), [3350] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_specifier, 3, .production_id = 34), [3352] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_qualified_identifier, 2, .production_id = 24), SHIFT(817), [3355] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(4344), [3358] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(1660), [3361] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__expression, 1), SHIFT(814), [3364] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1158), [3366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1158), [3368] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_qualified_type_identifier, 2, .production_id = 25), SHIFT(817), [3371] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__class_name, 1, .production_id = 1), [3373] = {.entry = {.count = 1, .reusable = false}}, SHIFT(817), [3375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1660), [3377] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__expression, 1), SHIFT(816), [3380] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_qualified_identifier, 2, .production_id = 24), SHIFT(813), [3383] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2191), [3385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1664), [3387] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 4, .production_id = 66), [3389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(985), [3391] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 4, .production_id = 66), [3393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1216), [3395] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_sized_type_specifier_repeat1, 2), SHIFT_REPEAT(1669), [3398] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dependent_type_identifier, 2), [3400] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dependent_type_identifier, 2), [3402] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 2, .production_id = 14), [3404] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 2, .production_id = 14), [3406] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 3, .production_id = 32), [3408] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 3, .production_id = 32), [3410] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__class_name, 1), [3412] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__class_name, 1), [3414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4136), [3416] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_qualified_type_identifier, 2, .production_id = 24), [3418] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_qualified_type_identifier, 2, .production_id = 24), [3420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 3, .production_id = 47), [3422] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 3, .production_id = 47), [3424] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2009), [3426] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1669), [3428] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2007), [3430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), [3432] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_parameter_list, 4), [3434] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_parameter_list, 4), [3436] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 3, .production_id = 46), [3438] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 3, .production_id = 46), [3440] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3), [3442] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3), [3444] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 4, .production_id = 65), [3446] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 4, .production_id = 65), [3448] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4), [3450] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4), [3452] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__enum_base_clause, 2, .production_id = 70), [3454] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__enum_base_clause, 2, .production_id = 70), [3456] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 4, .production_id = 82), [3458] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 4, .production_id = 82), [3460] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__expression, 1), SHIFT(817), [3463] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2188), [3465] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1697), [3467] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2195), [3469] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 5, .production_id = 101), [3471] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 5, .production_id = 101), [3473] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_specifier, 2, .production_id = 9), [3475] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_specifier, 2, .production_id = 9), [3477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3687), [3479] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_sized_type_specifier_repeat1, 2), SHIFT_REPEAT(1697), [3482] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_parameter_list, 3), [3484] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_parameter_list, 3), [3486] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 2), [3488] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 2), [3490] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_specifier, 3, .production_id = 34), [3492] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_specifier, 3, .production_id = 34), [3494] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_parameter_list, 2), [3496] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_parameter_list, 2), [3498] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_storage_class_specifier, 1), [3500] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_storage_class_specifier, 1), [3502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4335), [3504] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_qualified_type_identifier, 2, .production_id = 25), SHIFT(813), [3507] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_specifier, 3, .production_id = 36), [3509] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_specifier, 3, .production_id = 36), [3511] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_specifier, 4, .production_id = 69), [3513] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_specifier, 4, .production_id = 69), [3515] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_specifier, 1), [3517] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__type_specifier, 1), [3519] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_destructor_name, 2), [3521] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_destructor_name, 2), [3523] = {.entry = {.count = 1, .reusable = false}}, SHIFT(813), [3525] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__declarator, 1), REDUCE(sym__expression, 1), [3528] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__expression, 1), SHIFT(811), [3531] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__declarator, 1), REDUCE(sym__expression, 1), [3534] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_declarator, 3, .production_id = 121), [3536] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_declarator, 3, .production_id = 121), [3538] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_type_definition_repeat1, 2), [3540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_definition_repeat1, 2), [3542] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_definition_repeat1, 2), SHIFT_REPEAT(1942), [3545] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_specifier, 2, .production_id = 8), [3547] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_specifier, 2, .production_id = 8), [3549] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_specifier, 7, .production_id = 141), [3551] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_specifier, 7, .production_id = 141), [3553] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_specifier, 7, .production_id = 141), [3555] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_specifier, 7, .production_id = 141), [3557] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_specifier, 3, .production_id = 35), [3559] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_specifier, 3, .production_id = 35), [3561] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_specifier, 6, .production_id = 134), [3563] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_specifier, 6, .production_id = 134), [3565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1877), [3567] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_specifier, 6, .production_id = 133), [3569] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_specifier, 6, .production_id = 133), [3571] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_char_literal, 3), [3573] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_char_literal, 3), [3575] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_specifier, 6, .production_id = 132), [3577] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_specifier, 6, .production_id = 132), [3579] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_specifier, 6, .production_id = 134), [3581] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_specifier, 6, .production_id = 134), [3583] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_specifier, 6, .production_id = 133), [3585] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_specifier, 6, .production_id = 133), [3587] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_specifier, 6, .production_id = 132), [3589] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_specifier, 6, .production_id = 132), [3591] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_specifier, 6, .production_id = 134), [3593] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_specifier, 6, .production_id = 134), [3595] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_specifier, 6, .production_id = 133), [3597] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_specifier, 6, .production_id = 133), [3599] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_specifier, 6, .production_id = 132), [3601] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_specifier, 6, .production_id = 132), [3603] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_specifier, 4, .production_id = 68), [3605] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_specifier, 4, .production_id = 68), [3607] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enumerator_list, 5), [3609] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enumerator_list, 5), [3611] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dependent_field_identifier, 2), [3613] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dependent_field_identifier, 2), [3615] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_specifier, 5, .production_id = 108), [3617] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_specifier, 5, .production_id = 108), [3619] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_specifier, 5, .production_id = 107), [3621] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_specifier, 5, .production_id = 107), [3623] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), [3625] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_specifier, 3, .production_id = 33), [3627] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_specifier, 3, .production_id = 33), [3629] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_specifier, 5, .production_id = 106), [3631] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_specifier, 5, .production_id = 106), [3633] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_specifier, 5, .production_id = 105), [3635] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_specifier, 5, .production_id = 105), [3637] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration_list, 2), [3639] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration_list, 2), [3641] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_specifier, 5, .production_id = 108), [3643] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_specifier, 5, .production_id = 108), [3645] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_specifier, 5, .production_id = 107), [3647] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_specifier, 5, .production_id = 107), [3649] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_specifier, 5, .production_id = 106), [3651] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_specifier, 5, .production_id = 106), [3653] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_specifier, 5, .production_id = 105), [3655] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_specifier, 5, .production_id = 105), [3657] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_specifier, 5, .production_id = 108), [3659] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_specifier, 5, .production_id = 108), [3661] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_specifier, 5, .production_id = 107), [3663] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_specifier, 5, .production_id = 107), [3665] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_specifier, 5, .production_id = 106), [3667] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_specifier, 5, .production_id = 106), [3669] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_specifier, 3, .production_id = 35), [3671] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_specifier, 3, .production_id = 35), [3673] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_specifier, 5, .production_id = 105), [3675] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_specifier, 5, .production_id = 105), [3677] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_specifier, 3, .production_id = 33), [3679] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_specifier, 3, .production_id = 33), [3681] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_specifier, 3, .production_id = 33), [3683] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_specifier, 3, .production_id = 33), [3685] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sized_type_specifier, 2, .production_id = 14), [3687] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sized_type_specifier, 2, .production_id = 14), [3689] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_sized_type_specifier_repeat1, 2), SHIFT_REPEAT(1769), [3692] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_specifier, 3, .production_id = 35), [3694] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_specifier, 3, .production_id = 35), [3696] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_specifier, 2, .production_id = 8), [3698] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_specifier, 2, .production_id = 8), [3700] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_specifier, 2, .production_id = 8), [3702] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_specifier, 2, .production_id = 8), [3704] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_specifier, 4, .production_id = 74), [3706] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_specifier, 4, .production_id = 74), [3708] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_specifier, 3, .production_id = 33), [3710] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_specifier, 3, .production_id = 33), [3712] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_specifier, 2, .production_id = 8), [3714] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_specifier, 2, .production_id = 8), [3716] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sized_type_specifier, 2, .dynamic_precedence = -1, .production_id = 26), [3718] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sized_type_specifier, 2, .dynamic_precedence = -1, .production_id = 26), [3720] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_pointer_declarator, 2, .dynamic_precedence = 1), [3722] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_specifier, 5, .production_id = 103), [3724] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_specifier, 5, .production_id = 103), [3726] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enumerator_list, 4), [3728] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enumerator_list, 4), [3730] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enumerator_list, 2), [3732] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enumerator_list, 2), [3734] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_specifier, 4, .production_id = 76), [3736] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_specifier, 4, .production_id = 76), [3738] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dependent_type, 2, .dynamic_precedence = -1), [3740] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dependent_type, 2, .dynamic_precedence = -1), [3742] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_specifier, 4, .production_id = 68), [3744] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_specifier, 4, .production_id = 68), [3746] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_specifier, 4, .production_id = 74), [3748] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_specifier, 4, .production_id = 74), [3750] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_specifier, 4, .production_id = 76), [3752] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_specifier, 4, .production_id = 76), [3754] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_specifier, 4, .production_id = 68), [3756] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_specifier, 4, .production_id = 68), [3758] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enumerator_list, 3), [3760] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enumerator_list, 3), [3762] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_operator_name, 2), [3764] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_operator_name, 2), [3766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1892), [3768] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_specifier, 4, .production_id = 68), [3770] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_specifier, 4, .production_id = 68), [3772] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_specifier, 4, .production_id = 74), [3774] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_specifier, 4, .production_id = 74), [3776] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decltype, 4), [3778] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decltype, 4), [3780] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_specifier, 3, .production_id = 35), [3782] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_specifier, 3, .production_id = 35), [3784] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__enum_base_clause, 2, .production_id = 71), [3786] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__enum_base_clause, 2, .production_id = 71), [3788] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_specifier, 4, .production_id = 72), [3790] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_specifier, 4, .production_id = 72), [3792] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_declarator, 4, .production_id = 121), [3794] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_declarator, 4, .production_id = 121), [3796] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_specifier, 4, .production_id = 76), [3798] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_specifier, 4, .production_id = 76), [3800] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_specifier, 7, .production_id = 141), [3802] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_specifier, 7, .production_id = 141), [3804] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration_list, 3), [3806] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration_list, 3), [3808] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, .production_id = 40), [3810] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1320), [3812] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1321), [3814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1323), [3816] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1324), [3818] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1325), [3820] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1326), [3822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1327), [3824] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1317), [3826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1317), [3828] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1316), [3830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1085), [3832] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_expression, 3, .production_id = 40), [3834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1823), [3836] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4086), [3838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4086), [3840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1825), [3842] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional_expression, 5, .production_id = 125), [3844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1322), [3846] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional_expression, 5, .production_id = 125), [3848] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1301), [3850] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1814), [3852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3136), [3854] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3136), [3856] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5359), [3858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(991), [3860] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1249), [3862] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_expression, 3, .production_id = 55), [3864] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda_expression, 3, .production_id = 55), [3866] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dependent_identifier, 2), [3868] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dependent_identifier, 2), [3870] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_expression, 3, .production_id = 54), [3872] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_expression, 3, .production_id = 54), [3874] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compound_literal_expression, 2, .production_id = 20), [3876] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compound_literal_expression, 2, .production_id = 20), [3878] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_update_expression, 2, .production_id = 19), [3880] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_update_expression, 2, .production_id = 19), [3882] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_pack_expansion, 2, .production_id = 18), [3884] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameter_pack_expansion, 2, .production_id = 18), [3886] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_co_await_expression, 2, .production_id = 4), [3888] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_co_await_expression, 2, .production_id = 4), [3890] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_delete_expression, 2), [3892] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_delete_expression, 2), [3894] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1852), [3896] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3128), [3898] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3128), [3900] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cast_expression, 4, .production_id = 62), [3902] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cast_expression, 4, .production_id = 62), [3904] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_compound_literal_expression, 4, .production_id = 62), [3906] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_compound_literal_expression, 4, .production_id = 62), [3908] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sizeof_expression, 2, .production_id = 10), [3910] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sizeof_expression, 2, .production_id = 10), [3912] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_expression, 3, .production_id = 53), [3914] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_expression, 3, .production_id = 53), [3916] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_field_expression, 3, .production_id = 53), SHIFT(817), [3919] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4020), [3921] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1840), [3923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3131), [3925] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3131), [3927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3661), [3929] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3), [3931] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3), [3933] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 4, .production_id = 64), [3935] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 4, .production_id = 64), [3937] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_delete_expression, 3), [3939] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_delete_expression, 3), [3941] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1923), [3943] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__expression, 1), SHIFT(5212), [3946] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__expression, 1), SHIFT(3829), [3949] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1261), [3951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1261), [3953] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_update_expression, 2, .production_id = 4), [3955] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_update_expression, 2, .production_id = 4), [3957] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1903), [3959] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3139), [3961] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3139), [3963] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 2, .production_id = 7), [3965] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 2, .production_id = 7), [3967] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_initializer_list, 3), [3969] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_initializer_list, 3), [3971] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_delete_expression, 4), [3973] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_delete_expression, 4), [3975] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 4, .production_id = 80), [3977] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 4, .production_id = 80), [3979] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 4, .production_id = 81), [3981] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 4, .production_id = 81), [3983] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5212), [3985] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2, .production_id = 4), [3987] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 2, .production_id = 4), [3989] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pointer_expression, 2, .production_id = 4), [3991] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pointer_expression, 2, .production_id = 4), [3993] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_initializer_list, 5), [3995] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_initializer_list, 5), [3997] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_user_defined_literal, 2), [3999] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_user_defined_literal, 2), [4001] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_delete_expression, 5), [4003] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_delete_expression, 5), [4005] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 5, .production_id = 99), [4007] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 5, .production_id = 99), [4009] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 5, .production_id = 100), [4011] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 5, .production_id = 100), [4013] = {.entry = {.count = 1, .reusable = false}}, SHIFT(183), [4015] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_initializer_list, 2), [4017] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_expression, 3, .production_id = 40), [4019] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment_expression, 3, .production_id = 40), [4021] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3681), [4023] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 6, .production_id = 130), [4025] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 6, .production_id = 130), [4027] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_operator_name, 3), [4029] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_operator_name, 3), [4031] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 5, .production_id = 122), [4033] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 5, .production_id = 122), [4035] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_method, 2, .production_id = 88), [4037] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_method, 2, .production_id = 88), [4039] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_subscript_expression, 4, .production_id = 90), [4041] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_subscript_expression, 4, .production_id = 90), [4043] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sizeof_expression, 5, .production_id = 114), [4045] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sizeof_expression, 5, .production_id = 114), [4047] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_initializer_list, 4), [4049] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_initializer_list, 4), [4051] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 3, .production_id = 45), [4053] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 3, .production_id = 45), [4055] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_expression, 2, .production_id = 22), [4057] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda_expression, 2, .production_id = 22), [4059] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2149), [4061] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2149), [4063] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2001), [4065] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5263), [4067] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1830), [4069] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1830), [4071] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1796), [4073] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5145), [4075] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__expression, 1), SHIFT(813), [4078] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_sized_type_specifier_repeat1, 2), SHIFT_REPEAT(1943), [4081] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3753), [4083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1847), [4085] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2490), [4087] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1943), [4089] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2491), [4091] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), [4093] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1961), [4095] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(4140), [4098] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(1961), [4101] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1315), [4103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1315), [4105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(818), [4107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(819), [4109] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2619), [4111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1958), [4113] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1217), [4115] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1225), [4117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1270), [4119] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1258), [4121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1258), [4123] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1219), [4125] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1074), [4127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2252), [4129] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4077), [4131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4077), [4133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1277), [4135] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1308), [4137] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1311), [4139] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1313), [4141] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1314), [4143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2240), [4145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1231), [4147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4319), [4149] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_declaration, 1, .production_id = 42), [4151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2275), [4153] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2275), [4155] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1280), [4157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2094), [4159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2307), [4161] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2307), [4163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1190), [4165] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_field_expression, 3, .production_id = 53), SHIFT(813), [4168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2191), [4170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), [4172] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3767), [4174] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3250), [4176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4178), [4178] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_ms_declspec_modifier, 4), [4180] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ms_declspec_modifier, 4), [4182] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__declaration_specifiers, 3, .production_id = 14), [4184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__declaration_specifiers, 3, .production_id = 14), [4186] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4082), [4188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4082), [4190] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_virtual_function_specifier, 1), [4192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_virtual_function_specifier, 1), [4194] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__declaration_specifiers, 1, .production_id = 2), [4196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__declaration_specifiers, 1, .production_id = 2), [4198] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1255), [4200] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1197), [4202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1242), [4204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1241), [4206] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1240), [4208] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1230), [4210] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1229), [4212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1228), [4214] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1226), [4216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1226), [4218] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1218), [4220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1274), [4222] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__declaration_specifiers, 2, .production_id = 2), [4224] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__declaration_specifiers, 2, .production_id = 2), [4226] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__declaration_specifiers, 2, .production_id = 14), [4228] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__declaration_specifiers, 2, .production_id = 14), [4230] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_field_expression, 3, .production_id = 53), SHIFT(812), [4233] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), [4235] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), [4237] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(2654), [4240] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(5179), [4243] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(4748), [4246] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(5181), [4249] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(2623), [4252] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(2644), [4255] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_sized_type_specifier, 1), SHIFT(2278), [4258] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1769), [4260] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2324), [4262] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_sized_type_specifier_repeat1, 2), SHIFT_REPEAT(2238), [4265] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__constructor_specifiers, 1), REDUCE(aux_sym__declaration_specifiers_repeat1, 1), [4268] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__constructor_specifiers, 1), [4270] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__constructor_specifiers, 1), [4272] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__constructor_specifiers, 1), REDUCE(aux_sym__declaration_specifiers_repeat1, 1), [4275] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 1), [4277] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_reference_declarator, 1), [4279] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2278), [4281] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3470), [4283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3241), [4285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4023), [4287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3334), [4289] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(2136), [4292] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(5454), [4295] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(4918), [4298] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(5451), [4301] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(1645), [4304] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(2146), [4307] = {.entry = {.count = 1, .reusable = false}}, SHIFT(816), [4309] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_qualified_type_identifier, 2, .production_id = 25), SHIFT(816), [4312] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2950), [4314] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2339), [4316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2347), [4318] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_operator_cast_definition_repeat1, 2), [4320] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_operator_cast_definition_repeat1, 2), [4322] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_operator_cast_definition_repeat1, 2), SHIFT_REPEAT(2654), [4325] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_operator_cast_definition_repeat1, 2), SHIFT_REPEAT(5179), [4328] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_operator_cast_definition_repeat1, 2), SHIFT_REPEAT(4748), [4331] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_operator_cast_definition_repeat1, 2), SHIFT_REPEAT(5181), [4334] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_operator_cast_definition_repeat1, 2), SHIFT_REPEAT(2623), [4337] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_operator_cast_definition_repeat1, 2), SHIFT_REPEAT(2644), [4340] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_operator_cast_definition_repeat1, 2), SHIFT_REPEAT(3155), [4343] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(4223), [4346] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(2347), [4349] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3696), [4351] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3437), [4353] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3433), [4355] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3432), [4357] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2959), [4359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), [4361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameter_declaration, 2, .production_id = 79), [4363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2895), [4365] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3492), [4367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4016), [4369] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3748), [4371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4029), [4373] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3578), [4375] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3964), [4377] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3689), [4379] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3391), [4381] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3392), [4383] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3393), [4385] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5395), [4387] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2892), [4389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(755), [4391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1593), [4393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(412), [4395] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3692), [4397] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2968), [4399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(736), [4401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3667), [4403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1566), [4405] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3677), [4407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(747), [4409] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2771), [4411] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3040), [4413] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3697), [4415] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2886), [4417] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3717), [4419] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3405), [4421] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3406), [4423] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3407), [4425] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3115), [4427] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3695), [4429] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2888), [4431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1407), [4433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(993), [4435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1310), [4437] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(3172), [4440] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(5304), [4443] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(5040), [4446] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(5306), [4449] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(2547), [4452] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(3170), [4455] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3172), [4457] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5304), [4459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5040), [4461] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5306), [4463] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2547), [4465] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3170), [4467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1601), [4469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1420), [4471] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_qualified_type_identifier, 2, .production_id = 25), SHIFT(814), [4474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1589), [4476] = {.entry = {.count = 1, .reusable = false}}, SHIFT(814), [4478] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4100), [4480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3506), [4482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2576), [4484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3486), [4486] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3486), [4488] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3801), [4490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2572), [4492] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3505), [4494] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3505), [4496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1003), [4498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2619), [4500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(997), [4502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1300), [4504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3669), [4506] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__declarator, 1), REDUCE(sym__type_specifier, 1, .production_id = 1), [4509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2648), [4511] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_sized_type_specifier, 1), SHIFT(2562), [4514] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2238), [4516] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2561), [4518] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2624), [4520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4415), [4522] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameter_declaration, 1), [4524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3121), [4526] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__type_specifier, 1), SHIFT(985), [4529] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1161), [4531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1160), [4533] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1160), [4535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1151), [4537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1257), [4539] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1244), [4541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1260), [4543] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1202), [4545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1233), [4547] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1215), [4549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1215), [4551] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1214), [4553] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3679), [4555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2637), [4557] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1181), [4559] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declarator, 3, .dynamic_precedence = 1, .production_id = 15), [4561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3223), [4563] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3223), [4565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5304), [4567] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declarator, 3, .dynamic_precedence = 1, .production_id = 15), [4569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2547), [4571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2460), [4573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3221), [4575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5094), [4577] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declarator, 2, .dynamic_precedence = 1, .production_id = 15), [4579] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declarator, 2, .dynamic_precedence = 1, .production_id = 15), [4581] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3673), [4583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(950), [4585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(497), [4587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2634), [4589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(999), [4591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2690), [4593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2813), [4595] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2813), [4597] = {.entry = {.count = 1, .reusable = false}}, SHIFT(951), [4599] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2416), [4601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4042), [4603] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3706), [4605] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3448), [4607] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3452), [4609] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3462), [4611] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3070), [4613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3076), [4615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(843), [4617] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1165), [4619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1167), [4621] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1167), [4623] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1169), [4625] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1170), [4627] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1182), [4629] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1184), [4631] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1187), [4633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1189), [4635] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1191), [4637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1191), [4639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1192), [4641] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1192), [4643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1177), [4645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3079), [4647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2124), [4649] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1690), [4651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4019), [4653] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1627), [4655] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1754), [4657] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3705), [4659] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3450), [4661] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3449), [4663] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3442), [4665] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5309), [4667] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2958), [4669] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1930), [4671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4048), [4673] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1680), [4675] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1992), [4677] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3691), [4679] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3388), [4681] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3389), [4683] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3390), [4685] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5383), [4687] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3037), [4689] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_ms_call_modifier, 1), [4691] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ms_call_modifier, 1), [4693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3701), [4695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1089), [4697] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comma_expression, 3, .production_id = 52), [4699] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3715), [4701] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3062), [4703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1287), [4705] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1275), [4707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1276), [4709] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1276), [4711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1282), [4713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1283), [4715] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1288), [4717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1289), [4719] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1292), [4721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1294), [4723] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1296), [4725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1296), [4727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1298), [4729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3928), [4731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1173), [4733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1063), [4735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1849), [4737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5429), [4739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2404), [4741] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_init_declarator, 3, .production_id = 83), [4743] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_condition_declaration, 4, .production_id = 135), [4745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(969), [4747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1864), [4749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1951), [4751] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2677), [4753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4033), [4755] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3688), [4757] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3385), [4759] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3386), [4761] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3387), [4763] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2981), [4765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1365), [4767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2721), [4769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2975), [4771] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2975), [4773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1645), [4775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2913), [4777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1685), [4779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(974), [4781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1330), [4783] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3988), [4785] = {.entry = {.count = 1, .reusable = true}}, SHIFT(968), [4787] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2984), [4789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1622), [4791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4070), [4793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2849), [4795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5454), [4797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2476), [4799] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3719), [4801] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2930), [4803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1462), [4805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2097), [4807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2268), [4809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2737), [4811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3034), [4813] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3034), [4815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4353), [4817] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__declarator, 1), [4819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(967), [4821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2242), [4823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2075), [4825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(971), [4827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4361), [4829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2477), [4831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1636), [4833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4069), [4835] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_initializer_list_repeat1, 2), SHIFT(1089), [4838] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_initializer_list_repeat1, 2), [4840] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_initializer_pair, 3, .production_id = 113), [4842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(445), [4844] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional_parameter_declaration, 3, .production_id = 117), [4846] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), [4848] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), [4850] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), [4852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), [4854] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270), [4856] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4935), [4858] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2562), [4860] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3938), [4862] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5348), [4864] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trailing_return_type, 3), [4866] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trailing_return_type, 3), [4868] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1842), [4870] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_lambda_capture_specifier_repeat1, 2), [4872] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional_parameter_declaration, 4, .production_id = 139), [4874] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), [4876] = {.entry = {.count = 1, .reusable = true}}, SHIFT(253), [4878] = {.entry = {.count = 1, .reusable = true}}, SHIFT(330), [4880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232), [4882] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), [4884] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1125), [4886] = {.entry = {.count = 1, .reusable = true}}, SHIFT(273), [4888] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), [4890] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3958), [4892] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5449), [4894] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), [4896] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), [4898] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268), [4900] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3914), [4902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5174), [4904] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_template_argument_list_repeat1, 2, .dynamic_precedence = 1), [4906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1110), [4908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(353), [4910] = {.entry = {.count = 1, .reusable = true}}, SHIFT(884), [4912] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1111), [4914] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), [4916] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3977), [4918] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5322), [4920] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), [4922] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abstract_reference_declarator, 1), [4924] = {.entry = {.count = 1, .reusable = true}}, SHIFT(329), [4926] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2950), [4928] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1569), [4930] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), [4932] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2), [4934] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1145), [4936] = {.entry = {.count = 1, .reusable = true}}, SHIFT(335), [4938] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277), [4940] = {.entry = {.count = 1, .reusable = true}}, SHIFT(452), [4942] = {.entry = {.count = 1, .reusable = true}}, SHIFT(432), [4944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5343), [4946] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3936), [4948] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5394), [4950] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enumerator, 3, .production_id = 102), [4952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(339), [4954] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360), [4956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), [4958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(282), [4960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294), [4962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), [4964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), [4966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), [4968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4939), [4970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(457), [4972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4000), [4974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5078), [4976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), [4978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), [4980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(245), [4982] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1093), [4984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(472), [4986] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), [4988] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3994), [4990] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5231), [4992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(348), [4994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1102), [4996] = {.entry = {.count = 1, .reusable = true}}, SHIFT(310), [4998] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2171), [5000] = {.entry = {.count = 1, .reusable = true}}, SHIFT(929), [5002] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trailing_return_type, 2), [5004] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trailing_return_type, 2), [5006] = {.entry = {.count = 1, .reusable = true}}, SHIFT(343), [5008] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), [5010] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1419), [5012] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1239), [5014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1237), [5016] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1237), [5018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1223), [5020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1266), [5022] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1150), [5024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1156), [5026] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1159), [5028] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1163), [5030] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1166), [5032] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1166), [5034] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1175), [5036] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), [5038] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1154), [5040] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), [5042] = {.entry = {.count = 1, .reusable = true}}, SHIFT(461), [5044] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1590), [5046] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2744), [5048] = {.entry = {.count = 1, .reusable = true}}, SHIFT(468), [5050] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), [5052] = {.entry = {.count = 1, .reusable = true}}, SHIFT(469), [5054] = {.entry = {.count = 1, .reusable = true}}, SHIFT(710), [5056] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), [5058] = {.entry = {.count = 1, .reusable = true}}, SHIFT(725), [5060] = {.entry = {.count = 1, .reusable = true}}, SHIFT(366), [5062] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1437), [5064] = {.entry = {.count = 1, .reusable = true}}, SHIFT(340), [5066] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4006), [5068] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_declarator_repeat2, 2), [5070] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_declarator_repeat2, 2), SHIFT_REPEAT(3223), [5073] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_declarator_repeat2, 2), SHIFT_REPEAT(3223), [5076] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_function_declarator_repeat2, 2), [5078] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_declarator_repeat2, 2), SHIFT_REPEAT(2547), [5081] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_declarator_repeat2, 2), SHIFT_REPEAT(2547), [5084] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_declarator_repeat2, 2), SHIFT_REPEAT(2460), [5087] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_declarator_repeat2, 2), SHIFT_REPEAT(3250), [5090] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_declarator_repeat2, 2), SHIFT_REPEAT(3221), [5093] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_declarator_repeat2, 2), SHIFT_REPEAT(5094), [5096] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1517), [5098] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2455), [5100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(361), [5102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1024), [5104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1494), [5106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1235), [5108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1082), [5110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1606), [5112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(308), [5114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1203), [5116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(307), [5118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(499), [5120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1017), [5122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1044), [5124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2036), [5126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1506), [5128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1212), [5130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(510), [5132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1799), [5134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(511), [5136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3133), [5138] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bitfield_clause, 2), [5140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2207), [5142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2292), [5144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1029), [5146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1603), [5148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(447), [5150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1488), [5152] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_field_declarator, 3, .dynamic_precedence = 1, .production_id = 15), [5154] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_field_declarator, 3, .dynamic_precedence = 1, .production_id = 15), [5156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), [5158] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declarator, 4, .dynamic_precedence = 1, .production_id = 15), [5160] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declarator, 4, .dynamic_precedence = 1, .production_id = 15), [5162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3084), [5164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3168), [5166] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3168), [5168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275), [5170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3236), [5172] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), [5174] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1609), [5176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2201), [5178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1267), [5180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(704), [5182] = {.entry = {.count = 1, .reusable = true}}, SHIFT(905), [5184] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), [5186] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2136), [5188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5451), [5190] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2146), [5192] = {.entry = {.count = 1, .reusable = true}}, SHIFT(908), [5194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(911), [5196] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4713), [5198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2417), [5200] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1065), [5202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4828), [5204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4841), [5206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1059), [5208] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2518), [5210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1050), [5212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1014), [5214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1049), [5216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1168), [5218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1583), [5220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1045), [5222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1979), [5224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1553), [5226] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1211), [5228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1390), [5230] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1910), [5232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), [5234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1401), [5236] = {.entry = {.count = 1, .reusable = true}}, SHIFT(791), [5238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1055), [5240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4397), [5242] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1060), [5244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), [5246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1723), [5248] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1054), [5250] = {.entry = {.count = 1, .reusable = true}}, SHIFT(443), [5252] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2593), [5254] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1061), [5256] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3340), [5258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(444), [5260] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1076), [5262] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_field_declarator, 2, .dynamic_precedence = 1, .production_id = 15), [5264] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_field_declarator, 2, .dynamic_precedence = 1, .production_id = 15), [5266] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1443), [5268] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1176), [5270] = {.entry = {.count = 1, .reusable = true}}, SHIFT(679), [5272] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1031), [5274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(758), [5276] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), [5278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1022), [5280] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(2136), [5283] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(5454), [5286] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(5451), [5289] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(1645), [5292] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_specifiers_repeat1, 2), SHIFT_REPEAT(2146), [5295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2461), [5297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_function_declarator, 1, .production_id = 23), [5299] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abstract_function_declarator, 1, .production_id = 23), [5301] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_explicit_function_specifier, 4), [5303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_explicit_function_specifier, 4), [5305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3144), [5307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3200), [5309] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3200), [5311] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_declarator_repeat2, 2), SHIFT_REPEAT(1645), [5314] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_declarator_repeat2, 2), SHIFT_REPEAT(1645), [5317] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_declarator_repeat2, 2), SHIFT_REPEAT(2476), [5320] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_function_declarator, 3, .production_id = 15), [5322] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abstract_function_declarator, 3, .production_id = 15), [5324] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_declarator_repeat2, 2), SHIFT_REPEAT(2477), [5327] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_function_declarator, 2, .production_id = 15), [5329] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abstract_function_declarator, 2, .production_id = 15), [5331] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_function_declarator, 2, .production_id = 23), [5333] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abstract_function_declarator, 2, .production_id = 23), [5335] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_abstract_function_declarator_repeat1, 2), [5337] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_abstract_function_declarator_repeat1, 2), SHIFT_REPEAT(3223), [5340] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_abstract_function_declarator_repeat1, 2), SHIFT_REPEAT(3223), [5343] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_abstract_function_declarator_repeat1, 2), [5345] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_abstract_function_declarator_repeat1, 2), SHIFT_REPEAT(1645), [5348] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_abstract_function_declarator_repeat1, 2), SHIFT_REPEAT(1645), [5351] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_abstract_function_declarator_repeat1, 2), SHIFT_REPEAT(3221), [5354] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_abstract_function_declarator_repeat1, 2), SHIFT_REPEAT(5094), [5357] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4099), [5359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3728), [5361] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3156), [5363] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_explicit_function_specifier, 1), [5365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1285), [5367] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_explicit_function_specifier, 1), [5369] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_abstract_function_declarator_repeat1, 2), SHIFT_REPEAT(2547), [5372] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_abstract_function_declarator_repeat1, 2), SHIFT_REPEAT(2547), [5375] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_declarator_repeat1, 2), [5377] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_function_declarator_repeat1, 2), [5379] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_declarator_repeat1, 2), SHIFT_REPEAT(5454), [5382] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_definition_repeat1, 2), SHIFT_REPEAT(1645), [5385] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_definition_repeat1, 2), SHIFT_REPEAT(1645), [5388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3663), [5390] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_pointer_declarator_repeat1, 2), [5392] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_pointer_declarator_repeat1, 2), [5394] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_pointer_declarator_repeat1, 2), SHIFT_REPEAT(3277), [5397] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_pointer_declarator_repeat1, 2), SHIFT_REPEAT(3276), [5400] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_abstract_function_declarator_repeat1, 2), SHIFT_REPEAT(3336), [5403] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_abstract_function_declarator_repeat1, 2), SHIFT_REPEAT(3336), [5406] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_abstract_function_declarator_repeat1, 2), SHIFT_REPEAT(3162), [5409] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_abstract_function_declarator_repeat1, 2), SHIFT_REPEAT(3162), [5412] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_abstract_function_declarator_repeat1, 2), SHIFT_REPEAT(3335), [5415] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_abstract_function_declarator_repeat1, 2), SHIFT_REPEAT(5285), [5418] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_declarator_repeat2, 2), SHIFT_REPEAT(2417), [5421] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_list, 3), [5423] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameter_list, 3), [5425] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_list, 4), [5427] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameter_list, 4), [5429] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_declarator_repeat2, 2), SHIFT_REPEAT(2461), [5432] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_definition_repeat1, 2), SHIFT_REPEAT(2547), [5435] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_definition_repeat1, 2), SHIFT_REPEAT(2547), [5438] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_list, 2), [5440] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameter_list, 2), [5442] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_declarator_repeat1, 2), SHIFT_REPEAT(5304), [5445] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_throw_specifier, 4), [5447] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_throw_specifier, 4), [5449] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_descriptor, 2, .production_id = 14), [5451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(961), [5453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3162), [5455] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_noexcept, 1), [5457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1143), [5459] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_noexcept, 1), [5461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3222), [5463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3574), [5465] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3574), [5467] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ref_qualifier, 1), [5469] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_ref_qualifier, 1), [5471] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_noexcept, 3), [5473] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_noexcept, 3), [5475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1479), [5477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1062), [5479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1198), [5481] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_descriptor, 3, .production_id = 14), [5483] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_array_declarator, 3), [5485] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abstract_array_declarator, 3), [5487] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__abstract_declarator, 1), [5489] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__abstract_declarator, 1), [5491] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_descriptor, 1, .production_id = 2), [5493] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_function_declarator, 3, .production_id = 23), [5495] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abstract_function_declarator, 3, .production_id = 23), [5497] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_throw_specifier, 5), [5499] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_throw_specifier, 5), [5501] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_noexcept, 4), [5503] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_noexcept, 4), [5505] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_function_declarator, 4, .production_id = 15), [5507] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abstract_function_declarator, 4, .production_id = 15), [5509] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_array_declarator, 3, .production_id = 17), [5511] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abstract_array_declarator, 3, .production_id = 17), [5513] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_array_declarator, 4, .production_id = 17), [5515] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abstract_array_declarator, 4, .production_id = 17), [5517] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_throw_specifier, 3), [5519] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_throw_specifier, 3), [5521] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_array_declarator, 2), [5523] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abstract_array_declarator, 2), [5525] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_array_declarator, 4, .production_id = 87), [5527] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abstract_array_declarator, 4, .production_id = 87), [5529] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_array_declarator, 4, .production_id = 126), [5531] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abstract_array_declarator, 4, .production_id = 126), [5533] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_array_declarator, 3, .production_id = 92), [5535] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abstract_array_declarator, 3, .production_id = 92), [5537] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_parenthesized_declarator, 3), [5539] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abstract_parenthesized_declarator, 3), [5541] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_virtual_specifier, 1), [5543] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_virtual_specifier, 1), [5545] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2354), [5547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1492), [5549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1034), [5551] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_descriptor, 2, .production_id = 2), [5553] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1457), [5555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1043), [5557] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_array_declarator, 5, .production_id = 124), [5559] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abstract_array_declarator, 5, .production_id = 124), [5561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3261), [5563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3601), [5565] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3601), [5567] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__preproc_expression, 1), [5569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3300), [5571] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__preproc_expression, 1), [5573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3336), [5575] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3336), [5577] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2436), [5579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3335), [5581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5285), [5583] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_definition_repeat1, 2), SHIFT_REPEAT(3162), [5586] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2419), [5588] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_pointer_declarator, 3, .dynamic_precedence = 1, .production_id = 30), [5590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1369), [5592] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abstract_pointer_declarator, 3, .dynamic_precedence = 1, .production_id = 30), [5594] = {.entry = {.count = 1, .reusable = false}}, SHIFT(963), [5596] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2400), [5598] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trailing_return_type, 4), [5600] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trailing_return_type, 4), [5602] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_ms_unaligned_ptr_modifier, 1), [5604] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ms_unaligned_ptr_modifier, 1), [5606] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_ms_pointer_modifier, 1), [5608] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ms_pointer_modifier, 1), [5610] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_parameter_list, 2), REDUCE(sym_argument_list, 2), [5613] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_pointer_declarator, 2, .dynamic_precedence = 1, .production_id = 5), [5615] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abstract_pointer_declarator, 2, .dynamic_precedence = 1, .production_id = 5), [5617] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_reference_declarator, 2), [5619] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_abstract_reference_declarator, 2), [5621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(816), [5623] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3263), [5625] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3465), [5627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3378), [5629] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4712), [5631] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3361), [5633] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3361), [5635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3303), [5637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5035), [5639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(814), [5641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3333), [5643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3309), [5645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3375), [5647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3397), [5649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3355), [5651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3311), [5653] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3311), [5655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3354), [5657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3353), [5659] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3352), [5661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3351), [5663] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3350), [5665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3349), [5667] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3348), [5669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3348), [5671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3347), [5673] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3289), [5675] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), [5677] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3306), [5679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3675), [5681] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3675), [5683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3313), [5685] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3328), [5687] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3304), [5689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3363), [5691] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4719), [5693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3365), [5695] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3365), [5697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3440), [5699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4752), [5701] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_argument_list, 3), [5703] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_argument_list, 3), [5705] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_binary_expression, 3, .production_id = 40), [5707] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_binary_expression, 3, .production_id = 40), [5709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3453), [5711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3412), [5713] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_defined, 4), [5715] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_defined, 4), [5717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3400), [5719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3380), [5721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2407), [5723] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_parenthesized_expression, 3), [5725] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_parenthesized_expression, 3), [5727] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_argument_list, 2), [5729] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_argument_list, 2), [5731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1094), [5733] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_argument_list, 4), [5735] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_argument_list, 4), [5737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3381), [5739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3429), [5741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3430), [5743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3316), [5745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3317), [5747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3318), [5749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3319), [5751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3322), [5753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3324), [5755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3325), [5757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3327), [5759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3314), [5761] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_unary_expression, 2, .production_id = 4), [5763] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_unary_expression, 2, .production_id = 4), [5765] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_defined, 2), [5767] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_defined, 2), [5769] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_call_expression, 2, .production_id = 7), [5771] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_call_expression, 2, .production_id = 7), [5773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3438), [5775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3439), [5777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3356), [5779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3444), [5781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3434), [5783] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3456), [5785] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3436), [5787] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3458), [5789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3459), [5791] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_definition_repeat1, 2), SHIFT_REPEAT(3162), [5794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3461), [5796] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3463), [5798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3408), [5800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3377), [5802] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3413), [5804] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_preproc_argument_list_repeat1, 2), [5806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3454), [5808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3441), [5810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), [5812] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3370), [5814] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3369), [5816] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3367), [5818] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3366), [5820] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3364), [5822] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3362), [5824] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3360), [5826] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3359), [5828] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3346), [5830] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3345), [5832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), [5834] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3294), [5836] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2528), [5838] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1721), [5840] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3643), [5842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), [5844] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1974), [5846] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2102), [5848] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), [5850] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), [5852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), [5854] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), [5856] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3293), [5858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4041), [5860] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3464), [5862] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), [5864] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), [5866] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1663), [5868] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2333), [5870] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4049), [5872] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), [5874] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3331), [5876] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4271), [5878] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3676), [5880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4237), [5882] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3686), [5884] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3489), [5886] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1535), [5888] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), [5890] = {.entry = {.count = 1, .reusable = false}}, SHIFT(954), [5892] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1004), [5894] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1450), [5896] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), [5898] = {.entry = {.count = 1, .reusable = true}}, SHIFT(982), [5900] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1538), [5902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), [5904] = {.entry = {.count = 1, .reusable = true}}, SHIFT(992), [5906] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1329), [5908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5415), [5910] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3524), [5912] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4550), [5914] = {.entry = {.count = 1, .reusable = false}}, SHIFT(844), [5916] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2748), [5918] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4443), [5920] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2755), [5922] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4455), [5924] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3912), [5926] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4389), [5928] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_sized_type_specifier_repeat1, 2), SHIFT_REPEAT(3575), [5931] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3961), [5933] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3575), [5935] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3955), [5937] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__type_specifier, 1), SHIFT(991), [5940] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), [5942] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1713), [5944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3626), [5946] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4488), [5948] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1952), [5950] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2907), [5952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), [5954] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2359), [5956] = {.entry = {.count = 1, .reusable = false}}, SHIFT(964), [5958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1047), [5960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1069), [5962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(440), [5964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), [5966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(470), [5968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), [5970] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1709), [5972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5114), [5974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3630), [5976] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4418), [5978] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1925), [5980] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1659), [5982] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3631), [5984] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4481), [5986] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1041), [5988] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1652), [5990] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3634), [5992] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4603), [5994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1534), [5996] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2840), [5998] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4386), [6000] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), [6002] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1016), [6004] = {.entry = {.count = 1, .reusable = true}}, SHIFT(815), [6006] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1068), [6008] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2656), [6010] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4459), [6012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(422), [6014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), [6016] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1335), [6018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3646), [6020] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4420), [6022] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), [6024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), [6026] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1425), [6028] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1053), [6030] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), [6032] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1013), [6034] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1357), [6036] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3655), [6038] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4377), [6040] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1472), [6042] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1940), [6044] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5184), [6046] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3659), [6048] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4571), [6050] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1921), [6052] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1666), [6054] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3660), [6056] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4435), [6058] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4007), [6060] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4458), [6062] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1969), [6064] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2394), [6066] = {.entry = {.count = 1, .reusable = true}}, SHIFT(917), [6068] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2662), [6070] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3301), [6072] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3684), [6074] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4566), [6076] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1071), [6078] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1931), [6080] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4164), [6082] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3683), [6084] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4414), [6086] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1688), [6088] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3785), [6090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4211), [6092] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3796), [6094] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4333), [6096] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3795), [6098] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3791), [6100] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3838), [6102] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3797), [6104] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3830), [6106] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3808), [6108] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3799), [6110] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3788), [6112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4365), [6114] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3827), [6116] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3792), [6118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4256), [6120] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3834), [6122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_declaration_repeat1, 2, .production_id = 5), [6124] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3818), [6126] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3809), [6128] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3787), [6130] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3783), [6132] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3793), [6134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1388), [6136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), [6138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4984), [6140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3885), [6142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(782), [6144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5028), [6146] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pointer_field_declarator, 3, .dynamic_precedence = 1, .production_id = 30), [6148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(691), [6150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4901), [6152] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pointer_declarator, 3, .dynamic_precedence = 1, .production_id = 30), [6154] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_reference_field_declarator, 2, .dynamic_precedence = 1), [6156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1529), [6158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), [6160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4966), [6162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(396), [6164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4947), [6166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1512), [6168] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pointer_field_declarator, 2, .dynamic_precedence = 1, .production_id = 5), [6170] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_field_declaration_repeat1, 2, .production_id = 5), [6172] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3671), [6174] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pointer_declarator, 4, .dynamic_precedence = 1, .production_id = 63), [6176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(802), [6178] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pointer_declarator, 5, .dynamic_precedence = 1, .production_id = 123), [6180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363), [6182] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pointer_field_declarator, 4, .dynamic_precedence = 1, .production_id = 63), [6184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pointer_field_declarator, 5, .dynamic_precedence = 1, .production_id = 123), [6186] = {.entry = {.count = 1, .reusable = true}}, SHIFT(731), [6188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3823), [6190] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_reference_declarator, 2, .dynamic_precedence = 1), [6192] = {.entry = {.count = 1, .reusable = true}}, SHIFT(730), [6194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4792), [6196] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1490), [6198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), [6200] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5051), [6202] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attributed_declarator, 2), [6204] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attributed_declarator, 2), [6206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1386), [6208] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3948), [6210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1551), [6212] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3904), [6214] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pointer_declarator, 2, .dynamic_precedence = 1, .production_id = 5), [6216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(750), [6218] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_attributed_declarator_repeat1, 2), SHIFT_REPEAT(4748), [6221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__field_declarator, 1, .production_id = 73), [6223] = {.entry = {.count = 1, .reusable = true}}, SHIFT(820), [6225] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__field_declarator, 1, .production_id = 73), [6227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_declarator, 4, .production_id = 87), [6229] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_declarator, 4, .production_id = 87), [6231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_declarator, 4, .production_id = 17), [6233] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_declarator, 4, .production_id = 17), [6235] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_declarator, 5, .production_id = 124), [6237] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_declarator, 5, .production_id = 124), [6239] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_attributed_declarator_repeat1, 2), SHIFT_REPEAT(5040), [6242] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_declarator, 3, .production_id = 17), [6244] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_declarator, 3, .production_id = 17), [6246] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_structured_binding_declarator, 3, .dynamic_precedence = -1), [6248] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_structured_binding_declarator, 3, .dynamic_precedence = -1), [6250] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_structured_binding_declarator, 4, .dynamic_precedence = -1), [6252] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_structured_binding_declarator, 4, .dynamic_precedence = -1), [6254] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attributed_field_declarator, 2), [6256] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attributed_field_declarator, 2), [6258] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_declarator, 3, .dynamic_precedence = -10), [6260] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_declarator, 3, .dynamic_precedence = -10), [6262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3723), [6264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(551), [6266] = {.entry = {.count = 1, .reusable = false}}, SHIFT(960), [6268] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4602), [6270] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4184), [6272] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5377), [6274] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_field_declarator, 4, .production_id = 87), [6276] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_field_declarator, 4, .production_id = 87), [6278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(890), [6280] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_field_declarator, 5, .production_id = 124), [6282] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_field_declarator, 5, .production_id = 124), [6284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5402), [6286] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_field_declarator, 4, .production_id = 17), [6288] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_field_declarator, 4, .production_id = 17), [6290] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_field_declarator, 3, .production_id = 17), [6292] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_field_declarator, 3, .production_id = 17), [6294] = {.entry = {.count = 1, .reusable = true}}, SHIFT(879), [6296] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pointer_type_declarator, 5, .dynamic_precedence = 1, .production_id = 123), [6298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pointer_type_declarator, 3, .dynamic_precedence = 1, .production_id = 30), [6300] = {.entry = {.count = 1, .reusable = true}}, SHIFT(258), [6302] = {.entry = {.count = 1, .reusable = true}}, SHIFT(582), [6304] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5127), [6306] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pointer_type_declarator, 2, .dynamic_precedence = 1, .production_id = 5), [6308] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4598), [6310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5361), [6312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5061), [6314] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4053), [6316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3877), [6318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), [6320] = {.entry = {.count = 1, .reusable = true}}, SHIFT(424), [6322] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4380), [6324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5108), [6326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5274), [6328] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_declaration, 2, .production_id = 48), [6330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1186), [6332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5446), [6334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5166), [6336] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__field_declarator, 1), [6338] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__field_declarator, 1), [6340] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4119), [6342] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4446), [6344] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1245), [6346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1476), [6348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1481), [6350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1525), [6352] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4450), [6354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5143), [6356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1395), [6358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1453), [6360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1577), [6362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(426), [6364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(522), [6366] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pointer_type_declarator, 4, .dynamic_precedence = 1, .production_id = 63), [6368] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_field_declarator, 3, .dynamic_precedence = -10), [6370] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_field_declarator, 3, .dynamic_precedence = -10), [6372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(630), [6374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5177), [6376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1613), [6378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1078), [6380] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attributed_type_declarator, 2), [6382] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attributed_type_declarator, 2), [6384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3864), [6386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1616), [6388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1072), [6390] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4108), [6392] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4054), [6394] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_capture_specifier, 3), [6396] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda_capture_specifier, 3), [6398] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_subscript_designator, 3), [6400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3900), [6402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3872), [6404] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4127), [6406] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4027), [6408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3673), [6410] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4131), [6412] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4024), [6414] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4128), [6416] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4008), [6418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3874), [6420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_definition_repeat2, 2, .production_id = 5), [6422] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4121), [6424] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4050), [6426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1414), [6428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1079), [6430] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4118), [6432] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4055), [6434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3847), [6436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3875), [6438] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4111), [6440] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4021), [6442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3857), [6444] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4300), [6446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(757), [6448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(762), [6450] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__scope_resolution, 1), [6452] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__scope_resolution, 1), [6454] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1179), [6456] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2728), [6458] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1234), [6460] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2705), [6462] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2211), [6464] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1965), [6466] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4763), [6468] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3290), [6470] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4962), [6472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(728), [6474] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1273), [6476] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2697), [6478] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1662), [6480] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5013), [6482] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4163), [6484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3837), [6486] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3288), [6488] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4699), [6490] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4322), [6492] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4087), [6494] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4209), [6496] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1254), [6498] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2698), [6500] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3640), [6502] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4949), [6504] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1264), [6506] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2722), [6508] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1265), [6510] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2738), [6512] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2519), [6514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(777), [6516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(801), [6518] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2335), [6520] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4314), [6522] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4276), [6524] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1712), [6526] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4847), [6528] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4274), [6530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(678), [6532] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1247), [6534] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2695), [6536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(986), [6538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(942), [6540] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4312), [6542] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4272), [6544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(401), [6546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3898), [6548] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4218), [6550] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362), [6552] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4172), [6554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1368), [6556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(944), [6558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_capture_specifier, 6), [6560] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda_capture_specifier, 6), [6562] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_type_declarator, 4, .production_id = 17), [6564] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_type_declarator, 4, .production_id = 17), [6566] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_type_declarator, 4, .production_id = 87), [6568] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_type_declarator, 4, .production_id = 87), [6570] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_descriptor, 3, .production_id = 61), [6572] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_descriptor, 2, .production_id = 29), [6574] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_capture_specifier, 5), [6576] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda_capture_specifier, 5), [6578] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_descriptor, 3, .production_id = 46), [6580] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_operator_cast, 3, .production_id = 44), [6582] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_initializer_pair_repeat1, 2), SHIFT_REPEAT(1221), [6585] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_initializer_pair_repeat1, 2), [6587] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_initializer_pair_repeat1, 2), SHIFT_REPEAT(5144), [6590] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2014), [6592] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4846), [6594] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_type_declarator, 3, .production_id = 17), [6596] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_type_declarator, 3, .production_id = 17), [6598] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2203), [6600] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4894), [6602] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_type_declarator, 2, .production_id = 15), [6604] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_type_declarator, 2, .production_id = 15), [6606] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1838), [6608] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5047), [6610] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_type_declarator, 3, .dynamic_precedence = -10), [6612] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_type_declarator, 3, .dynamic_precedence = -10), [6614] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_type_declarator, 5, .production_id = 124), [6616] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_type_declarator, 5, .production_id = 124), [6618] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_capture_specifier, 4), [6620] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lambda_capture_specifier, 4), [6622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1221), [6624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1067), [6626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5144), [6628] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_declarator, 1), [6630] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__type_declarator, 1), [6632] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_descriptor, 4, .production_id = 97), [6634] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_declarator, 1, .production_id = 1), [6636] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__type_declarator, 1, .production_id = 1), [6638] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_field_declaration_repeat1, 2, .production_id = 85), SHIFT_REPEAT(3489), [6641] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_field_declaration_repeat1, 2, .production_id = 85), [6643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4114), [6645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1496), [6647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2348), [6649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1556), [6651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2337), [6653] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat1, 2), SHIFT_REPEAT(4979), [6656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4979), [6658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4395), [6660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(397), [6662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2342), [6664] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_qualified_field_identifier, 2, .production_id = 89), [6666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1417), [6668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2344), [6670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(797), [6672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2340), [6674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(796), [6676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2334), [6678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(752), [6680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2338), [6682] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__scope_resolution, 2, .production_id = 11), [6684] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__scope_resolution, 2, .production_id = 11), [6686] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 1, .production_id = 6), [6688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5223), [6690] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__scope_resolution, 2, .production_id = 21), [6692] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__scope_resolution, 2, .production_id = 21), [6694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4372), [6696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3770), [6698] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_base_class_clause, 3), [6700] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2138), [6702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4193), [6704] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4193), [6706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4198), [6708] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_field_initializer_list_repeat1, 2), SHIFT_REPEAT(3866), [6711] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_field_initializer_list_repeat1, 2), [6713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(775), [6715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1183), [6717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(656), [6719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1201), [6721] = {.entry = {.count = 1, .reusable = false}}, SHIFT(671), [6723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4521), [6725] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5260), [6727] = {.entry = {.count = 1, .reusable = false}}, SHIFT(778), [6729] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5381), [6731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1524), [6733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4930), [6735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3924), [6737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(771), [6739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1305), [6741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(664), [6743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4259), [6745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4417), [6747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5205), [6749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2274), [6751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4856), [6753] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5077), [6755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4215), [6757] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4215), [6759] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2204), [6761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4307), [6763] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4307), [6765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5005), [6767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4043), [6769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1542), [6771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1196), [6773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2269), [6775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1511), [6777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1256), [6779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1955), [6781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(724), [6783] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5445), [6785] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3963), [6787] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1561), [6789] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5436), [6791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1564), [6793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1199), [6795] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5284), [6797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4060), [6799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1640), [6801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(369), [6803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3690), [6805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(688), [6807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1248), [6809] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2403), [6811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4255), [6813] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4255), [6815] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2349), [6817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3248), [6819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(770), [6821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1297), [6823] = {.entry = {.count = 1, .reusable = false}}, SHIFT(776), [6825] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5191), [6827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5183), [6829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2489), [6831] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2412), [6833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5344), [6835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2580), [6837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4044), [6839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4382), [6841] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_base_class_clause, 2), [6843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(742), [6845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1318), [6847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5340), [6849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2077), [6851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(381), [6853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1340), [6855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1433), [6857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2123), [6859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(685), [6861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2074), [6863] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1478), [6865] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5292), [6867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1461), [6869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(734), [6871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4599), [6873] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_initializer, 2), [6875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1621), [6877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1232), [6879] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3866), [6881] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_initializer_list, 3), [6883] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_literal_repeat1, 2), [6885] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_literal_repeat1, 2), SHIFT_REPEAT(4307), [6888] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_literal_repeat1, 2), SHIFT_REPEAT(4307), [6891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1361), [6893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4577), [6895] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_initializer, 2, .production_id = 73), [6897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1429), [6899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1224), [6901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1536), [6903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(809), [6905] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1693), [6907] = {.entry = {.count = 1, .reusable = true}}, SHIFT(418), [6909] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1207), [6911] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4216), [6913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4534), [6915] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variadic_declarator, 1), [6917] = {.entry = {.count = 1, .reusable = true}}, SHIFT(786), [6919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5235), [6921] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2010), [6923] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_initializer_list, 2), [6925] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2343), [6927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4226), [6929] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4226), [6931] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1410), [6933] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5230), [6935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1408), [6937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1286), [6939] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3839), [6941] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1702), [6943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4315), [6945] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4315), [6947] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4058), [6949] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1646), [6951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4370), [6953] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4370), [6955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4350), [6957] = {.entry = {.count = 1, .reusable = true}}, SHIFT(410), [6959] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1178), [6961] = {.entry = {.count = 1, .reusable = false}}, SHIFT(406), [6963] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5209), [6965] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3, .production_id = 67), [6967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5229), [6969] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1787), [6971] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1641), [6973] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1460), [6975] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_base_class_clause, 4), [6977] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_structured_binding_declarator_repeat1, 2), SHIFT_REPEAT(5212), [6980] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_structured_binding_declarator_repeat1, 2), [6982] = {.entry = {.count = 1, .reusable = true}}, SHIFT(429), [6984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4895), [6986] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2190), [6988] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1576), [6990] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4740), [6992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2327), [6994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4487), [6996] = {.entry = {.count = 1, .reusable = true}}, SHIFT(407), [6998] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1687), [7000] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1927), [7002] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2345), [7004] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3344), [7006] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4830), [7008] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), [7010] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4925), [7012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4985), [7014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3235), [7016] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4991), [7018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2435), [7020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(559), [7022] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4843), [7024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4842), [7026] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2385), [7028] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3341), [7030] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1465), [7032] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1464), [7034] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1459), [7036] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_attribute_declaration_repeat1, 2), SHIFT_REPEAT(4895), [7039] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_attribute_declaration_repeat1, 2), [7041] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_designator, 2, .production_id = 78), [7043] = {.entry = {.count = 1, .reusable = true}}, SHIFT(970), [7045] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), [7047] = {.entry = {.count = 1, .reusable = true}}, SHIFT(973), [7049] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1363), [7051] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1371), [7053] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3205), [7055] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1364), [7057] = {.entry = {.count = 1, .reusable = true}}, SHIFT(460), [7059] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1367), [7061] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4614), [7063] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4726), [7065] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variadic_type_parameter_declaration, 2), [7067] = {.entry = {.count = 1, .reusable = true}}, SHIFT(463), [7069] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enumerator, 1, .production_id = 6), [7071] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1208), [7073] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4804), [7075] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1360), [7077] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1698), [7079] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4723), [7081] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2083), [7083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4392), [7085] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2450), [7087] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variadic_parameter_declaration, 2, .production_id = 48), [7089] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1683), [7091] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2332), [7093] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5021), [7095] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_base_class_clause_repeat1, 3), [7097] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_base_class_clause, 5), [7099] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4977), [7101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4504), [7103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1795), [7105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1574), [7107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4351), [7109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4728), [7111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(547), [7113] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_declaration_repeat1, 2, .production_id = 85), SHIFT_REPEAT(2907), [7116] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_declaration_repeat1, 2, .production_id = 85), [7118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3209), [7120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2378), [7122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1362), [7124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4711), [7126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4478), [7128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2022), [7130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2234), [7132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4630), [7134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(531), [7136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(530), [7138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(717), [7140] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_lambda_capture_specifier_repeat1, 2), SHIFT_REPEAT(1287), [7143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2129), [7145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(595), [7147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4731), [7149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3338), [7151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3329), [7153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4734), [7155] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4741), [7157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4428), [7159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2471), [7161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2122), [7163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3428), [7165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4697), [7167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1615), [7169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1614), [7171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1336), [7173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3072), [7175] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_definition_repeat2, 2, .production_id = 85), SHIFT_REPEAT(3723), [7178] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_definition_repeat2, 2, .production_id = 85), [7180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), [7182] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1929), [7184] = {.entry = {.count = 1, .reusable = true}}, SHIFT(478), [7186] = {.entry = {.count = 1, .reusable = true}}, SHIFT(881), [7188] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2), SHIFT_REPEAT(1063), [7191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2946), [7193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2037), [7195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4507), [7197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1928), [7199] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4694), [7201] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236), [7203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4062), [7205] = {.entry = {.count = 1, .reusable = true}}, SHIFT(910), [7207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(439), [7209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4586), [7211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4004), [7213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2304), [7215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4676), [7217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5010), [7219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4658), [7221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(883), [7223] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_throw_specifier_repeat1, 2), SHIFT_REPEAT(2345), [7226] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_throw_specifier_repeat1, 2), [7228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(966), [7230] = {.entry = {.count = 1, .reusable = true}}, SHIFT(257), [7232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4896), [7234] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_base_class_clause_repeat1, 2), [7236] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_base_class_clause_repeat1, 2), SHIFT_REPEAT(3770), [7239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2814), [7241] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2109), [7243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2108), [7245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2107), [7247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4378), [7249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2258), [7251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4089), [7253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1786), [7255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4552), [7257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(866), [7259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2055), [7261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3831), [7263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(853), [7265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3829), [7267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4453), [7269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2084), [7271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3002), [7273] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_init_declarator, 2, .production_id = 50), [7275] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_condition_declaration, 3, .production_id = 110), [7277] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_initializer_list_repeat1, 2), SHIFT_REPEAT(975), [7280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1887), [7282] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_template_argument_list_repeat1, 2, .dynamic_precedence = 3), [7284] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_argument_list_repeat1, 2), SHIFT_REPEAT(843), [7287] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_template_argument_list_repeat1, 2), [7289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(580), [7291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4394), [7293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5053), [7295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3339), [7297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(972), [7299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4799), [7301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1348), [7303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1347), [7305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1346), [7307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3700), [7309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3698), [7311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3693), [7313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3704), [7315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(560), [7317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(557), [7319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variadic_declarator, 2), [7321] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variadic_reference_declarator, 2), [7323] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_qualified_operator_cast_identifier, 2, .production_id = 24), [7325] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_enumerator_list_repeat1, 2), SHIFT_REPEAT(4733), [7328] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_enumerator_list_repeat1, 2), [7330] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_preproc_params_repeat1, 2), SHIFT_REPEAT(4843), [7333] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_preproc_params_repeat1, 2), [7335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1643), [7337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1637), [7339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1638), [7341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1533), [7343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1604), [7345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1639), [7347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1471), [7349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4887), [7351] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_preproc_argument_list_repeat1, 2), SHIFT_REPEAT(3375), [7354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5050), [7356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(267), [7358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1744), [7360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1475), [7362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5057), [7364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2300), [7366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2299), [7368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2298), [7370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2374), [7372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1477), [7374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1954), [7376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1455), [7378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3218), [7380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1456), [7382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4671), [7384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2271), [7386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(899), [7388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(526), [7390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4737), [7392] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5014), [7394] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_parameter_list_repeat1, 2), SHIFT_REPEAT(1371), [7397] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_parameter_list_repeat1, 2), [7399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1391), [7401] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_parameter_list_repeat1, 2), SHIFT_REPEAT(1360), [7404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_template_parameter_list_repeat1, 2), [7406] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_initializer, 3, .production_id = 73), [7408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4611), [7410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3915), [7412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2551), [7414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1585), [7416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4515), [7418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2250), [7420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(852), [7422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2341), [7424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3950), [7426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2093), [7428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1454), [7430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2090), [7432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2089), [7434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3965), [7436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3967), [7438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(965), [7440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3997), [7442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3968), [7444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4606), [7446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2605), [7448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(788), [7450] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_initializer, 3), [7452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(897), [7454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(894), [7456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(669), [7458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4912), [7460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(474), [7462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4579), [7464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2608), [7466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2247), [7468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4852), [7470] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1394), [7472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4832), [7474] = {.entry = {.count = 1, .reusable = false}}, SHIFT(740), [7476] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5253), [7478] = {.entry = {.count = 1, .reusable = false}}, SHIFT(739), [7480] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5368), [7482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4135), [7484] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1466), [7486] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5346), [7488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), [7490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(811), [7492] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5303), [7494] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_namespace_definition_name, 4), [7496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259), [7498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(817), [7500] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1571), [7502] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5458), [7504] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_params, 4), [7506] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4721), [7508] = {.entry = {.count = 1, .reusable = false}}, SHIFT(744), [7510] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5250), [7512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3357), [7514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5300), [7516] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_template_parameter_declaration, 3, .production_id = 43), [7518] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3435), [7520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5257), [7522] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional_type_parameter_declaration, 3, .production_id = 116), [7524] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variadic_type_parameter_declaration, 3, .production_id = 115), [7526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(813), [7528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1290), [7530] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_template_argument_list_repeat1, 2, .dynamic_precedence = 2), [7532] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5437), [7534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4805), [7536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5258), [7538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5256), [7540] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1522), [7542] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5419), [7544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1116), [7546] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 4, .production_id = 67), [7548] = {.entry = {.count = 1, .reusable = false}}, SHIFT(702), [7550] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5392), [7552] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_params, 3), [7554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4693), [7556] = {.entry = {.count = 1, .reusable = false}}, SHIFT(680), [7558] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5067), [7560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4948), [7562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4880), [7564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(812), [7566] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_qualified_field_identifier, 2, .production_id = 24), [7568] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1432), [7570] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5288), [7572] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_namespace_definition_name, 3), [7574] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 2, .production_id = 6), [7576] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4864), [7578] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5090), [7580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5086), [7582] = {.entry = {.count = 1, .reusable = false}}, SHIFT(387), [7584] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5305), [7586] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5133), [7588] = {.entry = {.count = 1, .reusable = false}}, SHIFT(695), [7590] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5131), [7592] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameter_pack_expansion, 2, .production_id = 18), [7594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5397), [7596] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5299), [7598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4663), [7600] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional_type_parameter_declaration, 4, .production_id = 138), [7602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4932), [7604] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5455), [7606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5097), [7608] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), [7610] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1397), [7612] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5168), [7614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5267), [7616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5272), [7618] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1470), [7620] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5158), [7622] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5219), [7624] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4892), [7626] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5225), [7628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4907), [7630] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_base_class_clause_repeat1, 4), [7632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5138), [7634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5136), [7636] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5262), [7638] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5208), [7640] = {.entry = {.count = 1, .reusable = false}}, SHIFT(383), [7642] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5111), [7644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4865), [7646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5425), [7648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5421), [7650] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_preproc_params, 2), [7652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5246), [7654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(707), [7656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(784), [7658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), [7660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3396), [7662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(787), [7664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5360), [7666] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_elif_in_field_declaration_list, 4, .production_id = 95), [7668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1398), [7670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1399), [7672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1400), [7674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1579), [7676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(759), [7678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1396), [7680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1389), [7682] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1404), [7684] = {.entry = {.count = 1, .reusable = true}}, SHIFT(711), [7686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290), [7688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(792), [7690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4230), [7692] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1899), [7694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1402), [7696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(793), [7698] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5210), [7700] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), [7702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2317), [7704] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4913), [7706] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_elif_in_field_declaration_list, 5, .production_id = 128), [7708] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4915), [7710] = {.entry = {.count = 1, .reusable = true}}, SHIFT(553), [7712] = {.entry = {.count = 1, .reusable = true}}, SHIFT(774), [7714] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), [7716] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4296), [7718] = {.entry = {.count = 1, .reusable = true}}, SHIFT(289), [7720] = {.entry = {.count = 1, .reusable = true}}, SHIFT(403), [7722] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1011), [7724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1919), [7726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), [7728] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5222), [7730] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4338), [7732] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4363), [7734] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5215), [7736] = {.entry = {.count = 1, .reusable = true}}, SHIFT(344), [7738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(674), [7740] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_elif, 5, .production_id = 128), [7742] = {.entry = {.count = 1, .reusable = true}}, SHIFT(721), [7744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4981), [7746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1735), [7748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1500), [7750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(726), [7752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1415), [7754] = {.entry = {.count = 1, .reusable = true}}, SHIFT(729), [7756] = {.entry = {.count = 1, .reusable = true}}, SHIFT(846), [7758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2541), [7760] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5187), [7762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1418), [7764] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4404), [7766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1547), [7768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1548), [7770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5372), [7772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1384), [7774] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4213), [7776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1422), [7778] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1483), [7780] = {.entry = {.count = 1, .reusable = true}}, SHIFT(681), [7782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), [7784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1486), [7786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(901), [7788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(918), [7790] = {.entry = {.count = 1, .reusable = true}}, SHIFT(687), [7792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1411), [7794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1607), [7796] = {.entry = {.count = 1, .reusable = true}}, SHIFT(683), [7798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(456), [7800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(684), [7802] = {.entry = {.count = 1, .reusable = true}}, SHIFT(364), [7804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1012), [7806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4772), [7808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5236), [7810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5220), [7812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2196), [7814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(287), [7816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2630), [7818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1263), [7820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1876), [7822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(715), [7824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5132), [7826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1912), [7828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1027), [7830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1526), [7832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), [7834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(586), [7836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4823), [7838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), [7840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5289), [7842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2081), [7844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1474), [7846] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2804), [7848] = {.entry = {.count = 1, .reusable = true}}, SHIFT(388), [7850] = {.entry = {.count = 1, .reusable = true}}, SHIFT(451), [7852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(385), [7854] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5002), [7856] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2542), [7858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(916), [7860] = {.entry = {.count = 1, .reusable = true}}, SHIFT(847), [7862] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5241), [7864] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1982), [7866] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3173), [7868] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4364), [7870] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1644), [7872] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4689), [7874] = {.entry = {.count = 1, .reusable = true}}, SHIFT(808), [7876] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1431), [7878] = {.entry = {.count = 1, .reusable = true}}, SHIFT(806), [7880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3167), [7882] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1482), [7884] = {.entry = {.count = 1, .reusable = true}}, SHIFT(276), [7886] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5349), [7888] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1445), [7890] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1446), [7892] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1451), [7894] = {.entry = {.count = 1, .reusable = true}}, SHIFT(676), [7896] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2557), [7898] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1473), [7900] = {.entry = {.count = 1, .reusable = true}}, SHIFT(304), [7902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(694), [7904] = {.entry = {.count = 1, .reusable = true}}, SHIFT(699), [7906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3321), [7908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(700), [7910] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1573), [7912] = {.entry = {.count = 1, .reusable = true}}, SHIFT(524), [7914] = {.entry = {.count = 1, .reusable = true}}, SHIFT(783), [7916] = {.entry = {.count = 1, .reusable = true}}, SHIFT(705), [7918] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5065), [7920] = {.entry = {.count = 1, .reusable = true}}, SHIFT(708), [7922] = {.entry = {.count = 1, .reusable = true}}, SHIFT(848), [7924] = {.entry = {.count = 1, .reusable = true}}, SHIFT(682), [7926] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3372), [7928] = {.entry = {.count = 1, .reusable = true}}, SHIFT(489), [7930] = {.entry = {.count = 1, .reusable = true}}, SHIFT(490), [7932] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1435), [7934] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), [7936] = {.entry = {.count = 1, .reusable = true}}, SHIFT(781), [7938] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1586), [7940] = {.entry = {.count = 1, .reusable = true}}, SHIFT(341), [7942] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322), [7944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), [7946] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2321), [7948] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1440), [7950] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5193), [7952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1084), [7954] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1518), [7956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1510), [7958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(666), [7960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(810), [7962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), [7964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(378), [7966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5249), [7968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1587), [7970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2604), [7972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4937), [7974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(374), [7976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5182), [7978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5141), [7980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(473), [7982] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1309), [7984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4975), [7986] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1592), [7988] = {.entry = {.count = 1, .reusable = true}}, SHIFT(372), [7990] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1048), [7992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1594), [7994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1595), [7996] = {.entry = {.count = 1, .reusable = true}}, SHIFT(370), [7998] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4970), [8000] = {.entry = {.count = 1, .reusable = true}}, SHIFT(870), [8002] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5152), [8004] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1441), [8006] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1442), [8008] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1527), [8010] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1532), [8012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1570), [8014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(525), [8016] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1572), [8018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(849), [8020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5119), [8022] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4162), [8024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1856), [8026] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3790), [8028] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1393), [8030] = {.entry = {.count = 1, .reusable = true}}, SHIFT(670), [8032] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5438), [8034] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1599), [8036] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ms_based_modifier, 2), [8038] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5204), [8040] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), [8042] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1514), [8044] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1227), [8046] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1581), [8048] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2386), [8050] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5058), [8052] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1580), [8054] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5068), [8056] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5071), [8058] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2645), [8060] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4511), [8062] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2088), [8064] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1530), [8066] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4683), [8068] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1056), [8070] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1600), [8072] = {.entry = {.count = 1, .reusable = true}}, SHIFT(693), [8074] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), [8076] = {.entry = {.count = 1, .reusable = true}}, SHIFT(738), [8078] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1295), [8080] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3065), [8082] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1602), [8084] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5017), [8086] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5117), [8088] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1610), [8090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(746), [8092] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), [8094] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1303), [8096] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_preproc_elif, 4, .production_id = 95), [8098] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4980), [8100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5150), [8102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(732), [8104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), [8106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(367), [8108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1200), [8110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379), [8112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1865), [8114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5169), [8116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1064), [8118] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), [8120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1444), [8122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1299), [8124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), [8126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1279), [8128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1620), [8130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(389), [8132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1281), [8134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(663), [8136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5308), [8138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(446), [8140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1936), [8142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(448), [8144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(661), [8146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1575), [8148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1597), [8150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), [8152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), [8154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1157), [8156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1549), [8158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), [8160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(804), [8162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), [8164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1253), [8166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1540), [8168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3427), [8170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(449), [8172] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1605), [8174] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1608), [8176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1611), [8178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), [8180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1319), [8182] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1495), [8184] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), [8186] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1180), [8188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1507), [8190] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1164), [8192] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5342), [8194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1509), [8196] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4742), [8198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1520), [8200] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1855), [8202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), [8204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1560), [8206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4160), }; #ifdef __cplusplus extern "C" { #endif void *tree_sitter_cpp_external_scanner_create(void); void tree_sitter_cpp_external_scanner_destroy(void *); bool tree_sitter_cpp_external_scanner_scan(void *, TSLexer *, const bool *); unsigned tree_sitter_cpp_external_scanner_serialize(void *, char *); void tree_sitter_cpp_external_scanner_deserialize(void *, const char *, unsigned); #ifdef _WIN32 #define extern __declspec(dllexport) #endif extern const TSLanguage *tree_sitter_cpp(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_cpp_external_scanner_create, tree_sitter_cpp_external_scanner_destroy, tree_sitter_cpp_external_scanner_scan, tree_sitter_cpp_external_scanner_serialize, tree_sitter_cpp_external_scanner_deserialize, }, }; return &language; } #ifdef __cplusplus } #endif